@@ -62,7 +62,8 @@ suite('ChatTodoListWidget Accessibility', () => {
6262
6363 const titleElement = widget . domNode . querySelector ( '#todo-list-title' ) ;
6464 assert . ok ( titleElement , 'Should have title element with ID todo-list-title' ) ;
65- assert . ok ( titleElement ?. textContent ?. includes ( 'Todos' ) ) ;
65+ // When collapsed, title shows progress and current task without "Todos" prefix
66+ assert . ok ( titleElement ?. textContent , 'Title should have content' ) ;
6667
6768 // The todo list container itself acts as the list (no nested ul element)
6869 const todoItems = todoListContainer ?. querySelectorAll ( 'li.todo-item' ) ;
@@ -113,13 +114,13 @@ suite('ChatTodoListWidget Accessibility', () => {
113114 assert . strictEqual ( expandoElement ?. getAttribute ( 'aria-expanded' ) , 'false' ) ; // Should be collapsed due to in-progress task
114115 assert . strictEqual ( expandoElement ?. getAttribute ( 'aria-controls' ) , 'todo-list-container' ) ;
115116
116- // The title element should have aria-label with progress information
117+ // The title element should have progress information
117118 const titleElement = expandoElement ?. querySelector ( '.todo-list-title' ) ;
118119 assert . ok ( titleElement , 'Should have title element' ) ;
119120 const titleText = titleElement ?. textContent ;
120- // When collapsed, title shows progress and current task: "Todos (2/3) - Second task"
121+ // When collapsed, title shows progress and current task: " (2/3) - Second task"
121122 // Progress is 2/3 because: 1 completed + 1 in-progress (current) = task 2 of 3
122- assert . ok ( titleText ?. includes ( 'Todos (2/3)' ) , `Title should show progress format, but got: "${ titleText } "` ) ;
123+ assert . ok ( titleText ?. includes ( '(2/3)' ) , `Title should show progress format, but got: "${ titleText } "` ) ;
123124 assert . ok ( titleText ?. includes ( 'Second task' ) , `Title should show current task when collapsed, but got: "${ titleText } "` ) ;
124125 } ) ; test ( 'hidden status text elements exist for screen readers' , ( ) => {
125126 widget . render ( 'test-session' ) ;
@@ -178,11 +179,11 @@ suite('ChatTodoListWidget Accessibility', () => {
178179 const titleElement = widget . domNode . querySelector ( '#todo-list-title' ) ;
179180 assert . ok ( titleElement , 'Should have title element with ID' ) ;
180181
181- // Title should show progress format: "Todos (2/3)" since one todo is completed and one is in-progress
182- // When collapsed, it also shows the current task: "Todos (2/3) - Second task"
182+ // Title should show progress format: " (2/3)" since one todo is completed and one is in-progress
183+ // When collapsed, it also shows the current task: " (2/3) - Second task"
183184 // Progress is 2/3 because: 1 completed + 1 in-progress (current) = task 2 of 3
184185 const titleText = titleElement ?. textContent ;
185- assert . ok ( titleText ?. includes ( 'Todos (2/3)' ) , `Title should show progress format, but got: "${ titleText } "` ) ;
186+ assert . ok ( titleText ?. includes ( '(2/3)' ) , `Title should show progress format, but got: "${ titleText } "` ) ;
186187 assert . ok ( titleText ?. includes ( 'Second task' ) , `Title should show current task when collapsed, but got: "${ titleText } "` ) ;
187188
188189 // Verify aria-labelledby connection works
0 commit comments