@@ -59,6 +59,24 @@ const mockTasks: HistoryItem[] = [
5959 tokensOut : 150 ,
6060 totalCost : 0.03 ,
6161 } ,
62+ {
63+ id : "task-5" ,
64+ number : 5 ,
65+ task : "Fifth task" ,
66+ ts : Date . now ( ) ,
67+ tokensIn : 250 ,
68+ tokensOut : 125 ,
69+ totalCost : 0.025 ,
70+ } ,
71+ {
72+ id : "task-6" ,
73+ number : 6 ,
74+ task : "Sixth task" ,
75+ ts : Date . now ( ) ,
76+ tokensIn : 400 ,
77+ tokensOut : 200 ,
78+ totalCost : 0.04 ,
79+ } ,
6280]
6381
6482describe ( "HistoryPreview" , ( ) => {
@@ -86,7 +104,7 @@ describe("HistoryPreview", () => {
86104 expect ( screen . queryByTestId ( / t a s k - i t e m - / ) ) . not . toBeInTheDocument ( )
87105 } )
88106
89- it ( "renders up to 2 tasks when tasks are available" , ( ) => {
107+ it ( "renders up to 3 tasks when tasks are available" , ( ) => {
90108 mockUseTaskSearch . mockReturnValue ( {
91109 tasks : mockTasks ,
92110 searchQuery : "" ,
@@ -101,17 +119,19 @@ describe("HistoryPreview", () => {
101119
102120 render ( < HistoryPreview /> )
103121
104- // Should render only the first 2 tasks
122+ // Should render only the first 3 tasks
105123 expect ( screen . getByTestId ( "task-item-task-1" ) ) . toBeInTheDocument ( )
106124 expect ( screen . getByTestId ( "task-item-task-2" ) ) . toBeInTheDocument ( )
107- expect ( screen . queryByTestId ( "task-item-task-3" ) ) . not . toBeInTheDocument ( )
125+ expect ( screen . getByTestId ( "task-item-task-3" ) ) . toBeInTheDocument ( )
108126 expect ( screen . queryByTestId ( "task-item-task-4" ) ) . not . toBeInTheDocument ( )
127+ expect ( screen . queryByTestId ( "task-item-task-5" ) ) . not . toBeInTheDocument ( )
128+ expect ( screen . queryByTestId ( "task-item-task-6" ) ) . not . toBeInTheDocument ( )
109129 } )
110130
111- it ( "renders all tasks when there are 2 or fewer" , ( ) => {
112- const twoTasks = mockTasks . slice ( 0 , 2 )
131+ it ( "renders all tasks when there are 3 or fewer" , ( ) => {
132+ const threeTasks = mockTasks . slice ( 0 , 3 )
113133 mockUseTaskSearch . mockReturnValue ( {
114- tasks : twoTasks ,
134+ tasks : threeTasks ,
115135 searchQuery : "" ,
116136 setSearchQuery : vi . fn ( ) ,
117137 sortOption : "newest" ,
@@ -126,7 +146,8 @@ describe("HistoryPreview", () => {
126146
127147 expect ( screen . getByTestId ( "task-item-task-1" ) ) . toBeInTheDocument ( )
128148 expect ( screen . getByTestId ( "task-item-task-2" ) ) . toBeInTheDocument ( )
129- expect ( screen . queryByTestId ( "task-item-task-3" ) ) . not . toBeInTheDocument ( )
149+ expect ( screen . getByTestId ( "task-item-task-3" ) ) . toBeInTheDocument ( )
150+ expect ( screen . queryByTestId ( "task-item-task-4" ) ) . not . toBeInTheDocument ( )
130151 } )
131152
132153 it ( "renders only 1 task when there is only 1 task" , ( ) => {
@@ -151,7 +172,7 @@ describe("HistoryPreview", () => {
151172
152173 it ( "passes correct props to TaskItem components" , ( ) => {
153174 mockUseTaskSearch . mockReturnValue ( {
154- tasks : mockTasks . slice ( 0 , 2 ) ,
175+ tasks : mockTasks . slice ( 0 , 3 ) ,
155176 searchQuery : "" ,
156177 setSearchQuery : vi . fn ( ) ,
157178 sortOption : "newest" ,
@@ -164,7 +185,7 @@ describe("HistoryPreview", () => {
164185
165186 render ( < HistoryPreview /> )
166187
167- // Verify TaskItem was called with correct props
188+ // Verify TaskItem was called with correct props for first 3 tasks
168189 expect ( mockTaskItem ) . toHaveBeenCalledWith (
169190 expect . objectContaining ( {
170191 item : mockTasks [ 0 ] ,
@@ -179,6 +200,13 @@ describe("HistoryPreview", () => {
179200 } ) ,
180201 expect . anything ( ) ,
181202 )
203+ expect ( mockTaskItem ) . toHaveBeenCalledWith (
204+ expect . objectContaining ( {
205+ item : mockTasks [ 2 ] ,
206+ variant : "compact" ,
207+ } ) ,
208+ expect . anything ( ) ,
209+ )
182210 } )
183211
184212 it ( "renders with correct container classes" , ( ) => {
0 commit comments