GCC Code Coverage Report


Directory: ./
File: TESTS/TEST_LOCAL_VARIABLE/main.cpp
Date: 2024-12-09 11:00:39
Exec Total Coverage
Lines: 44 44 100.0%
Branches: 105 105 100.0%

Line Branch Exec Source
1 /***************************************
2 Auteur : Pierre Aubert
3 Mail : pierre.aubert@lapp.in2p3.fr
4 Licence : CeCILL-C
5 ****************************************/
6
7 #include "phoenix_assert.h"
8 #include "phoenix_control.h"
9
10 typedef PAbstractControlManager<std::string, PMockControlBackend, PMockControlBackend> ConnectorManager;
11
12 ///Basic test of a PAbstractConnectorManager for local variable
13 1 void testBaseAbtractConnectorManagerServerLocalVariable(){
14 //Let's create the mock file
15
1/1
✓ Branch 1 taken 1 times.
1 PMockConnectorVar mock;
16
2/2
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
1 mock.setType(phoenix_getComposeType<size_t>());
17
6/6
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 14 taken 1 times.
✓ Branch 17 taken 1 times.
✓ Branch 20 taken 1 times.
1 phoenix_mockCreate(mock, phoenix_getControlMockFileVar("mock_connector", "MockManager", "getLocalVar", "currentState"));
18
2/2
✓ Branch 0 taken 10 times.
✓ Branch 1 taken 1 times.
11 for(size_t i(0lu); i < 10lu; ++i){ //Let's push 10 values
19
1/1
✓ Branch 1 taken 10 times.
10 phoenix_mockVarAppendData(i, mock, i);
20 }
21
1/1
✓ Branch 1 taken 1 times.
1 phoenix_mockSave(mock);
22
23
9/9
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 9 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
✓ Branch 20 taken 1 times.
✓ Branch 24 taken 1 times.
✓ Branch 27 taken 1 times.
✓ Branch 30 taken 1 times.
2 ConnectorManager manager;
24
5/5
✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
✓ Branch 9 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
1 manager.addClientConnector("Alice", "localhost", phoenix_mockControlParam(false, "mock_localVar", PLog::DEBUG));
25
26 1 size_t defaultState(0lu);
27
2/2
✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
1 manager.registerLocalVar("currentState", defaultState);
28
29
2/2
✓ Branch 0 taken 10 times.
✓ Branch 1 taken 1 times.
11 for(size_t i(0lu); i < 10lu; ++i){ //Let's push 10 values
30 //Set the local var
31
6/6
✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 14 taken 10 times.
✓ Branch 17 taken 10 times.
✓ Branch 20 taken 10 times.
10 phoenix_assert(manager.setLocalVar("currentState", i));
32 //Get its value
33 10 size_t value(0lu);
34
6/6
✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 14 taken 10 times.
✓ Branch 17 taken 10 times.
✓ Branch 20 taken 10 times.
10 phoenix_assert(manager.getLocalVar("currentState", value));
35 //Check the value is OK
36
4/4
✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 13 taken 10 times.
10 phoenix_assert(value == i);
37 }
38 1 }
39
40 ///Basic test of a PAbstractConnectorManager for local variable in record mode
41 1 void testBaseAbtractConnectorManagerServerLocalVariableRecord(){
42 //Let's create the mock file
43
2/2
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
1 PMockConnectorVar mock, mockSet;
44
6/6
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 14 taken 1 times.
✓ Branch 17 taken 1 times.
✓ Branch 20 taken 1 times.
1 phoenix_mockCreate(mock, phoenix_getControlMockFileVar("mock_manager_for_record", "RealManagerRecord", "getLocalVar", "currentState"));
45
6/6
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 14 taken 1 times.
✓ Branch 17 taken 1 times.
✓ Branch 20 taken 1 times.
1 phoenix_mockCreate(mockSet, phoenix_getControlMockFileVar("mock_manager_for_record", "RealManagerRecord", "setLocalVar", "currentState"));
46
2/2
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
1 mock.setType(phoenix_getComposeType<size_t>());
47
2/2
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
1 mockSet.setType(phoenix_getComposeType<size_t>());
48
2/2
✓ Branch 0 taken 10 times.
✓ Branch 1 taken 1 times.
11 for(size_t i(0lu); i < 10lu; ++i){ //Let's push 10 values
49
1/1
✓ Branch 1 taken 10 times.
10 phoenix_mockVarAppendData(2lu*i, mockSet, i);
50
1/1
✓ Branch 1 taken 10 times.
10 phoenix_mockVarAppendData(2lu*i + 1lu, mock, i);
51 }
52
1/1
✓ Branch 1 taken 1 times.
1 phoenix_mockSave(mock);
53
1/1
✓ Branch 1 taken 1 times.
1 phoenix_mockSave(mockSet);
54
55 ConnectorManager manager(ConnectorMode::MOCK_RECORD,
56
3/3
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 9 taken 1 times.
2 PMockControlBackend::defaultMgrParam("RealManagerRecord", false, "mock_manager_for_record", PLog::DEBUG), //Real backend Manager
57
2/2
✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
2 phoenix_mockControlParam(true, "mock_localVar_recorded", PLog::DEBUG), //Mock backend
58
4/4
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 9 taken 1 times.
✓ Branch 12 taken 1 times.
3 PMockControlBackend::defaultMgrParam("MockManagerRecorder", true, "mock_localVar_recorded", PLog::DEBUG)); //Mock backend Manager
59
60
5/5
✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
✓ Branch 9 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
1 manager.addClientConnector("Alice", "localhost", phoenix_mockControlParam(false, "mock_localVar_for_record", PLog::DEBUG));
61
62 1 size_t defaultState(0lu);
63
2/2
✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
1 manager.registerLocalVar("currentState", defaultState);
64
2/2
✓ Branch 0 taken 10 times.
✓ Branch 1 taken 1 times.
11 for(size_t i(0lu); i < 10lu; ++i){ //Let's push 10 values
65 //Set the local var
66
6/6
✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 14 taken 10 times.
✓ Branch 17 taken 10 times.
✓ Branch 20 taken 10 times.
10 phoenix_assert(manager.setLocalVar("currentState", i));
67 //Get its value
68 10 size_t value(0lu);
69
6/6
✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 14 taken 10 times.
✓ Branch 17 taken 10 times.
✓ Branch 20 taken 10 times.
10 phoenix_assert(manager.getLocalVar("currentState", value));
70 //Check the value if OK
71
4/4
✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 13 taken 10 times.
10 phoenix_assert(value == i);
72 }
73 1 }
74
75
76 1 int main(int argc, char** argv){
77 1 testBaseAbtractConnectorManagerServerLocalVariable();
78 1 testBaseAbtractConnectorManagerServerLocalVariableRecord();
79 1 return 0;
80 }
81
82
83