Commit graph

15 commits

Author SHA1 Message Date
Johannes Millan
cbc36012d8 test(e2e): fix add-to-today subtask tests
- Add Escape key press after creating subtasks to force exit from edit mode
- Simplify first test to remove both parent and subtask from Today, then use keyboard shortcut (most reliable)
- Fix context menu test to click sun icon button in quick-access area instead of searching for text
- Simplify "should NOT add subtask" test to avoid unreliable task counting
- Add proper wait times for Angular change detection cycles

All 5 tests now passing consistently.
2026-01-16 22:34:50 +01:00
Johannes Millan
0e0c04915c fix(tasks): prevent dueDay update on filtered subtasks in planTasksForToday
Fixes bug where planTasksForToday was setting dueDay on all taskIds,
including subtasks that were filtered out from being added to TODAY_TAG
(e.g., subtasks whose parents are already in Today). This caused state
inconsistencies where subtasks would have today's dueDay but not be in
the TODAY_TAG.

Now only updates dueDay for tasks that are either:
1. Being added to TODAY_TAG (newTasksForToday), OR
2. Already in TODAY_TAG but have incorrect dueDay

Also improves E2E test selectors:
- Use proper DOM structure (.task-list-inner > task)
- Add hover timeout for Angular change detection
- Fix context menu selector to use Material menu pattern
2026-01-16 22:34:50 +01:00
Johannes Millan
6087b63878 fix(tasks): add subtasks to Today via Add to Today button
Fixes issue where clicking "Add to Today" button or using Ctrl+T
keyboard shortcut on subtasks had no effect. The action dispatch
was missing the parentTaskMap parameter needed by the reducer to
properly handle parent-child task relationships.

- Add parentTaskMap to planTasksForToday action in task.component.ts
- Add parentTaskMap to planTasksForToday action in task-context-menu
- Add comprehensive unit tests for subtask scenarios
- Add E2E tests for button, keyboard shortcut, and context menu

Fixes #6028
2026-01-16 22:34:50 +01:00
Johannes Millan
b544131921 refactor(e2e): improve 2026-01-06 12:46:20 +01:00
Johannes Millan
11d85208e5 refactor(e2e): replace waitForTimeout with condition-based waits
- Replace ~100 waitForTimeout calls with proper condition-based waits
- Extract shared utilities for time input and task scheduling
- Add timeout constants for consistent wait times
- Add new selectors for reminder dialogs and detail panels

Files refactored across 25+ test files including:
- Plugin tests (lifecycle, upload, loading, enable, structure)
- Reminder tests (view-task, schedule-page, default-options)
- Work view, planner, focus mode, and app feature tests
- Task dragdrop, autocomplete, and daily summary tests

New utilities created:
- e2e/utils/time-input-helper.ts - Robust time input filling
- e2e/utils/schedule-task-helper.ts - Task scheduling helpers
- e2e/constants/timeouts.ts - Standardized timeout values
2026-01-03 15:29:38 +01:00
Johannes Millan
ecdd06988a test(e2e): improve e2e stability 2025-11-06 19:54:50 +01:00
Johannes Millan
4e0595d8b8 test(e2e): fix 2025-10-24 13:57:22 +02:00
Johannes Millan
ea1440a9cf test: e2e make more stable 2025-09-12 21:15:51 +02:00
Johannes Millan
b20f845cb9 test(e2e): make all e2e tests work again and optimize 2025-09-09 23:47:34 +02:00
Johannes Millan
31f269adef test: make e2e work again 2025-08-24 19:46:39 +02:00
Johannes Millan
913278f703 test(e2e): reduce logs 2025-08-08 19:20:24 +02:00
Johannes Millan
1a82aa905b test(e2e): improve 2025-08-04 18:35:00 +02:00
Johannes Millan
613ccfa3da test(e2e): restore all test files from 4781b6ec with updated import paths 2025-08-02 16:57:12 +02:00
Johannes Millan
6ddbf00651 test(e2e): remove console.log statements and replace console.error with throw
- Remove all console.log statements from E2E test files
- Replace console.error with throw new Error for proper error handling
- Remove console.warn statements
- Fix unused variable linting errors in plugin tests
2025-08-02 12:25:21 +02:00
Johannes Millan
9f2c786e41 refactor: move tests 2025-08-02 11:37:25 +02:00