PhoenixMock
1.8.7
Tools to split/merge/print mock used in Phoenix
main.cpp
Go to the documentation of this file.
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 "
OptionParser.h
"
11
13
15
OptionParser
createOptionParser
(){
16
OptionParser
parser
(
true
,
"1.0.0"
);
17
parser
.addMode(
"class"
);
18
parser
.addOption(
"name"
,
"n"
,
OptionType::FILENAME
,
true
,
"base name of the file to be created"
);
19
std::string templateDef(
""
);
20
parser
.addOption(
"template"
,
"t"
, templateDef,
"template definition of the class (ex: 'typename T' or 'typename T, typename U', etc"
);
21
parser
.closeMode();
22
23
parser
.addMode(
"source"
);
24
parser
.addOption(
"name"
,
"n"
,
OptionType::STRING
,
true
,
"base name of the file to be created"
);
25
parser
.closeMode();
26
return
parser
;
27
}
28
30
32
void
printConstParser
(
const
OptionParser
&
parser
){
33
const
OptionMode
& noneMode =
parser
.getMode(
"class"
);
34
noneMode.
print
();
35
const
OptionMode
& defaultMode =
parser
.getDefaultMode();
36
defaultMode.
print
();
37
}
38
39
int
main
(
int
argc,
char
** argv){
40
OptionParser
parser
=
createOptionParser
();
41
parser
.print();
42
parser
.parseArgument(argc, argv);
43
printConstParser
(
parser
);
44
const
OptionMode
& classMode =
parser
.getMode(
"class"
);
45
const
OptionMode
& sourceMode =
parser
.getMode(
"source"
);
46
47
if
(classMode.
isParsed
()){
//We are using the class mode
48
std::cout <<
"Class mode activated"
<< std::endl;
49
std::string className(
""
);
50
classMode.
getValue
(className,
"name"
);
51
std::cout <<
"name of the class to be generated : '"
<< className <<
"'"
<< std::endl;
52
53
phoenix_assert
(
phoenix_check
(
"Check class name"
, className,
"classname"
));
54
}
55
56
if
(sourceMode.
isParsed
()){
//We are using the source mode
57
std::cout <<
"Source mode activated"
<< std::endl;
58
std::string fileName(
""
);
59
sourceMode.
getValue
(fileName,
"name"
);
60
std::cout <<
"name of the header/source files to be generated : "
<< fileName <<
"'"
<< std::endl;
61
62
phoenix_assert
(
phoenix_check
(
"Check file name"
, fileName,
"sourcename"
));
63
}
64
return
0;
65
}
66
67
OptionType::STRING
@ STRING
Definition:
OptionType.h:25
OptionMode::getValue
bool getValue(T &value, const std::string &optionName) const
Get the value of the option.
Definition:
OptionMode_impl.h:18
OptionMode::print
void print() const
Print the option of the mode.
Definition:
OptionMode.cpp:104
phoenix_check
bool phoenix_check(const std::string &testName, const std::string &val, const std::string &reference)
Check two string.
Definition:
phoenix_check.cpp:17
createReleaseCurl.parser
parser
Definition:
createReleaseCurl.py:123
OptionParser
Parse the options passed to a program.
Definition:
OptionParser.h:15
OptionMode::isParsed
bool isParsed() const
Say if the OptionMode contains option which are parsed.
Definition:
OptionMode.cpp:187
phoenix_assert
#define phoenix_assert(isOk)
Definition:
phoenix_assert.h:19
OptionParser.h
createOptionParser
OptionParser createOptionParser()
Create the OptionParser of this program.
Definition:
main.cpp:13
phoenix_assert.h
main
int main(int argc, char **argv)
Definition:
main.cpp:85
printConstParser
void printConstParser(const OptionParser &parser)
Do the same thing but with a const parser.
Definition:
main.cpp:32
OptionMode
Describe a mode in the program arguments.
Definition:
OptionMode.h:13
OptionType::FILENAME
@ FILENAME
Definition:
OptionType.h:26
phoenix_check.h
tmp_project
OptionParser
TESTS
TEST_ParserModeBase
main.cpp
Generated on Mon Dec 9 2024 15:33:41 for PhoenixMock by
1.8.17