Skip to content

Conversation

@jleandroperez
Copy link
Contributor

@jleandroperez jleandroperez commented Nov 28, 2025

Task/Issue URL: https://app.asana.com/1/137249556945/project/1211150618152277/task/1211969382845380
Tech Design URL:
CC:

Description

In this PR we're adding several new UI Tests for Pinned / Unpinned Tabs.

Testing Steps

Impact and Risks

None: Internal tooling, documentation

What could go wrong?

Nothing really. This PR implements new UI tests, and does not alter any code that actually gets shipped.

Quality Considerations

Nothing in particular

Notes to Reviewer

Hope you don't mind @diegoreymendez, sending your way a brief UI Tests PR.

Thanks in advance!!


Internal references:

Definition of Done | Engineering Expectations | Tech Design Template


Note

Adds UI tests covering pin/unpin and cross-window drag behaviors for tabs, and sets the pinned tabs AX subrole to nil to ensure proper tab group accessibility.

  • UI Tests (macOS/UITests/PinnedTabsTests.swift):
    • Add scenarios for pin/unpin toggling, pinning Settings/Bookmarks/History/New Tab, and preventing pinning Release Notes.
    • Validate drag behaviors: unpinned tab dragged above window creates a new window (remains unpinned), pinned tab cannot be dragged to a new window, and dragging a sole tab doesn’t spawn a new window.
    • Add utilities for window assertions and tab dragging (e.g., waitForSecondWindow, assertSingleWindowScenario, drag*TabAboveWindow, bringForemostWindowToForeground).
  • Accessibility (macOS/DuckDuckGo/TabBar/View/TabBarViewController.swift):
    • Set pinnedTabsCollectionView accessibility subrole to nil to align with .tabGroup role and improve AX structure.

Written by Cursor Bugbot for commit 5fe25dc. This will update automatically on new commits. Configure here.

@jleandroperez jleandroperez self-assigned this Nov 28, 2025
@jleandroperez jleandroperez marked this pull request as ready for review November 28, 2025 19:39
Copilot AI review requested due to automatic review settings November 28, 2025 19:39
Copilot finished reviewing on behalf of jleandroperez November 28, 2025 19:41
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements new UI tests for pinned and unpinned tabs functionality in the macOS browser. It adds test coverage for drag-and-drop behavior, pin/unpin state management, and window creation scenarios related to tab manipulation.

  • Adds 4 new test cases covering pinned/unpinned tab behaviors
  • Introduces utility methods for tab dragging and assertion helpers
  • Validates that pinned tabs cannot be dragged into new windows while unpinned tabs can

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 7 comments.

File Description
macOS/UITests/TabBarTests.swift Adds test for preventing new window creation when dragging the only tab, plus shared drag/assertion utilities
macOS/UITests/PinnedTabsTests.swift Adds three new tests for pin/unpin state toggling and drag behavior, plus supporting utility methods

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants