| Line | Branch | Exec | Source |
|---|---|---|---|
| 1 | /*************************************** | ||
| 2 | Author : Thibaut Oprinsen | ||
| 3 | Mail : thibaut.oprinsen@lapp.in2p3.fr | ||
| 4 | License : CeCILL-C | ||
| 5 | ****************************************/ | ||
| 6 | |||
| 7 | #include <iostream> | ||
| 8 | #include <fstream> | ||
| 9 | #include "phoenix_assert.h" | ||
| 10 | |||
| 11 | #include "CppTraitFromString.h" | ||
| 12 | #include "CppTraitSetter.h" | ||
| 13 | #include "CppTraitGetter.h" | ||
| 14 | #include "CppTraitCopy.h" | ||
| 15 | #include "CppTraitTypeStream.h" | ||
| 16 | #include "CppTraitDataStream.h" | ||
| 17 | #include "CppTraitConfigStream.h" | ||
| 18 | #include "CppTraitCheckStream.h" | ||
| 19 | |||
| 20 | #include "generator_class_cpp.h" | ||
| 21 | |||
| 22 | ///Test the C++ Trait | ||
| 23 | 1 | void testCppTraitTest(){ | |
| 24 |
1/1✓ Branch 0 (2→3) taken 1 times.
|
1 | ProjectParam projectParam; |
| 25 |
1/1✓ Branch 0 (3→4) taken 1 times.
|
1 | projectParam.name = "TestShadok"; |
| 26 |
3/3✓ Branch 0 (4→5) taken 1 times.
✓ Branch 2 (5→6) taken 1 times.
✓ Branch 4 (6→7) taken 1 times.
|
1 | projectParam.outputSourceDir = PPath("."); |
| 27 |
6/6✓ Branch 0 (9→10) taken 1 times.
✓ Branch 2 (10→11) taken 1 times.
✓ Branch 4 (11→12) taken 1 times.
✓ Branch 6 (12→13) taken 1 times.
✓ Branch 8 (13→14) taken 1 times.
✓ Branch 10 (14→15) taken 1 times.
|
1 | projectParam.outputTestDir = PPath(".") / PPath("TESTS"); |
| 28 | |||
| 29 |
1/1✓ Branch 0 (20→21) taken 1 times.
|
1 | PDataConfig config; |
| 30 |
3/3✓ Branch 0 (21→22) taken 1 times.
✓ Branch 2 (22→23) taken 1 times.
✓ Branch 4 (23→24) taken 1 times.
|
1 | config.setFileName(PPath("ShadokConfig.pdata")); |
| 31 |
1/1✓ Branch 0 (26→27) taken 1 times.
|
1 | PClassConfig enumConfig; |
| 32 |
2/2✓ Branch 0 (27→28) taken 1 times.
✓ Branch 2 (28→29) taken 1 times.
|
1 | enumConfig.setClassDocumentation("///@brief Type of Shadok"); |
| 33 |
1/1✓ Branch 0 (30→31) taken 1 times.
|
1 | enumConfig.setIsEnum(true); |
| 34 |
2/2✓ Branch 0 (31→32) taken 1 times.
✓ Branch 2 (32→33) taken 1 times.
|
1 | enumConfig.setName("ShadokType"); |
| 35 |
5/5✓ Branch 0 (34→35) taken 1 times.
✓ Branch 2 (35→36) taken 1 times.
✓ Branch 4 (36→37) taken 1 times.
✓ Branch 6 (37→38) taken 1 times.
✓ Branch 8 (38→39) taken 1 times.
|
1 | enumConfig.addAttribute(createClassAttribute("", "HAUT")); |
| 36 |
5/5✓ Branch 0 (43→44) taken 1 times.
✓ Branch 2 (44→45) taken 1 times.
✓ Branch 4 (45→46) taken 1 times.
✓ Branch 6 (46→47) taken 1 times.
✓ Branch 8 (47→48) taken 1 times.
|
1 | enumConfig.addAttribute(createClassAttribute("", "BAS")); |
| 37 |
2/2✓ Branch 0 (52→53) taken 1 times.
✓ Branch 2 (53→54) taken 1 times.
|
1 | config.getVecClassConfig().push_back(enumConfig); |
| 38 | |||
| 39 |
1/1✓ Branch 0 (54→55) taken 1 times.
|
1 | PClassConfig classConfig; |
| 40 |
2/2✓ Branch 0 (55→56) taken 1 times.
✓ Branch 2 (56→57) taken 1 times.
|
1 | classConfig.setClassDocumentation("///@brief Test class Shadok"); |
| 41 |
2/2✓ Branch 0 (58→59) taken 1 times.
✓ Branch 2 (59→60) taken 1 times.
|
1 | classConfig.setName("Shadok"); |
| 42 |
5/5✓ Branch 0 (61→62) taken 1 times.
✓ Branch 2 (62→63) taken 1 times.
✓ Branch 4 (63→64) taken 1 times.
✓ Branch 6 (64→65) taken 1 times.
✓ Branch 8 (65→66) taken 1 times.
|
1 | classConfig.addAttribute(createClassAttribute("int", "age", "///Age of the Shadok")); |
| 43 |
5/5✓ Branch 0 (70→71) taken 1 times.
✓ Branch 2 (71→72) taken 1 times.
✓ Branch 4 (72→73) taken 1 times.
✓ Branch 6 (73→74) taken 1 times.
✓ Branch 8 (74→75) taken 1 times.
|
1 | classConfig.addAttribute(createClassAttribute("float", "value", "///Value of the Shadok")); |
| 44 |
5/5✓ Branch 0 (79→80) taken 1 times.
✓ Branch 2 (80→81) taken 1 times.
✓ Branch 4 (81→82) taken 1 times.
✓ Branch 6 (82→83) taken 1 times.
✓ Branch 8 (83→84) taken 1 times.
|
1 | classConfig.addAttribute(createClassAttribute("std::string", "name", "///Name of the Shadok")); |
| 45 |
2/2✓ Branch 0 (88→89) taken 1 times.
✓ Branch 2 (89→90) taken 1 times.
|
1 | config.getVecClassConfig().push_back(classConfig); |
| 46 | |||
| 47 |
1/1✓ Branch 0 (90→91) taken 1 times.
|
1 | projectParam.vecDataConfig.push_back(config); |
| 48 | |||
| 49 | 1 | GeneratorMode & mode = projectParam.mode; | |
| 50 | 1 | mode.enableSetter = true; | |
| 51 | 1 | mode.enableGetter = true; | |
| 52 | 1 | mode.enableCopy = true; | |
| 53 | 1 | mode.enableTypeStream = true; | |
| 54 | 1 | mode.enableDataStream = true; | |
| 55 | 1 | mode.enableConfigStream = true; | |
| 56 | 1 | mode.enableCheckStream = true; | |
| 57 | 1 | mode.enableFromString = true; | |
| 58 | |||
| 59 |
1/1✓ Branch 0 (91→92) taken 1 times.
|
1 | PTraitBackendManager manager; |
| 60 |
1/1✓ Branch 0 (92→93) taken 1 times.
|
1 | manager.addTraitBackend<CppTraitFromString>(); |
| 61 |
1/1✓ Branch 0 (93→94) taken 1 times.
|
1 | manager.addTraitBackend<CppTraitCopy>(); |
| 62 |
1/1✓ Branch 0 (94→95) taken 1 times.
|
1 | manager.addTraitBackend<CppTraitSetter>(); |
| 63 |
1/1✓ Branch 0 (95→96) taken 1 times.
|
1 | manager.addTraitBackend<CppTraitGetter>(); |
| 64 |
1/1✓ Branch 0 (96→97) taken 1 times.
|
1 | manager.addTraitBackend<CppTraitTypeStream>(); |
| 65 |
1/1✓ Branch 0 (97→98) taken 1 times.
|
1 | manager.addTraitBackend<CppTraitDataStream>(); |
| 66 |
1/1✓ Branch 0 (98→99) taken 1 times.
|
1 | manager.addTraitBackend<CppTraitConfigStream>(); |
| 67 |
1/1✓ Branch 0 (99→100) taken 1 times.
|
1 | manager.addTraitBackend<CppTraitCheckStream>(); |
| 68 | |||
| 69 |
5/5✓ Branch 0 (102→103) taken 1 times.
✓ Branch 2 (105→106) taken 1 times.
✓ Branch 4 (108→109) taken 1 times.
✓ Branch 6 (109→110) taken 1 times.
✓ Branch 8 (110→111) taken 1 times.
|
5 | phoenix_assert(generator_class_full(manager, projectParam)); |
| 70 | 1 | } | |
| 71 | |||
| 72 | |||
| 73 | 1 | int main(int argc, char ** argv){ | |
| 74 | 1 | testCppTraitTest(); | |
| 75 | 1 | return 0; | |
| 76 | } | ||
| 77 |