3
3
import static org .junit .jupiter .api .Assertions .assertEquals ;
4
4
5
5
import java .util .List ;
6
+ import java .util .Map ;
6
7
import org .junit .jupiter .api .BeforeEach ;
7
8
import org .junit .jupiter .api .Test ;
8
9
@@ -17,32 +18,56 @@ public void setup() {
17
18
18
19
@ Test
19
20
public void testAddAndScheduleSingleTask () {
20
- scheduler .addTask ("Task1" , 10 );
21
- List <String > expected = List .of ("Task1" );
22
- assertEquals (expected , scheduler .scheduleTasks ());
21
+ scheduler .addTask ("Task1" , 10 , 5 );
22
+
23
+ // Expected schedule and energy consumption
24
+ List <String > expectedOrder = List .of ("Task1" );
25
+ int expectedEnergyConsumption = 10 * 5 ;
26
+
27
+ Map <String , Object > result = scheduler .scheduleTasks ();
28
+ assertEquals (expectedOrder , result .get ("scheduledOrder" ));
29
+ assertEquals (expectedEnergyConsumption , result .get ("totalEnergyConsumption" ));
23
30
}
24
31
25
32
@ Test
26
33
public void testScheduleMultipleTasks () {
27
- scheduler .addTask ("Task1" , 10 );
28
- scheduler .addTask ("Task2" , 5 );
29
- scheduler .addTask ("Task3" , 15 );
30
- List <String > expected = List .of ("Task2" , "Task1" , "Task3" );
31
- assertEquals (expected , scheduler .scheduleTasks ());
34
+ scheduler .addTask ("Task1" , 10 , 3 );
35
+ scheduler .addTask ("Task2" , 5 , 2 );
36
+ scheduler .addTask ("Task3" , 15 , 4 );
37
+
38
+ // Expected schedule order and cumulative energy calculation
39
+ List <String > expectedOrder = List .of ("Task2" , "Task1" , "Task3" );
40
+
41
+ int expectedEnergyConsumption = 195 ;
42
+
43
+ Map <String , Object > result = scheduler .scheduleTasks ();
44
+ assertEquals (expectedOrder , result .get ("scheduledOrder" ));
45
+ assertEquals (expectedEnergyConsumption , result .get ("totalEnergyConsumption" ));
32
46
}
33
47
34
48
@ Test
35
49
public void testScheduleTasksWithSameConsumption () {
36
- scheduler .addTask ("Task1" , 10 );
37
- scheduler .addTask ("Task2" , 10 );
38
- scheduler .addTask ("Task3" , 5 );
39
- List <String > expected = List .of ("Task3" , "Task1" , "Task2" );
40
- assertEquals (expected , scheduler .scheduleTasks ());
50
+ scheduler .addTask ("Task1" , 10 , 2 );
51
+ scheduler .addTask ("Task2" , 10 , 1 );
52
+ scheduler .addTask ("Task3" , 5 , 3 );
53
+
54
+ List <String > expectedOrder = List .of ("Task3" , "Task1" , "Task2" );
55
+
56
+ int expectedEnergyConsumption = 125 ;
57
+
58
+ Map <String , Object > result = scheduler .scheduleTasks ();
59
+ assertEquals (expectedOrder , result .get ("scheduledOrder" ));
60
+ assertEquals (expectedEnergyConsumption , result .get ("totalEnergyConsumption" ));
41
61
}
42
62
43
63
@ Test
44
64
public void testEmptyScheduler () {
45
- List <String > expected = List .of ();
46
- assertEquals (expected , scheduler .scheduleTasks ());
65
+ Map <String , Object > result = scheduler .scheduleTasks ();
66
+
67
+ List <String > expectedOrder = List .of ();
68
+ int expectedEnergyConsumption = 0 ;
69
+
70
+ assertEquals (expectedOrder , result .get ("scheduledOrder" ));
71
+ assertEquals (expectedEnergyConsumption , result .get ("totalEnergyConsumption" ));
47
72
}
48
73
}
0 commit comments