Directory: | ./ |
---|---|
File: | TESTS/TEST_CALL_CONNECTOR_MANAGER/main.cpp |
Date: | 2024-12-09 11:00:39 |
Exec | Total | Coverage | |
---|---|---|---|
Lines: | 36 | 38 | 94.7% |
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 | //Some very interesting function to call | ||
13 | /** @param val : some very important value | ||
14 | * @return some very important result | ||
15 | */ | ||
16 | ✗ | bool pompe(int val){ | |
17 | ✗ | return val > 0; | |
18 | } | ||
19 | |||
20 | ///Basic test of a PAbstractConnectorManager for call | ||
21 | 1 | void testBaseAbtractConnectorManagerServerSimpleCall(){ | |
22 |
1/1✓ Branch 1 taken 1 times.
|
1 | PFunctionPrototype prototype; |
23 |
2/2✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
|
1 | prototype.setName("pompe"); |
24 |
3/3✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
✓ Branch 7 taken 1 times.
|
1 | prototype.getVecReturnType().push_back(phoenix_getComposeType<bool>()); |
25 |
3/3✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
✓ Branch 7 taken 1 times.
|
1 | prototype.getVecParam().push_back(phoenix_getComposeType<int>()); |
26 |
5/5✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
✓ Branch 7 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
|
1 | std::cout << "testBaseAbtractConnectorManagerServerSimpleCall : prototype : '" << ts_protoTypeToStr(prototype) << "'" << std::endl; |
27 | //Let's create the mock file | ||
28 |
1/1✓ Branch 1 taken 1 times.
|
1 | PMockConnectorCall mock; |
29 |
5/5✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
|
1 | phoenix_mockCreate(mock, phoenix_getControlMockFileMethod("mock_call", "localhost", "pompe"), prototype); |
30 | // mock_call/mock_localhost_pompe.pmockmethod | ||
31 |
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 |
32 | 10 | int value((int)i); | |
33 |
5/5✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 13 taken 10 times.
✓ Branch 16 taken 10 times.
|
10 | phoenix_assert(phoenix_mockCallAppendData(i, mock, (int)value)); |
34 | } | ||
35 |
5/5✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
|
1 | phoenix_assert(phoenix_mockSave(mock)); |
36 | |||
37 | //Let's use it | ||
38 |
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; |
39 |
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_call", PLog::DEBUG)); |
40 |
4/4✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
✓ Branch 9 taken 1 times.
✓ Branch 12 taken 1 times.
|
1 | manager.registerCall("Alice", phoenix_getPrototype("pompe", pompe)); |
41 | |||
42 |
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 |
43 |
7/7✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 14 taken 10 times.
✓ Branch 18 taken 10 times.
✓ Branch 21 taken 10 times.
✓ Branch 24 taken 10 times.
|
10 | phoenix_assert(manager.call("Alice", "pompe", i)); |
44 | } | ||
45 | 1 | } | |
46 | |||
47 | ///Basic test of a PAbstractConnectorManager for Pull in record mode | ||
48 | 1 | void testBaseAbtractConnectorManagerServerSimpleCallRecord(){ | |
49 | //Let's create the mock file | ||
50 |
1/1✓ Branch 1 taken 1 times.
|
1 | PMockConnectorCall mock; |
51 |
5/5✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
|
1 | phoenix_mockCreate(mock, phoenix_getControlMockFileMethod("mock_call_for_record", "localhost", "pompe"), |
52 |
2/2✓ Branch 2 taken 1 times.
✓ Branch 5 taken 1 times.
|
2 | phoenix_getPrototype("pompe", pompe)); |
53 | |||
54 |
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 |
55 | 10 | int value((int)i); | |
56 |
5/5✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 13 taken 10 times.
✓ Branch 16 taken 10 times.
|
10 | phoenix_assert(phoenix_mockCallAppendData(i, mock, (int)value)); |
57 | } | ||
58 |
5/5✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 16 taken 1 times.
|
1 | phoenix_assert(phoenix_mockSave(mock)); |
59 | |||
60 | //Let's use it | ||
61 |
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(ConnectorMode::MOCK_RECORD, PMockControlBackend::defaultMgrParam(), phoenix_mockControlParam(true, "mock_call_recorded", PLog::DEBUG)); |
62 |
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_call_for_record", PLog::DEBUG)); |
63 |
3/3✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 9 taken 1 times.
|
1 | manager.registerCall("Alice", "pompe", pompe); |
64 | |||
65 |
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 |
66 |
7/7✓ Branch 2 taken 10 times.
✓ Branch 6 taken 10 times.
✓ Branch 10 taken 10 times.
✓ Branch 14 taken 10 times.
✓ Branch 18 taken 10 times.
✓ Branch 21 taken 10 times.
✓ Branch 24 taken 10 times.
|
10 | phoenix_assert(manager.call("Alice", "pompe", i)); |
67 | } | ||
68 | 1 | } | |
69 | |||
70 | |||
71 | 1 | int main(int argc, char** argv){ | |
72 | 1 | testBaseAbtractConnectorManagerServerSimpleCall(); | |
73 | 1 | testBaseAbtractConnectorManagerServerSimpleCallRecord(); | |
74 | 1 | return 0; | |
75 | } | ||
76 | |||
77 | |||
78 |