test(ui): query Projects nav link by role instead of container in leftnav tests

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
jesus 2026-09-08 15:38:44 +00:00
parent 548d3d1b0a
commit 7ef3d1e7e3

View file

@ -609,15 +609,18 @@ describe("Sidebar (leftnav)", () => {
it("hides Projects from a plain internal user", () => {
mockUseAuthorized.mockReturnValue(internalAuth);
const { container } = renderWithProviders(<Sidebar {...defaultProps} enableProjectsUI />);
expect(container.querySelector('a[href*="projects"]')).toBeNull();
renderWithProviders(<Sidebar {...defaultProps} enableProjectsUI />);
expect(screen.queryByRole("link", { name: "Projects" })).not.toBeInTheDocument();
});
it("shows Projects to an internal user who administers a team", () => {
mockUseAuthorized.mockReturnValue(internalAuth);
teamAdminState.isTeamAdmin = true;
const { container } = renderWithProviders(<Sidebar {...defaultProps} enableProjectsUI />);
expect(container.querySelector('a[href*="projects"]')).toHaveTextContent("Projects");
renderWithProviders(<Sidebar {...defaultProps} enableProjectsUI />);
expect(screen.getByRole("link", { name: "Projects" })).toHaveAttribute(
"href",
expect.stringContaining("projects"),
);
});
it("shows Projects to an internal user who administers an organization", () => {
@ -627,8 +630,11 @@ describe("Sidebar (leftnav)", () => {
isLoading: false,
error: null,
});
const { container } = renderWithProviders(<Sidebar {...defaultProps} enableProjectsUI />);
expect(container.querySelector('a[href*="projects"]')).toHaveTextContent("Projects");
renderWithProviders(<Sidebar {...defaultProps} enableProjectsUI />);
expect(screen.getByRole("link", { name: "Projects" })).toHaveAttribute(
"href",
expect.stringContaining("projects"),
);
});
});