| Line | Branch | Exec | Source |
|---|---|---|---|
| 1 | |||
| 2 | /*************************************** | ||
| 3 | Auteur : Pierre Aubert | ||
| 4 | Mail : pierre.aubert@lapp.in2p3.fr | ||
| 5 | Licence : CeCILL-C | ||
| 6 | ****************************************/ | ||
| 7 | |||
| 8 | #include <iostream> | ||
| 9 | #include "phoenix_assert.h" | ||
| 10 | #include "phoenix_check.h" | ||
| 11 | #include "pxml_utils.h" | ||
| 12 | #include "PParseSeq_utils.h" | ||
| 13 | |||
| 14 | |||
| 15 | ///Check the ParseSeq | ||
| 16 | /** @param fileName : name of the file to be used | ||
| 17 | * @param strToBeParsed : string to be parsed | ||
| 18 | * @param expextedResult : expected result | ||
| 19 | * @return true on success, false otherwise | ||
| 20 | */ | ||
| 21 | 7 | bool checkParseSeq(const PPath & fileName, const PString & strToBeParsed, bool expextedResult){ | |
| 22 | 7 | bool b(true); | |
| 23 |
1/1✓ Branch 0 (2→3) taken 7 times.
|
7 | PXml root; |
| 24 |
1/1✓ Branch 0 (3→4) taken 7 times.
|
7 | b &= pxml_parserFile(root, fileName); |
| 25 | |||
| 26 |
2/2✓ Branch 0 (4→5) taken 7 times.
✓ Branch 2 (5→6) taken 7 times.
|
7 | PXml * xml = pxml_getChildPtr(root, "sequence"); |
| 27 | |||
| 28 |
1/1✓ Branch 0 (7→8) taken 7 times.
|
7 | PParseSeq seq; |
| 29 |
1/1✓ Branch 0 (8→9) taken 7 times.
|
7 | b &= loadParserSeq(seq, *xml); |
| 30 | |||
| 31 |
2/2✓ Branch 0 (9→10) taken 7 times.
✓ Branch 2 (10→11) taken 7 times.
|
7 | b &= pxml_getFullContent(*xml) != ""; |
| 32 | |||
| 33 |
1/1✓ Branch 0 (12→13) taken 7 times.
|
7 | PFileParser parser; |
| 34 |
1/1✓ Branch 0 (13→14) taken 7 times.
|
7 | parser.setFileContent(strToBeParsed); |
| 35 | |||
| 36 |
2/2✓ Branch 0 (14→15) taken 7 times.
✓ Branch 2 (15→16) taken 7 times.
|
7 | b &= (parser.isMatch(seq) != "") == expextedResult; |
| 37 | // phoenix_functionOk("checkParseSeq", b); | ||
| 38 | 7 | return b; | |
| 39 | 7 | } | |
| 40 | |||
| 41 | ///Check the ParseSeq | ||
| 42 | 1 | void checkParseSeqFromVec(){ | |
| 43 | 1 | std::vector<PString> vecStr; | |
| 44 |
2/2✓ Branch 0 (3→4) taken 1 times.
✓ Branch 2 (4→5) taken 1 times.
|
1 | vecStr.push_back("\\begin"); |
| 45 |
2/2✓ Branch 0 (6→7) taken 1 times.
✓ Branch 2 (7→8) taken 1 times.
|
1 | vecStr.push_back("{"); |
| 46 |
2/2✓ Branch 0 (9→10) taken 1 times.
✓ Branch 2 (10→11) taken 1 times.
|
1 | vecStr.push_back("someName"); |
| 47 |
2/2✓ Branch 0 (12→13) taken 1 times.
✓ Branch 2 (13→14) taken 1 times.
|
1 | vecStr.push_back("}"); |
| 48 | |||
| 49 |
1/1✓ Branch 0 (15→16) taken 1 times.
|
1 | PParseSeq seq = createSequenceAllMatch(vecStr); |
| 50 |
2/2✓ Branch 0 (16→17) taken 1 times.
✓ Branch 2 (17→18) taken 1 times.
|
1 | PParseSeq seq2(seq), seq3; |
| 51 |
1/1✓ Branch 0 (18→19) taken 1 times.
|
1 | seq3 = seq; |
| 52 | 1 | } | |
| 53 | |||
| 54 | ///Check the ParseSeq | ||
| 55 | 1 | void checkTestParseSeq(){ | |
| 56 |
2/2✓ Branch 0 (2→3) taken 1 times.
✓ Branch 2 (3→4) taken 1 times.
|
1 | PPath fileName1("testFile1.xml"); |
| 57 |
1/1✓ Branch 0 (5→6) taken 1 times.
|
1 | PString content1("<sequence>\t<step>\n\t<s>1234567890</s>\n\t</step>\n\t<step optional=\"true\">\n\t<s>lu</s>\n\t</step>\n</sequence>\n"); |
| 58 |
5/5✓ Branch 0 (8→9) taken 1 times.
✓ Branch 2 (11→12) taken 1 times.
✓ Branch 4 (14→15) taken 1 times.
✓ Branch 6 (15→16) taken 1 times.
✓ Branch 8 (16→17) taken 1 times.
|
6 | phoenix_assert(fileName1.saveFileContent(content1)); |
| 59 |
6/6✓ Branch 0 (25→26) taken 1 times.
✓ Branch 2 (28→29) taken 1 times.
✓ Branch 4 (31→32) taken 1 times.
✓ Branch 6 (32→33) taken 1 times.
✓ Branch 8 (33→34) taken 1 times.
✓ Branch 10 (34→35) taken 1 times.
|
6 | phoenix_assert(checkParseSeq(fileName1, "24140812", true)); |
| 60 |
6/6✓ Branch 0 (44→45) taken 1 times.
✓ Branch 2 (47→48) taken 1 times.
✓ Branch 4 (50→51) taken 1 times.
✓ Branch 6 (51→52) taken 1 times.
✓ Branch 8 (52→53) taken 1 times.
✓ Branch 10 (53→54) taken 1 times.
|
5 | phoenix_assert(checkParseSeq(fileName1, "2414lu", true)); |
| 61 | |||
| 62 |
2/2✓ Branch 0 (61→62) taken 1 times.
✓ Branch 2 (62→63) taken 1 times.
|
1 | PPath fileName2("testFile2.xml"); |
| 63 |
1/1✓ Branch 0 (64→65) taken 1 times.
|
1 | PString content2("<sequence>\n\t<step>\n\t\t<m>.</m>\n\t</step>\n\t<step>\n\t\t<s>1234567890</s>\n\t</step>\n\t<step optional=\"true\">\n\t\t<s>f</s>\n\t\t\t</step>\n</sequence>\n"); |
| 64 |
5/5✓ Branch 0 (67→68) taken 1 times.
✓ Branch 2 (70→71) taken 1 times.
✓ Branch 4 (73→74) taken 1 times.
✓ Branch 6 (74→75) taken 1 times.
✓ Branch 8 (75→76) taken 1 times.
|
6 | phoenix_assert(fileName2.saveFileContent(content2)); |
| 65 |
6/6✓ Branch 0 (84→85) taken 1 times.
✓ Branch 2 (87→88) taken 1 times.
✓ Branch 4 (90→91) taken 1 times.
✓ Branch 6 (91→92) taken 1 times.
✓ Branch 8 (92→93) taken 1 times.
✓ Branch 10 (93→94) taken 1 times.
|
6 | phoenix_assert(checkParseSeq(fileName2, ".124", true)); |
| 66 |
6/6✓ Branch 0 (103→104) taken 1 times.
✓ Branch 2 (106→107) taken 1 times.
✓ Branch 4 (109→110) taken 1 times.
✓ Branch 6 (110→111) taken 1 times.
✓ Branch 8 (111→112) taken 1 times.
✓ Branch 10 (112→113) taken 1 times.
|
6 | phoenix_assert(checkParseSeq(fileName2, ".12f", true)); |
| 67 |
6/6✓ Branch 0 (122→123) taken 1 times.
✓ Branch 2 (125→126) taken 1 times.
✓ Branch 4 (128→129) taken 1 times.
✓ Branch 6 (129→130) taken 1 times.
✓ Branch 8 (130→131) taken 1 times.
✓ Branch 10 (131→132) taken 1 times.
|
5 | phoenix_assert(checkParseSeq(fileName2, "2414lu", false)); |
| 68 | |||
| 69 |
2/2✓ Branch 0 (139→140) taken 1 times.
✓ Branch 2 (140→141) taken 1 times.
|
1 | PPath fileName3("testFile3.xml"); |
| 70 |
1/1✓ Branch 0 (142→143) taken 1 times.
|
1 | PString content3("<sequence>\n\t<step>\n\t\t<m>0x</m>\n\t</step>\n\t<step>\n\t\t<s>1234567890abcdef</s>\n\t</step>\n</sequence>\n"); |
| 71 |
5/5✓ Branch 0 (145→146) taken 1 times.
✓ Branch 2 (148→149) taken 1 times.
✓ Branch 4 (151→152) taken 1 times.
✓ Branch 6 (152→153) taken 1 times.
✓ Branch 8 (153→154) taken 1 times.
|
6 | phoenix_assert(fileName3.saveFileContent(content3)); |
| 72 |
6/6✓ Branch 0 (162→163) taken 1 times.
✓ Branch 2 (165→166) taken 1 times.
✓ Branch 4 (168→169) taken 1 times.
✓ Branch 6 (169→170) taken 1 times.
✓ Branch 8 (170→171) taken 1 times.
✓ Branch 10 (171→172) taken 1 times.
|
6 | phoenix_assert(checkParseSeq(fileName3, "0x124ef", true)); |
| 73 |
6/6✓ Branch 0 (181→182) taken 1 times.
✓ Branch 2 (184→185) taken 1 times.
✓ Branch 4 (187→188) taken 1 times.
✓ Branch 6 (188→189) taken 1 times.
✓ Branch 8 (189→190) taken 1 times.
✓ Branch 10 (190→191) taken 1 times.
|
5 | phoenix_assert(checkParseSeq(fileName3, "0xa2b5e2f", true)); |
| 74 |
1/1✓ Branch 0 (198→199) taken 1 times.
|
1 | checkParseSeqFromVec(); |
| 75 | 1 | } | |
| 76 | |||
| 77 | ///Check the ParseCmd | ||
| 78 | 1 | void checkPParseCmd(){ | |
| 79 |
1/1✓ Branch 0 (2→3) taken 1 times.
|
1 | PParseCmd cmd; |
| 80 |
5/5✓ Branch 0 (5→6) taken 1 times.
✓ Branch 2 (8→9) taken 1 times.
✓ Branch 4 (11→12) taken 1 times.
✓ Branch 6 (12→13) taken 1 times.
✓ Branch 8 (13→14) taken 1 times.
|
6 | phoenix_assert(!cmd.getIsMatch()); |
| 81 |
6/6✓ Branch 0 (22→23) taken 1 times.
✓ Branch 2 (25→26) taken 1 times.
✓ Branch 4 (28→29) taken 1 times.
✓ Branch 6 (29→30) taken 1 times.
✓ Branch 8 (30→31) taken 1 times.
✓ Branch 10 (31→32) taken 1 times.
|
5 | phoenix_assert(cmd.getStr() == ""); |
| 82 |
1/1✓ Branch 0 (38→39) taken 1 times.
|
1 | PParseCmd cmd2; |
| 83 |
1/1✓ Branch 0 (39→40) taken 1 times.
|
1 | cmd2 = cmd; |
| 84 | 1 | } | |
| 85 | |||
| 86 | ///Check the ParseCmd | ||
| 87 | 1 | void testPParseStep(){ | |
| 88 |
1/1✓ Branch 0 (2→3) taken 1 times.
|
1 | PParseStep step; |
| 89 | 1 | std::vector<PParseCmd> vecCmd; | |
| 90 |
1/1✓ Branch 0 (4→5) taken 1 times.
|
1 | step.setVecCmd(vecCmd); |
| 91 | |||
| 92 |
5/5✓ Branch 0 (7→8) taken 1 times.
✓ Branch 2 (10→11) taken 1 times.
✓ Branch 4 (13→14) taken 1 times.
✓ Branch 6 (14→15) taken 1 times.
✓ Branch 8 (15→16) taken 1 times.
|
5 | phoenix_assert(!step.getIsOptional()); |
| 93 | |||
| 94 |
1/1✓ Branch 0 (22→23) taken 1 times.
|
1 | PParseSeq seq; |
| 95 | 1 | std::vector<PParseStep> vecStep; | |
| 96 |
1/1✓ Branch 0 (24→25) taken 1 times.
|
1 | seq.setVecStep(vecStep); |
| 97 | 1 | } | |
| 98 | |||
| 99 | 1 | int main(int argc, char** argv){ | |
| 100 | 1 | checkTestParseSeq(); | |
| 101 | 1 | checkPParseCmd(); | |
| 102 | 1 | testPParseStep(); | |
| 103 | 1 | return 0; | |
| 104 | } | ||
| 105 | |||
| 106 | |||
| 107 |