2020#include " cmdlineparser.h"
2121#include " settings.h"
2222#include " redirect.h"
23+ #include " timer.h"
2324
2425class TestCmdlineParser : public TestFixture {
2526public:
@@ -74,6 +75,7 @@ class TestCmdlineParser : public TestFixture {
7475 TEST_CASE (enabledInternal);
7576#endif
7677 TEST_CASE (enabledMultiple);
78+ TEST_CASE (inconclusive);
7779 TEST_CASE (errorExitcode);
7880 TEST_CASE (errorExitcodeMissing);
7981 TEST_CASE (errorExitcodeStr);
@@ -94,6 +96,7 @@ class TestCmdlineParser : public TestFixture {
9496 TEST_CASE (stdposix);
9597 TEST_CASE (stdc99);
9698 TEST_CASE (stdcpp11);
99+ TEST_CASE (platform);
97100 TEST_CASE (suppressionsOld); // TODO: Create and test real suppression file
98101 TEST_CASE (suppressions);
99102 TEST_CASE (suppressionsNoFile);
@@ -112,6 +115,8 @@ class TestCmdlineParser : public TestFixture {
112115 TEST_CASE (xmlver2both2);
113116 TEST_CASE (xmlverunknown);
114117 TEST_CASE (xmlverinvalid);
118+ TEST_CASE (doc);
119+ TEST_CASE (showtime);
115120 TEST_CASE (errorlist1);
116121 TEST_CASE (errorlistverbose1);
117122 TEST_CASE (errorlistverbose2);
@@ -534,6 +539,14 @@ class TestCmdlineParser : public TestFixture {
534539 ASSERT (settings.isEnabled (" missingInclude" ));
535540 }
536541
542+ void inconclusive () {
543+ REDIRECT;
544+ const char *argv[] = {" cppcheck" , " --inconclusive" };
545+ settings.inconclusive = false ;
546+ ASSERT (defParser.ParseFromArgs (2 , argv));
547+ ASSERT_EQUALS (true , settings.inconclusive );
548+ }
549+
537550 void errorExitcode () {
538551 REDIRECT;
539552 const char *argv[] = {" cppcheck" , " --error-exitcode=5" , " file.cpp" };
@@ -690,6 +703,14 @@ class TestCmdlineParser : public TestFixture {
690703 ASSERT (settings.standards .cpp == Standards::CPP11);
691704 }
692705
706+ void platform () {
707+ REDIRECT;
708+ const char *argv[] = {" cppcheck" , " --platform=win64" , " file.cpp" };
709+ settings.platform (Settings::Unspecified);
710+ ASSERT (defParser.ParseFromArgs (3 , argv));
711+ ASSERT (settings.platformType == Settings::Win64);
712+ }
713+
693714 void suppressionsOld () {
694715 // TODO: Fails because there is no suppr.txt file!
695716 REDIRECT;
@@ -858,6 +879,21 @@ class TestCmdlineParser : public TestFixture {
858879 ASSERT_EQUALS (false , defParser.ParseFromArgs (4 , argv));
859880 }
860881
882+ void doc () {
883+ REDIRECT;
884+ const char *argv[] = {" cppcheck" , " --doc" };
885+ ASSERT (defParser.ParseFromArgs (2 , argv));
886+ ASSERT (defParser.ExitAfterPrinting ());
887+ }
888+
889+ void showtime () {
890+ REDIRECT;
891+ const char *argv[] = {" cppcheck" , " --showtime=summary" };
892+ settings._showtime = SHOWTIME_NONE;
893+ ASSERT (defParser.ParseFromArgs (2 , argv));
894+ ASSERT (settings._showtime == SHOWTIME_SUMMARY);
895+ }
896+
861897 void errorlist1 () {
862898 REDIRECT;
863899 const char *argv[] = {" cppcheck" , " --errorlist" };
0 commit comments