(page: Page)
| 6019 | test.describe('Issue #1328: Add task to calendar from agenda view', () => { |
| 6020 | // Helper to expand TaskNotes and Views folders |
| 6021 | async function expandViewsFolderFor1328(page: Page): Promise<void> { |
| 6022 | // First ensure the sidebar is expanded |
| 6023 | await ensureSidebarExpanded(page); |
| 6024 | |
| 6025 | // First expand TaskNotes folder if collapsed |
| 6026 | const tasknotesFolder = page.locator('.nav-folder-title').filter({ hasText: /^TaskNotes$/ }).first(); |
| 6027 | if (await tasknotesFolder.isVisible({ timeout: 5000 }).catch(() => false)) { |
| 6028 | const parentFolder = tasknotesFolder.locator('xpath=ancestor::div[contains(@class, "nav-folder")][1]'); |
| 6029 | const isTasknotesCollapsed = await parentFolder.evaluate(el => el.classList.contains('is-collapsed')).catch(() => true); |
| 6030 | if (isTasknotesCollapsed) { |
| 6031 | await tasknotesFolder.click(); |
| 6032 | await page.waitForTimeout(500); |
| 6033 | } |
| 6034 | } |
| 6035 | |
| 6036 | // Then expand Views folder if collapsed |
| 6037 | const viewsFolder = page.locator('.nav-folder-title').filter({ hasText: /^Views$/ }); |
| 6038 | if (await viewsFolder.isVisible({ timeout: 5000 }).catch(() => false)) { |
| 6039 | const parentFolder = viewsFolder.locator('xpath=ancestor::div[contains(@class, "nav-folder")][1]'); |
| 6040 | const isCollapsed = await parentFolder.evaluate(el => el.classList.contains('is-collapsed')).catch(() => true); |
| 6041 | if (isCollapsed) { |
| 6042 | await viewsFolder.click(); |
| 6043 | await page.waitForTimeout(500); |
| 6044 | } |
| 6045 | } |
| 6046 | } |
| 6047 | |
| 6048 | test.fixme('agenda view should allow dragging tasks to calendar to schedule them (Issue #1328)', async () => { |
| 6049 | // Issue #1328: Feature request to add task to calendar from agenda view |
no test coverage detected