mirror of
https://github.com/usebruno/bruno.git
synced 2026-06-11 09:51:30 +00:00
* refactor: update sidebar components and styles, replace TitleBar with SidebarHeader, and enhance collections search functionality * refactor: improve event listener management in AppTitleBar and clean up SidebarHeader styles * fix: ensure safe access to layout preferences in AppTitleBar and set default order in SidebarHeader * refactor: centralize toTitleCase utility and remove redundant implementations in AppTitleBar and WorkspaceSelector * feat: enhance accessibility and testing for sidebar and devtools toggle buttons in AppTitleBar * chore: quick fix on a flaky test --------- Co-authored-by: Bijin A B <bijin@usebruno.com>
37 lines
1.3 KiB
JavaScript
37 lines
1.3 KiB
JavaScript
import { test, expect } from '../../../playwright';
|
|
|
|
test.describe('Sidebar Toggle', () => {
|
|
test('should toggle sidebar visibility when clicking the toggle button', async ({ page }) => {
|
|
// Get the sidebar and toggle button elements
|
|
const sidebar = page.locator('aside.sidebar');
|
|
const toggleButton = page.getByTestId('toggle-sidebar-button');
|
|
const dragHandle = page.locator('.sidebar-drag-handle');
|
|
|
|
// Initial state - sidebar and drag handle should be visible
|
|
await expect(sidebar).toBeVisible();
|
|
await expect(dragHandle).toBeVisible();
|
|
|
|
// Click toggle to hide sidebar
|
|
await toggleButton.click();
|
|
|
|
// Wait for transition to complete and verify sidebar and drag handle are hidden
|
|
await expect(sidebar).not.toBeVisible();
|
|
await expect(dragHandle).not.toBeVisible();
|
|
|
|
// Verify the sidebar has collapsed width
|
|
const sidebarBox = await sidebar.boundingBox();
|
|
expect(sidebarBox?.width).toBe(0);
|
|
|
|
// Click toggle again to show sidebar
|
|
await toggleButton.click();
|
|
|
|
// Wait for transition and verify sidebar and drag handle are visible again
|
|
await expect(sidebar).toBeVisible();
|
|
await expect(dragHandle).toBeVisible();
|
|
|
|
// Verify the sidebar has expanded width
|
|
const expandedSidebarBox = await sidebar.boundingBox();
|
|
expect(expandedSidebarBox?.width).toBeGreaterThan(0);
|
|
});
|
|
});
|