PhoenixInkscape  2.0.0
Generate multiple png files with svg inkscape files
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 <iostream>
9 #include "phoenix_assert.h"
10 #include "phoenix_check.h"
11 #include "phoenix_system.h"
12 
14 
21 bool checkOptionCompletion(const PString & program, const PString & partialOption, const PString & prevCursorOption,
22  const PString & cursorOption, const PString & expectedResult)
23 {
24  PString command(program + " __bashcompletionmode=\""+cursorOption+"\" __bashcompletionmodeprev=\""+prevCursorOption+"\" prgName " + partialOption);
25  PString resultCmd(phoenix_popen(command));
26 
27  bool b(phoenix_check("checkOptionCompletion cmd("+command+")", resultCmd, expectedResult));
28  return b;
29 }
30 
33  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_INT, "", "", "", "--value -n --help -h --version -v \n"));
34  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_INT, "-", "", "-", "--value -n --help -h --version -v \n"));
35  //Here we expect mostly '--value --help --version'
36  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_INT, "--", "", "--", "--value --help --version \n"));
37  //Here we expect mostly '--value --version'
38  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_INT, "--v", "", "--v", "--value --version \n"));
39  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_INT, "--value", "--value", "", "INT\n"));
40  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_INT, "--value=42", "", "", "--help -h --version -v \n"));
41 
42  //Let's test the vector of possible values
43  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_VEC_POSSIBLE_VALUE, "", "", "", "--project -p --help -h --version -v \n"));
44  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_VEC_POSSIBLE_VALUE, "--project", "--project", "", "test othervalue lastpossibility\n"));
45 
46  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_VEC_POSSIBLE_VALUE, "--project", "--project", "oth", "othervalue\n"));
47 
48  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_VEC_POSSIBLE_VALUE, "-p", "-p", "", "test othervalue lastpossibility\n"));
49  phoenix_assert(checkOptionCompletion(PROGRAM_OPTION_COMPLETION_VEC_POSSIBLE_VALUE, "--project=test", "", "", "--help -h --version -v \n"));
50 }
51 
52 int main(int argc, char** argv){
54  return 0;
55 }
56 
57 
Extends the std::string.
Definition: PString.h:16
#define phoenix_assert(isOk)
bool phoenix_check(const std::string &testName, const std::string &val, const std::string &reference)
Check two string.
PString phoenix_popen(const PString &command)
Execute the given command and returns the output of this command.
int main(int argc, char **argv)
Definition: main.cpp:290
bool checkOptionCompletion(const PString &program, const PString &partialOption, const PString &prevCursorOption, const PString &cursorOption, const PString &expectedResult)
Check the option completion of a program.
Definition: main.cpp:21
void testCompletion()
Test the completion of the option.
Definition: main.cpp:32