2
2
3
3
import static org .junit .jupiter .api .Assertions .assertEquals ;
4
4
import static org .junit .jupiter .api .Assertions .assertNull ;
5
+ import static org .junit .jupiter .api .Assertions .assertTrue ;
5
6
6
7
import org .junit .jupiter .api .BeforeEach ;
7
8
import org .junit .jupiter .api .Test ;
@@ -18,28 +19,48 @@ public void setup() {
18
19
@ Test
19
20
public void testAddAndExecuteTask () {
20
21
scheduler .addTask ("Group1" , "Task1" );
21
- assertEquals ("Task1" , scheduler .executeTasks ("Group1" ));
22
+
23
+ String result = scheduler .executeTasks ("Group1" );
24
+ String [] parts = result .split (" started at " );
25
+
26
+ // Validate task name and ensure start time is a valid timestamp
27
+ assertEquals ("Task1" , parts [0 ]);
28
+ assertTrue (Long .parseLong (parts [1 ]) > 0 , "Start time should be greater than 0" );
22
29
}
23
30
24
31
@ Test
25
32
public void testMultipleTasksInGroup () {
26
33
scheduler .addTask ("Group1" , "Task1" );
27
34
scheduler .addTask ("Group1" , "Task2" );
28
- assertEquals ("Task1" , scheduler .executeTasks ("Group1" ));
29
- assertEquals ("Task2" , scheduler .executeTasks ("Group1" ));
35
+
36
+ // Execute the first task
37
+ String result1 = scheduler .executeTasks ("Group1" );
38
+ String [] parts1 = result1 .split (" started at " );
39
+ assertEquals ("Task1" , parts1 [0 ]);
40
+ assertTrue (Long .parseLong (parts1 [1 ]) > 0 , "Start time should be greater than 0" );
41
+
42
+ // Execute the second task
43
+ String result2 = scheduler .executeTasks ("Group1" );
44
+ String [] parts2 = result2 .split (" started at " );
45
+ assertEquals ("Task2" , parts2 [0 ]);
46
+ assertTrue (Long .parseLong (parts2 [1 ]) > 0 , "Start time should be greater than 0" );
30
47
}
31
48
32
49
@ Test
33
50
public void testExecuteAllTasks () {
34
51
scheduler .addTask ("Group1" , "Task1" );
35
52
scheduler .addTask ("Group1" , "Task2" );
53
+
36
54
scheduler .executeTasks ("Group1" );
37
55
scheduler .executeTasks ("Group1" );
56
+
57
+ // Confirm no tasks remain
38
58
assertNull (scheduler .executeTasks ("Group1" ));
39
59
}
40
60
41
61
@ Test
42
62
public void testEmptyTaskGroup () {
63
+ // Confirm executing tasks on an empty group returns null
43
64
assertNull (scheduler .executeTasks ("Group2" ));
44
65
}
45
66
}
0 commit comments