GCC Code Coverage Report


Directory: ./
File: tmp_project/PhoenixOptionParser/TESTS/TEST_ARGPARSER/main.cpp
Date: 2025-03-14 12:04:36
Exec Total Coverage
Lines: 36 36 100.0%
Branches: 41 41 100.0%

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 "phoenix_assert.h"
9 #include "phoenix_check.h"
10 #include "ArgParser.h"
11
12 ///Test the ArgParser
13 1 void testArgParser(){
14
1/1
✓ Branch 1 taken 1 times.
1 ArgParser arg;
15
1/1
✓ Branch 1 taken 1 times.
1 ArgParser arg2(arg);
16
1/1
✓ Branch 1 taken 1 times.
1 ArgParser arg3;
17
1/1
✓ Branch 1 taken 1 times.
1 arg3 = arg;
18
19
1/1
✓ Branch 1 taken 1 times.
1 arg.print();
20
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(arg.getNbArgument() == 0lu);
21
1/1
✓ Branch 1 taken 1 times.
1 arg.rewind();
22 1 }
23
24 ///Test the ArgParser
25 /** @param arg : constant ArgParser to be tested
26 * @return true on success, false otherwise
27 */
28 1 bool testConstGetCurrentOption(const ArgParser & arg){
29 1 return arg.getCurrentOption() != "";
30 }
31
32 ///Test the ArgParser
33 /** @return true on success, false otherwise
34 */
35 2 bool testArgParserArg(int argc, char** argv){
36 2 bool b(true);
37
38
1/1
✓ Branch 1 taken 2 times.
2 ArgParser arg(argc, argv);
39
1/1
✓ Branch 1 taken 2 times.
2 ArgParser arg2(arg);
40
1/1
✓ Branch 1 taken 2 times.
2 ArgParser arg3;
41
1/1
✓ Branch 1 taken 2 times.
2 arg3 = arg;
42
43
1/1
✓ Branch 1 taken 2 times.
2 arg.print();
44
1/1
✓ Branch 1 taken 2 times.
2 b &= arg.getNbArgument() != 0lu;
45
46
3/3
✓ Branch 1 taken 2 times.
✓ Branch 3 taken 1 times.
✓ Branch 4 taken 1 times.
2 if(arg.getNbArgument() != 0lu){
47
1/1
✓ Branch 1 taken 1 times.
1 arg.print();
48
2/2
✓ Branch 1 taken 1 times.
✓ Branch 4 taken 1 times.
1 b &= arg.getCurrentOption() != "";
49
1/1
✓ Branch 1 taken 1 times.
1 b &= testConstGetCurrentOption(arg);
50 }
51
52
1/1
✓ Branch 1 taken 2 times.
2 arg.rewind();
53 2 return b;
54 2 }
55
56 ///Test of getRemainingArgument
57 1 void testRemaningArgument(int argc, char** argv){
58
1/1
✓ Branch 1 taken 1 times.
1 ArgParser arg(argc, argv);
59
5/5
✓ Branch 2 taken 1 times.
✓ Branch 6 taken 1 times.
✓ Branch 10 taken 1 times.
✓ Branch 13 taken 1 times.
✓ Branch 17 taken 1 times.
1 phoenix_assert(arg.getRemainingArgument() == "--option=val");
60 1 }
61
62 1 int main(int argc, char** argv){
63 1 testArgParser();
64
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(testArgParserArg(argc, argv));
65
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(!testArgParserArg(0, argv));
66 1 testRemaningArgument(argc, argv);
67 1 return 0;
68 }
69
70
71