feat: unify task and habit pages with Today
ci / gitleaks (push) Successful in 8s
ci / docker (push) Successful in 6m49s

This commit is contained in:
2026-09-18 10:51:57 +08:00
parent 6d568273ef
commit 978c4b87ed
9 changed files with 204 additions and 20 deletions
+3 -3
View File
@@ -47,7 +47,7 @@ describe('Today environment integration', () => {
})
it('renders the approved plain-list composition without a board or progress tracks', () => {
expect(app).toContain('<main :class="{\'today-main\':activeView===\'today\'}"')
expect(app).toContain("<main :class=\"{'today-main':activeView==='today','list-main':activeView==='tasks'||activeView==='habits'}\"")
expect(app).toContain('<section v-if="activeView===\'today\'" class="today-context" aria-label="今日概览">')
expect(app).toContain('<p class="today-remaining">还有 {{ todayTaskRemaining + todayHabitRemaining }} 项待完成</p>')
expect(app).not.toContain('class="today-board"')
@@ -84,9 +84,9 @@ describe('Today environment integration', () => {
expect(filter).toBeGreaterThan(remaining)
expect(overdue).toBeGreaterThan(filter)
expect(main.match(/>今天<\/h1>/g)).toHaveLength(1)
expect(main).toContain("<div v-if=\"activeView!=='today'\" class=\"topbar-title\"><h1")
expect(main).toContain("<div v-if=\"!['today','tasks','habits'].includes(activeView)\" class=\"topbar-title\"><h1")
expect(main).toContain("<div v-if=\"['today', 'tasks', 'upcoming', 'habits'].includes(activeView)\" class=\"topbar-actions\">")
expect(main).toContain('<CompletedFilterPill v-if="activeView!==\'today\'" v-model="showCompleted" class="topbar-filter" />')
expect(main).toContain('<CompletedFilterPill v-if="activeView===\'upcoming\'" v-model="showCompleted" class="topbar-filter" />')
expect(main).toContain('aria-label="刷新当前页面"')
})