@@ -116,23 +116,11 @@ class TestCmdlineParser : public TestFixture {
116116 logger->destroy ();
117117 }
118118
119- class AsPremium {
120- public:
121- AsPremium (Settings* settings) : settings(settings), productName(settings->cppcheckCfgProductName), premium(settings->premium)
122- {
123- // set this so we think it is the premium
124- settings->cppcheckCfgProductName = " Cppcheck Premium 0.0.0" ;
125- settings->premium = true ;
126- }
127- ~AsPremium () {
128- settings->cppcheckCfgProductName = productName;
129- settings->premium = premium;
130- }
131- private:
132- Settings* const settings;
133- const std::string productName;
134- const bool premium;
135- };
119+ void asPremium () {
120+ // set this so we think it is the premium
121+ settings->cppcheckCfgProductName = " Cppcheck Premium 0.0.0" ;
122+ settings->premium = true ;
123+ }
136124
137125 template <size_t size>
138126 CmdLineParser::Result parseFromArgs (const char * const (&argv)[size]) {
@@ -1546,7 +1534,7 @@ class TestCmdlineParser : public TestFixture {
15461534
15471535 void premiumOptions1 () {
15481536 REDIRECT;
1549- AsPremium asPremium (settings. get () );
1537+ asPremium ();
15501538 const char * const argv[] = {" cppcheck" , " --premium=autosar" , " file.c" };
15511539 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
15521540 ASSERT (settings->severity .isEnabled (Severity::error));
@@ -1555,7 +1543,7 @@ class TestCmdlineParser : public TestFixture {
15551543
15561544 void premiumOptions2 () {
15571545 REDIRECT;
1558- AsPremium asPremium (settings. get () );
1546+ asPremium ();
15591547 const char * const argv[] = {" cppcheck" , " --premium=misra-c-2012" , " file.c" };
15601548 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
15611549 ASSERT (settings->severity .isEnabled (Severity::error));
@@ -1564,7 +1552,7 @@ class TestCmdlineParser : public TestFixture {
15641552
15651553 void premiumOptions3 () {
15661554 REDIRECT;
1567- AsPremium asPremium (settings. get () );
1555+ asPremium ();
15681556 const char * const argv[] = {" cppcheck" , " --premium=misra-c++-2023" , " file.c" };
15691557 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
15701558 ASSERT (settings->severity .isEnabled (Severity::error));
@@ -1573,7 +1561,7 @@ class TestCmdlineParser : public TestFixture {
15731561
15741562 void premiumOptions4 () {
15751563 REDIRECT;
1576- AsPremium asPremium (settings. get () );
1564+ asPremium ();
15771565 const char * const argv[] = {" cppcheck" , " --premium=cert-c++-2016" , " file.c" };
15781566 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
15791567 ASSERT (settings->severity .isEnabled (Severity::error));
@@ -1582,7 +1570,7 @@ class TestCmdlineParser : public TestFixture {
15821570
15831571 void premiumOptions5 () {
15841572 REDIRECT;
1585- AsPremium asPremium (settings. get () );
1573+ asPremium ();
15861574 const char * const argv[] = {" cppcheck" , " --premium=safety" , " file.c" };
15871575 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
15881576 ASSERT (settings->severity .isEnabled (Severity::error));
@@ -1591,7 +1579,7 @@ class TestCmdlineParser : public TestFixture {
15911579
15921580 void premiumOptionsAll () {
15931581 REDIRECT;
1594- AsPremium asPremium (settings. get () );
1582+ asPremium ();
15951583 const char * const argv[] = {
15961584 " cppcheck" ,
15971585 " --premium=autosar:all" ,
@@ -1608,7 +1596,7 @@ class TestCmdlineParser : public TestFixture {
16081596
16091597 void premiumOptionsMetrics () {
16101598 REDIRECT;
1611- AsPremium asPremium (settings. get () );
1599+ asPremium ();
16121600 const char * const argv[] = {" cppcheck" , " --premium=metrics" , " file.c" };
16131601 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
16141602 ASSERT_EQUALS (" --metrics" , settings->premiumArgs );
@@ -1619,47 +1607,47 @@ class TestCmdlineParser : public TestFixture {
16191607
16201608 void premiumOptionsCertCIntPrecision () {
16211609 REDIRECT;
1622- AsPremium asPremium (settings. get () );
1610+ asPremium ();
16231611 const char * const argv[] = {" cppcheck" , " --premium-cert-c-int-precision=12" , " file.c" };
16241612 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
16251613 ASSERT_EQUALS (" --cert-c-int-precision=12" , settings->premiumArgs );
16261614 }
16271615
16281616 void premiumOptionsLicenseFile () {
16291617 REDIRECT;
1630- AsPremium asPremium (settings. get () );
1618+ asPremium ();
16311619 const char * const argv[] = {" cppcheck" , " --premium-license-file=file.lic" , " file.c" };
16321620 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
16331621 ASSERT_EQUALS (" --license-file=file.lic" , settings->premiumArgs );
16341622 }
16351623
16361624 void premiumOptionsInvalid1 () {
16371625 REDIRECT;
1638- AsPremium asPremium (settings. get () );
1626+ asPremium ();
16391627 const char * const argv[] = {" cppcheck" , " --premium=misra" , " file.c" };
16401628 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Fail, parseFromArgs (argv));
16411629 ASSERT_EQUALS (" cppcheck: error: invalid --premium option 'misra'.\n " , logger->str ());
16421630 }
16431631
16441632 void premiumOptionsInvalid2 () {
16451633 REDIRECT;
1646- AsPremium asPremium (settings. get () );
1634+ asPremium ();
16471635 const char * const argv[] = {" cppcheck" , " --premium=cert" , " file.c" };
16481636 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Fail, parseFromArgs (argv));
16491637 ASSERT_EQUALS (" cppcheck: error: invalid --premium option 'cert'.\n " , logger->str ());
16501638 }
16511639
16521640 void premiumSafety () {
16531641 REDIRECT;
1654- AsPremium asPremium (settings. get () );
1642+ asPremium ();
16551643 const char * const argv[] = {" cppcheck" , " --premium=safety" , " file.cpp" };
16561644 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
16571645 ASSERT_EQUALS (true , settings->safety );
16581646 }
16591647
16601648 void premiumDebugProgress () {
16611649 REDIRECT;
1662- AsPremium asPremium (settings. get () );
1650+ asPremium ();
16631651 const char * const argv[] = {" cppcheck" , " --premium=debug-progress" , " file.cpp" };
16641652 ASSERT_EQUALS_ENUM (CmdLineParser::Result::Success, parseFromArgs (argv));
16651653 ASSERT_EQUALS (" --debug-progress" , settings->premiumArgs );
0 commit comments