@@ -31,14 +31,8 @@ function addWorkEntryTests() {
3131 beforeEach ( ( ) => {
3232 workEntryModalState = new WorkEntryModalState ( )
3333
34- workEntryModalState . setDate ( {
35- date : new Date ( `2025-11-27T09:00:00` ) ,
36- } )
37- workEntryModalState . setStartTime ( {
38- startTime : new Date ( `2025-11-27T09:00:00` ) ,
39- } )
40- workEntryModalState . setEndTime ( {
41- endTime : new Date ( `2025-11-27T11:30:00` ) ,
34+ setDateAndTime ( {
35+ workEntryModalState,
4236 } )
4337 } )
4438
@@ -125,16 +119,8 @@ function updateWorkEntryTests() {
125119 description : `Task description` ,
126120 } )
127121
128- workEntryModalState . setDate ( {
129- date : new Date ( `2025-11-27T09:00:00` ) ,
130- } )
131-
132- workEntryModalState . setStartTime ( {
133- startTime : new Date ( `2025-11-27T09:00:00` ) ,
134- } )
135-
136- workEntryModalState . setEndTime ( {
137- endTime : new Date ( `2025-11-27T11:30:00` ) ,
122+ setDateAndTime ( {
123+ workEntryModalState,
138124 } )
139125 } )
140126
@@ -204,20 +190,17 @@ function onCloseModalTests() {
204190 workEntryModalState . setTitle ( {
205191 title : `Title` ,
206192 } )
193+
207194 workEntryModalState . setTaskId ( {
208195 taskId : `TaskId` ,
209196 } )
197+
210198 workEntryModalState . setDescription ( {
211199 description : `Description` ,
212200 } )
213- workEntryModalState . setDate ( {
214- date : new Date ( `2025-11-27T09:00:00` ) ,
215- } )
216- workEntryModalState . setStartTime ( {
217- startTime : new Date ( `2025-11-27T09:00:00` ) ,
218- } )
219- workEntryModalState . setEndTime ( {
220- endTime : new Date ( `2025-11-27T11:30:00` ) ,
201+
202+ setDateAndTime ( {
203+ workEntryModalState,
221204 } )
222205 } )
223206
@@ -281,14 +264,8 @@ function setErrorTests() {
281264 beforeEach ( ( ) => {
282265 workEntryModalState = new WorkEntryModalState ( )
283266
284- workEntryModalState . setDate ( {
285- date : new Date ( `2025-11-27T09:00:00` ) ,
286- } )
287- workEntryModalState . setStartTime ( {
288- startTime : new Date ( `2025-11-27T09:00:00` ) ,
289- } )
290- workEntryModalState . setEndTime ( {
291- endTime : new Date ( `2025-11-27T11:30:00` ) ,
267+ setDateAndTime ( {
268+ workEntryModalState,
292269 } )
293270 } )
294271
@@ -308,6 +285,47 @@ function setErrorTests() {
308285
309286 cy . contains ( `Fill in all the fields` )
310287 } )
288+
289+ it ( `
290+ GIVEN opened work entry modal
291+ WHEN click on submit button
292+ AND server validation error will be returned
293+ SHOULD display error message
294+ ` , ( ) => {
295+ cy
296+ . intercept (
297+ `POST` ,
298+ `*/time/tracking/work-entries` ,
299+ {
300+ statusCode : 400 ,
301+ body : {
302+ detail : `Error message` ,
303+ } ,
304+ } ,
305+ )
306+
307+ workEntryModalState . setTitle ( {
308+ title : `Task name` ,
309+ } )
310+
311+ workEntryModalState . setTaskId ( {
312+ taskId : `1` ,
313+ } )
314+
315+ workEntryModalState . setDescription ( {
316+ description : `Task description` ,
317+ } )
318+
319+ mountComponent ( {
320+ workEntryModalState,
321+ } )
322+
323+ cy
324+ . contains ( `Add Task` )
325+ . click ( )
326+
327+ cy . contains ( `Error message` )
328+ } )
311329}
312330
313331function mountComponent ( {
@@ -333,3 +351,19 @@ function mountComponent({
333351 </ WorkEntryModalStateContext . Provider > ,
334352 )
335353}
354+
355+ function setDateAndTime ( {
356+ workEntryModalState,
357+ } : {
358+ workEntryModalState : WorkEntryModalState ,
359+ } ) {
360+ workEntryModalState . setDate ( {
361+ date : new Date ( `2025-11-27T09:00:00` ) ,
362+ } )
363+ workEntryModalState . setStartTime ( {
364+ startTime : new Date ( `2025-11-27T09:00:00` ) ,
365+ } )
366+ workEntryModalState . setEndTime ( {
367+ endTime : new Date ( `2025-11-27T11:30:00` ) ,
368+ } )
369+ }
0 commit comments