@@ -16,8 +16,6 @@ describe("Todo List Page", () => {
1616 } ) ;
1717 await twd . visit ( "/todos" ) ;
1818 await twd . waitForRequest ( "getTodoList" ) ;
19- const todoList = await twd . getAll ( "[data-testid='todo-item']" ) ;
20- expect ( todoList ) . to . have . length ( 2 ) ;
2119 const todo1Title = await twd . get ( "[data-testid='todo-title-1']" ) ;
2220 todo1Title . should ( "have.text" , "Learn TWD" ) ;
2321 const todo2Title = await twd . get ( "[data-testid='todo-title-2']" ) ;
@@ -32,34 +30,6 @@ describe("Todo List Page", () => {
3230 todo2Date . should ( "have.text" , "Date: 2024-12-25" ) ;
3331 } ) ;
3432
35- it ( "should delete a todo" , async ( ) => {
36- await twd . mockRequest ( "deleteTodo" , {
37- method : "DELETE" ,
38- url : "/api/todos/1" ,
39- response : null ,
40- status : 200 ,
41- } ) ;
42- await twd . mockRequest ( "getTodoList" , {
43- method : "GET" ,
44- url : "/api/todos" ,
45- response : todoListMock ,
46- status : 200 ,
47- } ) ;
48- await twd . visit ( "/todos" ) ;
49- const deleteButton = await twd . get ( "[data-testid='delete-todo-1']" ) ;
50- await twd . mockRequest ( "getTodoList" , {
51- method : "GET" ,
52- url : "/api/todos" ,
53- response : todoListMock . filter ( ( todo ) => todo . id !== "1" ) ,
54- status : 200 ,
55- } ) ;
56- await userEvent . click ( deleteButton . el ) ;
57- await twd . waitForRequest ( "deleteTodo" ) ;
58- await twd . waitForRequest ( "getTodoList" ) ;
59- const todoList = await twd . getAll ( "[data-testid='todo-item']" ) ;
60- expect ( todoList ) . to . have . length ( 1 ) ;
61- } ) ;
62-
6333 it ( "should create a todo" , async ( ) => {
6434 await twd . mockRequest ( "createTodo" , {
6535 method : "POST" ,
@@ -75,6 +45,8 @@ describe("Todo List Page", () => {
7545 } ) ;
7646 await twd . visit ( "/todos" ) ;
7747 await twd . waitForRequest ( "getTodoList" ) ;
48+ const noTodosMessage = await twd . get ( "[data-testid='no-todos-message']" ) ;
49+ noTodosMessage . should ( "be.visible" ) ;
7850 await twd . mockRequest ( "getTodoList" , {
7951 method : "GET" ,
8052 url : "/api/todos" ,
@@ -83,8 +55,6 @@ describe("Todo List Page", () => {
8355 ] ,
8456 status : 200 ,
8557 } ) ;
86- const noTodosMessage = await twd . get ( "[data-testid='no-todos-message']" ) ;
87- noTodosMessage . should ( "be.visible" ) ;
8858 const title = await twd . get ( "input[name='title']" ) ;
8959 await userEvent . type ( title . el , "Test Todo" ) ;
9060 const description = await twd . get ( "input[name='description']" ) ;
@@ -103,4 +73,32 @@ describe("Todo List Page", () => {
10373 const todoList = await twd . getAll ( "[data-testid='todo-item']" ) ;
10474 expect ( todoList ) . to . have . length ( 1 ) ;
10575 } ) ;
76+
77+ it ( "should delete a todo" , async ( ) => {
78+ await twd . mockRequest ( "deleteTodo" , {
79+ method : "DELETE" ,
80+ url : "/api/todos/1" ,
81+ response : null ,
82+ status : 200 ,
83+ } ) ;
84+ await twd . mockRequest ( "getTodoList" , {
85+ method : "GET" ,
86+ url : "/api/todos" ,
87+ response : todoListMock ,
88+ status : 200 ,
89+ } ) ;
90+ await twd . visit ( "/todos" ) ;
91+ const deleteButton = await twd . get ( "[data-testid='delete-todo-1']" ) ;
92+ await twd . mockRequest ( "getTodoList" , {
93+ method : "GET" ,
94+ url : "/api/todos" ,
95+ response : todoListMock . filter ( ( todo ) => todo . id !== "1" ) ,
96+ status : 200 ,
97+ } ) ;
98+ await userEvent . click ( deleteButton . el ) ;
99+ await twd . waitForRequest ( "deleteTodo" ) ;
100+ await twd . waitForRequest ( "getTodoList" ) ;
101+ const todoList = await twd . getAll ( "[data-testid='todo-item']" ) ;
102+ expect ( todoList ) . to . have . length ( 1 ) ;
103+ } ) ;
106104} ) ;
0 commit comments