@@ -27,7 +27,7 @@ func TestJobCheckTableExistance(t *testing.T) {
2727 database := helper .NewTestDatabase (port )
2828
2929 jobDBHandler , err := NewJobDBHandler (database )
30- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
30+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
3131
3232 exists , err := jobDBHandler .CheckTableExistance ()
3333 assert .NoError (t , err , "Expected CheckTableExistance to not return an error" )
@@ -38,7 +38,7 @@ func TestJobCreateTable(t *testing.T) {
3838 database := helper .NewTestDatabase (port )
3939
4040 jobDBHandler , err := NewJobDBHandler (database )
41- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
41+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
4242
4343 err = jobDBHandler .CreateTable ()
4444 assert .NoError (t , err , "Expected CreateTable to not return an error" )
@@ -48,7 +48,7 @@ func TestJobDropTable(t *testing.T) {
4848 database := helper .NewTestDatabase (port )
4949
5050 jobDBHandler , err := NewJobDBHandler (database )
51- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
51+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
5252
5353 err = jobDBHandler .DropTable ()
5454 assert .NoError (t , err , "Expected DropTable to not return an error" )
@@ -58,10 +58,10 @@ func TestJobInsertJob(t *testing.T) {
5858 database := helper .NewTestDatabase (port )
5959
6060 jobDBHandler , err := NewJobDBHandler (database )
61- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
61+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
6262
63- job , err := model .NewJob ("TestJob " , nil )
64- assert .NoError (t , err , "Expected NewJob to not return an error" )
63+ job , err := model .NewJob ("TestTask " , nil )
64+ require .NoError (t , err , "Expected NewJob to not return an error" )
6565
6666 insertedJob , err := jobDBHandler .InsertJob (job )
6767 assert .NoError (t , err , "Expected InsertJob to not return an error" )
@@ -77,7 +77,7 @@ func TestJobBatchInsertJobs(t *testing.T) {
7777 database := helper .NewTestDatabase (port )
7878
7979 jobDBHandler , err := NewJobDBHandler (database )
80- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
80+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
8181
8282 jobCount := 5
8383 jobs := []* model.Job {}
@@ -119,7 +119,7 @@ func TestJobUpdateJobsInitial(t *testing.T) {
119119 require .NoError (t , err , "Expected NewJob to not return an error" )
120120
121121 insertedJob , err := jobDBHandler .InsertJob (job )
122- assert .NoError (t , err , "Expected InsertJob to not return an error" )
122+ require .NoError (t , err , "Expected InsertJob to not return an error" )
123123
124124 updatedJobs , err := jobDBHandler .UpdateJobsInitial (updatedWorker )
125125 assert .NoError (t , err , "Expected UpdateJobsInitial to not return an error" )
@@ -135,13 +135,13 @@ func TestJobUpdateJobFinal(t *testing.T) {
135135 database := helper .NewTestDatabase (port )
136136
137137 jobDBHandler , err := NewJobDBHandler (database )
138- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
138+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
139139
140- job , err := model .NewJob ("TestJob " , nil )
141- assert .NoError (t , err , "Expected NewJob to not return an error" )
140+ job , err := model .NewJob ("TestTask " , nil )
141+ require .NoError (t , err , "Expected NewJob to not return an error" )
142142
143143 insertedJob , err := jobDBHandler .InsertJob (job )
144- assert .NoError (t , err , "Expected InsertJob to not return an error" )
144+ require .NoError (t , err , "Expected InsertJob to not return an error" )
145145
146146 // Update the job status to SUCCEEDED
147147 insertedJob .Status = model .JobStatusSucceeded
@@ -156,13 +156,13 @@ func TestJobDeleteJob(t *testing.T) {
156156 database := helper .NewTestDatabase (port )
157157
158158 jobDBHandler , err := NewJobDBHandler (database )
159- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
159+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
160160
161- job , err := model .NewJob ("TestJob " , nil )
162- assert .NoError (t , err , "Expected NewJob to not return an error" )
161+ job , err := model .NewJob ("TestTask " , nil )
162+ require .NoError (t , err , "Expected NewJob to not return an error" )
163163
164164 insertedJob , err := jobDBHandler .InsertJob (job )
165- assert .NoError (t , err , "Expected InsertJob to not return an error" )
165+ require .NoError (t , err , "Expected InsertJob to not return an error" )
166166
167167 err = jobDBHandler .DeleteJob (insertedJob .RID )
168168 assert .NoError (t , err , "Expected DeleteJob to not return an error" )
@@ -178,13 +178,13 @@ func TestJobSelectJob(t *testing.T) {
178178 database := helper .NewTestDatabase (port )
179179
180180 jobDBHandler , err := NewJobDBHandler (database )
181- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
181+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
182182
183- job , err := model .NewJob ("TestJob " , nil )
184- assert .NoError (t , err , "Expected NewJob to not return an error" )
183+ job , err := model .NewJob ("TestTask " , nil )
184+ require .NoError (t , err , "Expected NewJob to not return an error" )
185185
186186 insertedJob , err := jobDBHandler .InsertJob (job )
187- assert .NoError (t , err , "Expected InsertJob to not return an error" )
187+ require .NoError (t , err , "Expected InsertJob to not return an error" )
188188
189189 selectedJob , err := jobDBHandler .SelectJob (insertedJob .RID )
190190 assert .NoError (t , err , "Expected SelectJob to not return an error" )
@@ -197,7 +197,7 @@ func TestJobSelectAllJobs(t *testing.T) {
197197
198198 newJobCount := 5
199199 jobDBHandler , err := NewJobDBHandler (database )
200- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
200+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
201201
202202 for i := 0 ; i < newJobCount ; i ++ {
203203 job , err := model .NewJob (fmt .Sprintf ("TestJob%v" , i ), nil )
@@ -240,7 +240,7 @@ func TestJobSelectAllJobsByWorkerRID(t *testing.T) {
240240
241241 // Insert jobs associated with the worker
242242 jobDBHandler , err := NewJobDBHandler (database )
243- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
243+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
244244
245245 for i := 0 ; i < newJobCount ; i ++ {
246246 job , err := model .NewJob ("TestTask" , nil )
@@ -262,12 +262,12 @@ func TestJobSelectAllJobsByWorkerRID(t *testing.T) {
262262func TestJobSelectAllJobsBySearch (t * testing.T ) {
263263 database := helper .NewTestDatabase (port )
264264
265- searchTerm := "TestJob "
265+ searchTerm := "TestTaskSearch "
266266 newJobCountSearch := 5
267267 newJobCountOther := 3
268268
269269 jobDBHandler , err := NewJobDBHandler (database )
270- assert .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
270+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
271271
272272 // Insert multiple jobs with different names
273273 for i := 0 ; i < newJobCountSearch ; i ++ {
@@ -295,3 +295,105 @@ func TestJobSelectAllJobsBySearch(t *testing.T) {
295295 assert .NoError (t , err , "Expected SelectAllJobsBySearch to not return an error" )
296296 assert .Len (t , paginatedJobsBySearch , pageLength , "Expected SelectAllJobsBySearch to return 3 jobs" )
297297}
298+
299+ func TestJobSelectJobFromArchive (t * testing.T ) {
300+ database := helper .NewTestDatabase (port )
301+
302+ jobDBHandler , err := NewJobDBHandler (database )
303+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
304+
305+ job , err := model .NewJob ("TestTask" , nil )
306+ require .NoError (t , err , "Expected NewJob to not return an error" )
307+
308+ insertedJob , err := jobDBHandler .InsertJob (job )
309+ require .NoError (t , err , "Expected InsertJob to not return an error" )
310+
311+ // Update the job status to SUCCEEDED
312+ insertedJob .Status = model .JobStatusSucceeded
313+ updatedJob , err := jobDBHandler .UpdateJobFinal (insertedJob )
314+ require .NoError (t , err , "Expected UpdateJobFinal to not return an error" )
315+
316+ // Now select the job from archive
317+ archivedJob , err := jobDBHandler .SelectJobFromArchive (updatedJob .RID )
318+ assert .NoError (t , err , "Expected SelectJobFromArchive to not return an error" )
319+ assert .NotNil (t , archivedJob , "Expected SelectJobFromArchive to return a non-nil job" )
320+ assert .Equal (t , archivedJob .RID , insertedJob .RID , "Expected archived job RID to match inserted job RID" )
321+ assert .Equal (t , archivedJob .Status , model .JobStatusSucceeded , "Expected archived job status to be SUCCEEDED" )
322+ }
323+
324+ func TestJobSelectAllJobsFromArchive (t * testing.T ) {
325+ database := helper .NewTestDatabase (port )
326+
327+ jobDBHandler , err := NewJobDBHandler (database )
328+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
329+
330+ newJobCount := 5
331+ for i := 0 ; i < newJobCount ; i ++ {
332+ job , err := model .NewJob (fmt .Sprintf ("TestJob%v" , i ), nil )
333+ require .NoError (t , err , "Expected NewJob to not return an error" )
334+
335+ insertedJob , err := jobDBHandler .InsertJob (job )
336+ require .NoError (t , err , "Expected InsertJob to not return an error" )
337+
338+ // Update the job status to SUCCEEDED
339+ insertedJob .Status = model .JobStatusSucceeded
340+ _ , err = jobDBHandler .UpdateJobFinal (insertedJob )
341+ require .NoError (t , err , "Expected UpdateJobFinal to not return an error" )
342+ }
343+
344+ jobsFromArchive , err := jobDBHandler .SelectAllJobsFromArchive (0 , 10 )
345+ assert .NoError (t , err , "Expected SelectAllJobsFromArchive to not return an error" )
346+ assert .Len (t , jobsFromArchive , newJobCount , "Expected SelectAllJobsFromArchive to return all archived jobs" )
347+
348+ pageLength := 3
349+ paginatedJobsFromArchive , err := jobDBHandler .SelectAllJobsFromArchive (0 , pageLength )
350+ assert .NoError (t , err , "Expected SelectAllJobsFromArchive to not return an error" )
351+ assert .Len (t , paginatedJobsFromArchive , pageLength , "Expected SelectAllJobsFromArchive to return 3 archived jobs" )
352+ }
353+
354+ func TestJobSelectAllJobsFromArchiveBySearch (t * testing.T ) {
355+ database := helper .NewTestDatabase (port )
356+
357+ searchTerm := "TestTaskSearch"
358+ newJobCountSearch := 5
359+ newJobCountOther := 3
360+
361+ jobDBHandler , err := NewJobDBHandler (database )
362+ require .NoError (t , err , "Expected NewJobDBHandler to not return an error" )
363+
364+ // Insert multiple jobs with different names
365+ for i := 0 ; i < newJobCountSearch ; i ++ {
366+ job , err := model .NewJob (searchTerm , nil )
367+ require .NoError (t , err , "Expected NewJob to not return an error" )
368+
369+ insertedJob , err := jobDBHandler .InsertJob (job )
370+ require .NoError (t , err , "Expected InsertJob to not return an error" )
371+
372+ // Update the job status to SUCCEEDED
373+ insertedJob .Status = model .JobStatusSucceeded
374+ _ , err = jobDBHandler .UpdateJobFinal (insertedJob )
375+ require .NoError (t , err , "Expected UpdateJobFinal to not return an error" )
376+ }
377+
378+ for i := 0 ; i < newJobCountOther ; i ++ {
379+ job , err := model .NewJob ("TestTask" , nil )
380+ require .NoError (t , err , "Expected NewJob to not return an error" )
381+
382+ insertedJob , err := jobDBHandler .InsertJob (job )
383+ require .NoError (t , err , "Expected InsertJob to not return an error" )
384+
385+ // Update the job status to SUCCEEDED
386+ insertedJob .Status = model .JobStatusSucceeded
387+ _ , err = jobDBHandler .UpdateJobFinal (insertedJob )
388+ require .NoError (t , err , "Expected UpdateJobFinal to not return an error" )
389+ }
390+
391+ jobsBySearchFromArchive , err := jobDBHandler .SelectAllJobsFromArchiveBySearch (searchTerm , 0 , 10 )
392+ assert .NoError (t , err , "Expected SelectAllJobsFromArchiveBySearch to not return an error" )
393+ assert .Len (t , jobsBySearchFromArchive , newJobCountSearch , "Expected SelectAllJobsFromArchiveBySearch to return all archived jobs matching the search term" )
394+
395+ pageLength := 3
396+ paginatedJobsBySearchFromArchive , err := jobDBHandler .SelectAllJobsFromArchiveBySearch (searchTerm , 0 , pageLength )
397+ assert .NoError (t , err , "Expected SelectAllJobsFromArchiveBySearch to not return an error" )
398+ assert .Len (t , paginatedJobsBySearchFromArchive , pageLength , "Expected SelectAllJobsFromArchiveBySearch to return 3 archived jobs" )
399+ }
0 commit comments