Skip to content

Commit d3c841d

Browse files
committed
TestOther: cleaned up Settings objects
1 parent d275ee4 commit d3c841d

1 file changed

Lines changed: 19 additions & 29 deletions

File tree

test/testother.cpp

Lines changed: 19 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,9 @@ class TestOther : public TestFixture {
4343
TestOther() : TestFixture("TestOther") {}
4444

4545
private:
46-
/*const*/ Settings _settings = settingsBuilder().library("std.cfg").build();
46+
const Settings settings0 = settingsBuilder().library("std.cfg").build();
47+
/*const*/ Settings settings1 = settingsBuilder().library("std.cfg").severity(Severity::style).severity(Severity::warning).severity(Severity::portability).severity(Severity::performance).build();
48+
const Settings settings2 = settingsBuilder(settings1).certainty(Certainty::inconclusive).build();
4749

4850
void run() override {
4951
mNewTemplate = true;
@@ -341,17 +343,15 @@ class TestOther : public TestFixture {
341343
// TODO: do not modify object passed into
342344
Settings* settings;
343345
if (!opt.settings) {
344-
settings = &_settings;
346+
settings = &settings1;
345347
}
346348
else {
347349
settings = opt.settings;
350+
settings->severity.enable(Severity::style);
351+
settings->severity.enable(Severity::warning);
352+
settings->severity.enable(Severity::portability);
353+
settings->severity.enable(Severity::performance);
348354
}
349-
settings->severity.enable(Severity::style);
350-
settings->severity.enable(Severity::warning);
351-
settings->severity.enable(Severity::portability);
352-
settings->severity.enable(Severity::performance);
353-
settings->standards.c = Standards::CLatest;
354-
settings->standards.cpp = Standards::CPPLatest;
355355
settings->certainty.setEnabled(Certainty::inconclusive, opt.inconclusive);
356356
settings->verbose = opt.verbose;
357357

@@ -372,17 +372,7 @@ class TestOther : public TestFixture {
372372
#define checkP(...) checkP_(__FILE__, __LINE__, __VA_ARGS__)
373373
template<size_t size>
374374
void checkP_(const char* file, int line, const char (&code)[size], const CheckPOptions& options = make_default_obj()) {
375-
// TODO: do not modify passed in object
376-
Settings* settings = &_settings;
377-
settings->severity.enable(Severity::style);
378-
settings->severity.enable(Severity::warning);
379-
settings->severity.enable(Severity::portability);
380-
settings->severity.enable(Severity::performance);
381-
settings->standards.c = Standards::CLatest;
382-
settings->standards.cpp = Standards::CPPLatest;
383-
settings->certainty.enable(Certainty::inconclusive);
384-
385-
SimpleTokenizer2 tokenizer(*settings, *this, code, options.cpp ? "test.cpp" : "test.c");
375+
SimpleTokenizer2 tokenizer(settings2, *this, code, options.cpp ? "test.cpp" : "test.c");
386376

387377
// Tokenizer..
388378
ASSERT_LOC(tokenizer.simplifyTokens1(""), file, line);
@@ -2556,7 +2546,7 @@ class TestOther : public TestFixture {
25562546
"}\n");
25572547
ASSERT_EQUALS("[test.cpp:1:42]: (performance) Function parameter 't' should be passed by const reference. [passedByValue]\n", errout_str());
25582548

2559-
/*const*/ Settings settings0 = settingsBuilder(_settings).platform(Platform::Type::Unix64).build();
2549+
/*const*/ Settings settingsUnix64 = settingsBuilder(settings0).platform(Platform::Type::Unix64).build();
25602550
check("struct S {\n" // #12138
25612551
" union {\n"
25622552
" int a = 0;\n"
@@ -2573,7 +2563,7 @@ class TestOther : public TestFixture {
25732563
"};\n"
25742564
"void f(S s) {\n"
25752565
" if (s.x > s.y) {}\n"
2576-
"}\n", dinit(CheckOptions, $.settings = &settings0));
2566+
"}\n", dinit(CheckOptions, $.settings = &settingsUnix64));
25772567
ASSERT_EQUALS("", errout_str());
25782568

25792569
check("struct S { std::list<int> l; };\n" // #12147
@@ -2613,10 +2603,10 @@ class TestOther : public TestFixture {
26132603
check("void f(const std::array<int, 10> a[]) {}\n"); // #13524
26142604
ASSERT_EQUALS("", errout_str());
26152605

2616-
/*const*/ Settings settings1 = settingsBuilder().platform(Platform::Type::Win64).build();
2606+
/*const*/ Settings settingsWin64 = settingsBuilder().platform(Platform::Type::Win64).build();
26172607
check("using ui64 = unsigned __int64;\n"
26182608
"ui64 Test(ui64 one, ui64 two) { return one + two; }\n",
2619-
dinit(CheckOptions, $.settings = &settings1));
2609+
dinit(CheckOptions, $.settings = &settingsWin64));
26202610
ASSERT_EQUALS("", errout_str());
26212611
}
26222612

@@ -2760,11 +2750,11 @@ class TestOther : public TestFixture {
27602750
"};\n"
27612751
"void f(X x) {}";
27622752

2763-
/*const*/ Settings s32 = settingsBuilder(_settings).platform(Platform::Type::Unix32).build();
2753+
/*const*/ Settings s32 = settingsBuilder(settings0).platform(Platform::Type::Unix32).build();
27642754
check(code, dinit(CheckOptions, $.settings = &s32));
27652755
ASSERT_EQUALS("[test.cpp:5:10]: (performance) Function parameter 'x' should be passed by const reference. [passedByValue]\n", errout_str());
27662756

2767-
/*const*/ Settings s64 = settingsBuilder(_settings).platform(Platform::Type::Unix64).build();
2757+
/*const*/ Settings s64 = settingsBuilder(settings0).platform(Platform::Type::Unix64).build();
27682758
check(code, dinit(CheckOptions, $.settings = &s64));
27692759
ASSERT_EQUALS("", errout_str());
27702760
}
@@ -8064,7 +8054,7 @@ class TestOther : public TestFixture {
80648054
const char code[] = "void foo(bool flag) {\n"
80658055
" bar( (flag) ? ~0u : ~0ul);\n"
80668056
"}";
8067-
/*const*/ Settings settings = _settings;
8057+
/*const*/ Settings settings = settings0;
80688058
settings.platform.sizeof_int = 4;
80698059
settings.platform.int_bit = 32;
80708060

@@ -9024,12 +9014,12 @@ class TestOther : public TestFixture {
90249014
ASSERT_EQUALS("[test.cpp:3:13]: (style) Checking if unsigned expression 'value' is less than zero. [unsignedLessThanZero]\n", errout_str());
90259015

90269016
// #9040
9027-
/*const*/ Settings settings1 = settingsBuilder().platform(Platform::Type::Win64).build();
9017+
/*const*/ Settings settingsWin64 = settingsBuilder().platform(Platform::Type::Win64).build();
90289018
check("using BOOL = unsigned;\n"
90299019
"int i;\n"
90309020
"bool f() {\n"
90319021
" return i >= 0;\n"
9032-
"}\n", dinit(CheckOptions, $.settings = &settings1));
9022+
"}\n", dinit(CheckOptions, $.settings = &settingsWin64));
90339023
ASSERT_EQUALS("", errout_str());
90349024

90359025
// #10612
@@ -11846,7 +11836,7 @@ class TestOther : public TestFixture {
1184611836
"}");
1184711837
ASSERT_EQUALS("[test.cpp:2:22]: (error) Expression '~(-(++i))+i' depends on order of evaluation of side effects [unknownEvaluationOrder]\n", errout_str());
1184811838

11849-
const Settings settings11 = settingsBuilder(_settings).cpp(Standards::CPP11).certainty(Certainty::inconclusive).build();
11839+
const Settings settings11 = settingsBuilder(settings0).cpp(Standards::CPP11).certainty(Certainty::inconclusive).build();
1185011840

1185111841
checkCustomSettings("void f(int i) {\n"
1185211842
" i = i++ + 2;\n"

0 commit comments

Comments
 (0)