1+ package storage ;
2+
3+ import dev .aikido .agent_api .storage .statistics .OperationKind ;
4+ import dev .aikido .agent_api .storage .statistics .OperationRecord ;
5+ import org .junit .jupiter .api .BeforeEach ;
6+ import org .junit .jupiter .api .Test ;
7+
8+ import java .util .Map ;
9+
10+ import static org .junit .jupiter .api .Assertions .assertEquals ;
11+
12+ public class OperationRecordTest {
13+
14+ private OperationRecord operationRecord ;
15+
16+ @ BeforeEach
17+ public void setUp () {
18+ operationRecord = new OperationRecord (OperationKind .SQL_OP );
19+ }
20+
21+ @ Test
22+ public void testInitialization () {
23+ assertEquals (OperationKind .SQL_OP , operationRecord .getKind ());
24+ assertEquals (0 , operationRecord .total ());
25+ Map <String , Integer > attacksDetected = operationRecord .getAttacksDetected ();
26+ assertEquals (0 , attacksDetected .get ("total" ));
27+ assertEquals (0 , attacksDetected .get ("blocked" ));
28+ }
29+
30+ @ Test
31+ public void testIncrementTotal () {
32+ operationRecord .incrementTotal ();
33+ assertEquals (1 , operationRecord .total ());
34+
35+ operationRecord .incrementTotal ();
36+ assertEquals (2 , operationRecord .total ());
37+ }
38+
39+ @ Test
40+ public void testIncrementAttacksBlocked () {
41+ operationRecord .incrementAttacksBlocked ();
42+ Map <String , Integer > attacksDetected = operationRecord .getAttacksDetected ();
43+ assertEquals (0 , attacksDetected .get ("total" ));
44+ assertEquals (1 , attacksDetected .get ("blocked" ));
45+
46+ operationRecord .incrementAttacksBlocked ();
47+ assertEquals (2 , attacksDetected .get ("blocked" ));
48+ }
49+
50+ @ Test
51+ public void testIncrementAttacksDetected () {
52+ operationRecord .incrementAttacksDetected ();
53+ Map <String , Integer > attacksDetected = operationRecord .getAttacksDetected ();
54+ assertEquals (1 , attacksDetected .get ("total" ));
55+ assertEquals (0 , attacksDetected .get ("blocked" ));
56+
57+ operationRecord .incrementAttacksDetected ();
58+ assertEquals (2 , attacksDetected .get ("total" ));
59+ }
60+
61+ @ Test
62+ public void testMultipleOperations () {
63+ operationRecord .incrementTotal ();
64+ operationRecord .incrementAttacksDetected ();
65+ operationRecord .incrementAttacksBlocked ();
66+
67+ assertEquals (1 , operationRecord .total ());
68+ Map <String , Integer > attacksDetected = operationRecord .getAttacksDetected ();
69+ assertEquals (1 , attacksDetected .get ("total" ));
70+ assertEquals (1 , attacksDetected .get ("blocked" ));
71+ }
72+ }
0 commit comments