| Line | Branch | Exec | Source |
|---|---|---|---|
| 1 | /*************************************** | ||
| 2 | Auteur : Pierre Aubert | ||
| 3 | Mail : pierre.aubert@lapp.in2p3.fr | ||
| 4 | Licence : CeCILL-C | ||
| 5 | ****************************************/ | ||
| 6 | |||
| 7 | #include "data_stream_assert.h" | ||
| 8 | #include "data_stream_check_value.h" | ||
| 9 | #include "phoenix_type_stream.h" | ||
| 10 | |||
| 11 | ///@brief Some struct test with type name specialisation | ||
| 12 | struct Shadok{}; | ||
| 13 | |||
| 14 | ///Specialisation for Shadok | ||
| 15 | template<> | ||
| 16 | 1 | std::string phoenix_getTypeName<Shadok>(){ | |
| 17 |
1/1✓ Branch 0 (4→5) taken 1 times.
|
2 | return "Shadok"; |
| 18 | } | ||
| 19 | |||
| 20 | ///@brief Some struct test without type name specialisation | ||
| 21 | struct Gibi{}; | ||
| 22 | |||
| 23 | ///Basic test of a simple type | ||
| 24 | 1 | void testBaseSimpleTypeToStr(){ | |
| 25 |
6/6✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (7→8) taken 1 times.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (11→12) taken 1 times.
✓ Branch 8 (12→13) taken 1 times.
✓ Branch 10 (13→14) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<char>() == "char"); |
| 26 |
6/6✓ Branch 0 (23→24) taken 1 times.
✓ Branch 2 (26→27) taken 1 times.
✓ Branch 4 (29→30) taken 1 times.
✓ Branch 6 (30→31) taken 1 times.
✓ Branch 8 (31→32) taken 1 times.
✓ Branch 10 (32→33) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<short>() == "short"); |
| 27 |
6/6✓ Branch 0 (42→43) taken 1 times.
✓ Branch 2 (45→46) taken 1 times.
✓ Branch 4 (48→49) taken 1 times.
✓ Branch 6 (49→50) taken 1 times.
✓ Branch 8 (50→51) taken 1 times.
✓ Branch 10 (51→52) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<int>() == "int"); |
| 28 |
6/6✓ Branch 0 (61→62) taken 1 times.
✓ Branch 2 (64→65) taken 1 times.
✓ Branch 4 (67→68) taken 1 times.
✓ Branch 6 (68→69) taken 1 times.
✓ Branch 8 (69→70) taken 1 times.
✓ Branch 10 (70→71) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<long>() == "long"); |
| 29 | |||
| 30 |
6/6✓ Branch 0 (80→81) taken 1 times.
✓ Branch 2 (83→84) taken 1 times.
✓ Branch 4 (86→87) taken 1 times.
✓ Branch 6 (87→88) taken 1 times.
✓ Branch 8 (88→89) taken 1 times.
✓ Branch 10 (89→90) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<unsigned char>() == "unsigned char"); |
| 31 |
6/6✓ Branch 0 (99→100) taken 1 times.
✓ Branch 2 (102→103) taken 1 times.
✓ Branch 4 (105→106) taken 1 times.
✓ Branch 6 (106→107) taken 1 times.
✓ Branch 8 (107→108) taken 1 times.
✓ Branch 10 (108→109) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<unsigned short>() == "unsigned short"); |
| 32 |
6/6✓ Branch 0 (118→119) taken 1 times.
✓ Branch 2 (121→122) taken 1 times.
✓ Branch 4 (124→125) taken 1 times.
✓ Branch 6 (125→126) taken 1 times.
✓ Branch 8 (126→127) taken 1 times.
✓ Branch 10 (127→128) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<unsigned int>() == "unsigned int"); |
| 33 |
6/6✓ Branch 0 (137→138) taken 1 times.
✓ Branch 2 (140→141) taken 1 times.
✓ Branch 4 (143→144) taken 1 times.
✓ Branch 6 (144→145) taken 1 times.
✓ Branch 8 (145→146) taken 1 times.
✓ Branch 10 (146→147) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<unsigned long>() == "unsigned long"); |
| 34 | |||
| 35 |
6/6✓ Branch 0 (156→157) taken 1 times.
✓ Branch 2 (159→160) taken 1 times.
✓ Branch 4 (162→163) taken 1 times.
✓ Branch 6 (163→164) taken 1 times.
✓ Branch 8 (164→165) taken 1 times.
✓ Branch 10 (165→166) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<bool>() == "bool"); |
| 36 | |||
| 37 |
6/6✓ Branch 0 (175→176) taken 1 times.
✓ Branch 2 (178→179) taken 1 times.
✓ Branch 4 (181→182) taken 1 times.
✓ Branch 6 (182→183) taken 1 times.
✓ Branch 8 (183→184) taken 1 times.
✓ Branch 10 (184→185) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<float>() == "float"); |
| 38 |
6/6✓ Branch 0 (194→195) taken 1 times.
✓ Branch 2 (197→198) taken 1 times.
✓ Branch 4 (200→201) taken 1 times.
✓ Branch 6 (201→202) taken 1 times.
✓ Branch 8 (202→203) taken 1 times.
✓ Branch 10 (203→204) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<double>() == "double"); |
| 39 | |||
| 40 |
6/6✓ Branch 0 (213→214) taken 1 times.
✓ Branch 2 (216→217) taken 1 times.
✓ Branch 4 (219→220) taken 1 times.
✓ Branch 6 (220→221) taken 1 times.
✓ Branch 8 (221→222) taken 1 times.
✓ Branch 10 (222→223) taken 1 times.
|
6 | data_stream_assert(phoenix_getTypeToStr<std::string>() == "std::string"); |
| 41 | |||
| 42 |
8/8✓ Branch 0 (232→233) taken 1 times.
✓ Branch 2 (235→236) taken 1 times.
✓ Branch 4 (238→239) taken 1 times.
✓ Branch 6 (241→242) taken 1 times.
✓ Branch 8 (242→243) taken 1 times.
✓ Branch 10 (245→246) taken 1 times.
✓ Branch 12 (246→247) taken 1 times.
✓ Branch 14 (247→248) taken 1 times.
|
10 | data_stream_assert(checkValue("Type Shadok", phoenix_getTypeToStr<Shadok>(), std::string("Shadok"))); |
| 43 | //There is no specialisation for Gibi, so we have to get UnknownType | ||
| 44 |
8/8✓ Branch 0 (261→262) taken 1 times.
✓ Branch 2 (264→265) taken 1 times.
✓ Branch 4 (267→268) taken 1 times.
✓ Branch 6 (270→271) taken 1 times.
✓ Branch 8 (271→272) taken 1 times.
✓ Branch 10 (274→275) taken 1 times.
✓ Branch 12 (275→276) taken 1 times.
✓ Branch 14 (276→277) taken 1 times.
|
9 | data_stream_assert(checkValue("Type Gibi", phoenix_getTypeToStr<Gibi>(), std::string("UnknownType"))); |
| 45 | 1 | } | |
| 46 | |||
| 47 | ///Basic test of a PAbstractConnectorManager | ||
| 48 | 1 | void testBaseComposeType(){ | |
| 49 |
8/8✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (7→8) taken 1 times.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (13→14) taken 1 times.
✓ Branch 8 (14→15) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
✓ Branch 12 (18→19) taken 1 times.
✓ Branch 14 (19→20) taken 1 times.
|
10 | data_stream_assert(checkValue("TypeStream<int>::getTypeToStr()", TypeStream<int>::getTypeToStr(), std::string("int"))); |
| 50 |
8/8✓ Branch 0 (33→34) taken 1 times.
✓ Branch 2 (36→37) taken 1 times.
✓ Branch 4 (39→40) taken 1 times.
✓ Branch 6 (42→43) taken 1 times.
✓ Branch 8 (43→44) taken 1 times.
✓ Branch 10 (46→47) taken 1 times.
✓ Branch 12 (47→48) taken 1 times.
✓ Branch 14 (48→49) taken 1 times.
|
10 | data_stream_assert(checkValue("TypeStream<std::vector<int> >::getTypeToStr()", TypeStream<std::vector<int> >::getTypeToStr(), std::string("std::vector<int >"))); |
| 51 |
8/8✓ Branch 0 (62→63) taken 1 times.
✓ Branch 2 (65→66) taken 1 times.
✓ Branch 4 (68→69) taken 1 times.
✓ Branch 6 (71→72) taken 1 times.
✓ Branch 8 (72→73) taken 1 times.
✓ Branch 10 (75→76) taken 1 times.
✓ Branch 12 (76→77) taken 1 times.
✓ Branch 14 (77→78) taken 1 times.
|
10 | data_stream_assert(checkValue("TypeStream<std::list<int> >::getTypeToStr()", TypeStream<std::list<int> >::getTypeToStr(), std::string("std::list<int >"))); |
| 52 | |||
| 53 | |||
| 54 |
8/8✓ Branch 0 (91→92) taken 1 times.
✓ Branch 2 (94→95) taken 1 times.
✓ Branch 4 (97→98) taken 1 times.
✓ Branch 6 (100→101) taken 1 times.
✓ Branch 8 (101→102) taken 1 times.
✓ Branch 10 (104→105) taken 1 times.
✓ Branch 12 (105→106) taken 1 times.
✓ Branch 14 (106→107) taken 1 times.
|
10 | data_stream_assert(checkValue("phoenix_getTypeToStr<int>()", phoenix_getTypeToStr<int>(), std::string("int"))); |
| 55 |
8/8✓ Branch 0 (120→121) taken 1 times.
✓ Branch 2 (123→124) taken 1 times.
✓ Branch 4 (126→127) taken 1 times.
✓ Branch 6 (129→130) taken 1 times.
✓ Branch 8 (130→131) taken 1 times.
✓ Branch 10 (133→134) taken 1 times.
✓ Branch 12 (134→135) taken 1 times.
✓ Branch 14 (135→136) taken 1 times.
|
10 | data_stream_assert(checkValue("phoenix_getTypeToStr<std::vector<int> >()", phoenix_getTypeToStr<std::vector<int> >(), std::string("std::vector<int >"))); |
| 56 |
8/8✓ Branch 0 (149→150) taken 1 times.
✓ Branch 2 (152→153) taken 1 times.
✓ Branch 4 (155→156) taken 1 times.
✓ Branch 6 (158→159) taken 1 times.
✓ Branch 8 (159→160) taken 1 times.
✓ Branch 10 (162→163) taken 1 times.
✓ Branch 12 (163→164) taken 1 times.
✓ Branch 14 (164→165) taken 1 times.
|
9 | data_stream_assert(checkValue("phoenix_getTypeToStr<std::list<int> >()", phoenix_getTypeToStr<std::list<int> >(), std::string("std::list<int >"))); |
| 57 | 1 | } | |
| 58 | |||
| 59 | ///Test compose std::map | ||
| 60 | 1 | void testBaseComposeMap(){ | |
| 61 |
8/8✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (7→8) taken 1 times.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (13→14) taken 1 times.
✓ Branch 8 (14→15) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
✓ Branch 12 (18→19) taken 1 times.
✓ Branch 14 (19→20) taken 1 times.
|
10 | data_stream_assert(checkValue("TypeStream<std::map<int, float> >::getTypeToStr()", TypeStream<std::map<int, float> >::getTypeToStr(), std::string("std::map<int, float >"))); |
| 62 |
8/8✓ Branch 0 (33→34) taken 1 times.
✓ Branch 2 (36→37) taken 1 times.
✓ Branch 4 (39→40) taken 1 times.
✓ Branch 6 (42→43) taken 1 times.
✓ Branch 8 (43→44) taken 1 times.
✓ Branch 10 (46→47) taken 1 times.
✓ Branch 12 (47→48) taken 1 times.
✓ Branch 14 (48→49) taken 1 times.
|
10 | data_stream_assert(checkValue("phoenix_getTypeToStr<std::map<int, float> >()", phoenix_getTypeToStr<std::map<int, float> >(), std::string("std::map<int, float >"))); |
| 63 | |||
| 64 |
8/8✓ Branch 0 (62→63) taken 1 times.
✓ Branch 2 (65→66) taken 1 times.
✓ Branch 4 (68→69) taken 1 times.
✓ Branch 6 (71→72) taken 1 times.
✓ Branch 8 (72→73) taken 1 times.
✓ Branch 10 (75→76) taken 1 times.
✓ Branch 12 (76→77) taken 1 times.
✓ Branch 14 (77→78) taken 1 times.
|
10 | data_stream_assert(checkValue("TypeStream<std::pair<int, float> >::getTypeToStr()", TypeStream<std::pair<int, float> >::getTypeToStr(), std::string("std::pair<int, float >"))); |
| 65 |
8/8✓ Branch 0 (91→92) taken 1 times.
✓ Branch 2 (94→95) taken 1 times.
✓ Branch 4 (97→98) taken 1 times.
✓ Branch 6 (100→101) taken 1 times.
✓ Branch 8 (101→102) taken 1 times.
✓ Branch 10 (104→105) taken 1 times.
✓ Branch 12 (105→106) taken 1 times.
✓ Branch 14 (106→107) taken 1 times.
|
9 | data_stream_assert(checkValue("phoenix_getTypeToStr<std::pair<int, float> >()", phoenix_getTypeToStr<std::pair<int, float> >(), std::string("std::pair<int, float >"))); |
| 66 | 1 | } | |
| 67 | |||
| 68 | ///Test std::tuple | ||
| 69 | 1 | void testBaseTuple(){ | |
| 70 |
8/8✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (7→8) taken 1 times.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (13→14) taken 1 times.
✓ Branch 8 (14→15) taken 1 times.
✓ Branch 10 (17→18) taken 1 times.
✓ Branch 12 (18→19) taken 1 times.
✓ Branch 14 (19→20) taken 1 times.
|
10 | data_stream_assert(checkValue("phoenix_getTypeToStr<std::tuple<int> >()", phoenix_getTypeToStr<std::tuple<int> >(), std::string("std::tuple<int >"))); |
| 71 |
8/8✓ Branch 0 (33→34) taken 1 times.
✓ Branch 2 (36→37) taken 1 times.
✓ Branch 4 (39→40) taken 1 times.
✓ Branch 6 (42→43) taken 1 times.
✓ Branch 8 (43→44) taken 1 times.
✓ Branch 10 (46→47) taken 1 times.
✓ Branch 12 (47→48) taken 1 times.
✓ Branch 14 (48→49) taken 1 times.
|
10 | data_stream_assert(checkValue("phoenix_getTypeToStr<std::tuple<int, float> >()", phoenix_getTypeToStr<std::tuple<int, float> >(), std::string("std::tuple<int, float >"))); |
| 72 |
8/8✓ Branch 0 (62→63) taken 1 times.
✓ Branch 2 (65→66) taken 1 times.
✓ Branch 4 (68→69) taken 1 times.
✓ Branch 6 (71→72) taken 1 times.
✓ Branch 8 (72→73) taken 1 times.
✓ Branch 10 (75→76) taken 1 times.
✓ Branch 12 (76→77) taken 1 times.
✓ Branch 14 (77→78) taken 1 times.
|
9 | data_stream_assert(checkValue("phoenix_getTypeToStr<std::tuple<int, float, double> >()", phoenix_getTypeToStr<std::tuple<int, float, double> >(), std::string("std::tuple<int, float, double >"))); |
| 73 | 1 | } | |
| 74 | |||
| 75 | ///Some function to be converted | ||
| 76 | /** @param arg : argument | ||
| 77 | * @return result | ||
| 78 | */ | ||
| 79 | 1 | int someFunction(int arg){ | |
| 80 | 1 | return arg*2; | |
| 81 | } | ||
| 82 | |||
| 83 | ///Some function to be converted | ||
| 84 | /** @param arg : argument | ||
| 85 | * @param val : value | ||
| 86 | * @return result | ||
| 87 | */ | ||
| 88 | 1 | int someFunction2(int arg, float val){ | |
| 89 | 1 | return arg*val; | |
| 90 | } | ||
| 91 | |||
| 92 | ///Some function to be converted | ||
| 93 | /** @param arg : argument | ||
| 94 | */ | ||
| 95 | 1 | void someVoidReturnFunction(int arg){} | |
| 96 | |||
| 97 | ///Test function with not argument and no return at all | ||
| 98 | 1 | void someVoidVoidFunction(){} | |
| 99 | |||
| 100 | ///Test conversion of function prototype into a string | ||
| 101 | 1 | void testBaseFunctionPrototype(){ | |
| 102 |
6/6✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (7→8) taken 1 times.
✓ Branch 4 (10→11) taken 1 times.
✓ Branch 6 (14→15) taken 1 times.
✓ Branch 8 (15→16) taken 1 times.
✓ Branch 10 (16→17) taken 1 times.
|
8 | data_stream_assert(checkValue("someFunction", someFunction(1), 2)); |
| 103 |
6/6✓ Branch 0 (27→28) taken 1 times.
✓ Branch 2 (30→31) taken 1 times.
✓ Branch 4 (33→34) taken 1 times.
✓ Branch 6 (37→38) taken 1 times.
✓ Branch 8 (38→39) taken 1 times.
✓ Branch 10 (39→40) taken 1 times.
|
7 | data_stream_assert(checkValue("someFunction2", someFunction2(1, 2.0), 2)); |
| 104 | 1 | someVoidReturnFunction(1); | |
| 105 | 1 | someVoidVoidFunction(); | |
| 106 |
8/8✓ Branch 0 (52→53) taken 1 times.
✓ Branch 2 (55→56) taken 1 times.
✓ Branch 4 (58→59) taken 1 times.
✓ Branch 6 (61→62) taken 1 times.
✓ Branch 8 (62→63) taken 1 times.
✓ Branch 10 (65→66) taken 1 times.
✓ Branch 12 (66→67) taken 1 times.
✓ Branch 14 (67→68) taken 1 times.
|
10 | data_stream_assert(checkValue("int someFunction(int arg)", phoenix_getTypeToStr(someFunction), std::string("int | std::tuple<int >"))); |
| 107 |
8/8✓ Branch 0 (81→82) taken 1 times.
✓ Branch 2 (84→85) taken 1 times.
✓ Branch 4 (87→88) taken 1 times.
✓ Branch 6 (90→91) taken 1 times.
✓ Branch 8 (91→92) taken 1 times.
✓ Branch 10 (94→95) taken 1 times.
✓ Branch 12 (95→96) taken 1 times.
✓ Branch 14 (96→97) taken 1 times.
|
10 | data_stream_assert(checkValue("int someFunction2(int arg, float val)", phoenix_getTypeToStr(someFunction2), std::string("int | std::tuple<int, float >"))); |
| 108 |
8/8✓ Branch 0 (110→111) taken 1 times.
✓ Branch 2 (113→114) taken 1 times.
✓ Branch 4 (116→117) taken 1 times.
✓ Branch 6 (119→120) taken 1 times.
✓ Branch 8 (120→121) taken 1 times.
✓ Branch 10 (123→124) taken 1 times.
✓ Branch 12 (124→125) taken 1 times.
✓ Branch 14 (125→126) taken 1 times.
|
10 | data_stream_assert(checkValue("void someVoidReturnFunction(int arg)", phoenix_getTypeToStr(someVoidReturnFunction), std::string("void | std::tuple<int >"))); |
| 109 |
8/8✓ Branch 0 (139→140) taken 1 times.
✓ Branch 2 (142→143) taken 1 times.
✓ Branch 4 (145→146) taken 1 times.
✓ Branch 6 (148→149) taken 1 times.
✓ Branch 8 (149→150) taken 1 times.
✓ Branch 10 (152→153) taken 1 times.
✓ Branch 12 (153→154) taken 1 times.
✓ Branch 14 (154→155) taken 1 times.
|
9 | data_stream_assert(checkValue("void someVoidVoidFunction()", phoenix_getTypeToStr(someVoidVoidFunction), std::string("void | std::tuple< >"))); |
| 110 | 1 | } | |
| 111 | |||
| 112 | |||
| 113 | 1 | int main(int argc, char** argv){ | |
| 114 | 1 | testBaseSimpleTypeToStr(); | |
| 115 | 1 | testBaseComposeType(); | |
| 116 | 1 | testBaseComposeMap(); | |
| 117 | 1 | testBaseTuple(); | |
| 118 | 1 | testBaseFunctionPrototype(); | |
| 119 | 1 | return 0; | |
| 120 | } | ||
| 121 | |||
| 122 | |||
| 123 |