Skip to content

Commit 0662d50

Browse files
committed
first round of SettingsBuilder usage in tests
1 parent 6a7230e commit 0662d50

37 files changed

+166
-375
lines changed

test/test64bit.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,9 @@ class Test64BitPortability : public TestFixture {
3030
Test64BitPortability() : TestFixture("Test64BitPortability") {}
3131

3232
private:
33-
Settings settings;
33+
const Settings settings = settingsBuilder().severity(Severity::portability).library("std.cfg").build();
3434

3535
void run() override {
36-
settings.severity.enable(Severity::portability);
37-
3836
TEST_CASE(novardecl);
3937
TEST_CASE(functionpar);
4038
TEST_CASE(structmember);
@@ -51,7 +49,6 @@ class Test64BitPortability : public TestFixture {
5149

5250
// Tokenize..
5351
Tokenizer tokenizer(&settings, this);
54-
LOAD_LIB_2(settings.library, "std.cfg");
5552
std::istringstream istr(code);
5653
ASSERT_LOC(tokenizer.tokenize(istr, "test.cpp"), file, line);
5754

test/testassert.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ class TestAssert : public TestFixture {
3232
TestAssert() : TestFixture("TestAssert") {}
3333

3434
private:
35-
Settings settings;
35+
const Settings settings = settingsBuilder().severity(Severity::warning).build();
3636

3737
#define check(...) check_(__FILE__, __LINE__, __VA_ARGS__)
3838
void check_(const char* file, int line, const char code[], const char *filename = "test.cpp") {
@@ -49,8 +49,6 @@ class TestAssert : public TestFixture {
4949
}
5050

5151
void run() override {
52-
settings.severity.enable(Severity::warning);
53-
5452
TEST_CASE(assignmentInAssert);
5553
TEST_CASE(functionCallInAssert);
5654
TEST_CASE(memberFunctionCallInAssert);

test/testautovariables.cpp

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,30 +32,24 @@ class TestAutoVariables : public TestFixture {
3232
TestAutoVariables() : TestFixture("TestAutoVariables") {}
3333

3434
private:
35-
Settings settings;
35+
const Settings settings = settingsBuilder().severity(Severity::warning).severity(Severity::style).library("std.cfg").library("qt.cfg").build();
3636

3737
#define check(...) check_(__FILE__, __LINE__, __VA_ARGS__)
3838
void check_(const char* file, int line, const char code[], bool inconclusive = true, const char* filename = "test.cpp") {
3939
// Clear the error buffer..
4040
errout.str("");
4141

42-
settings.certainty.setEnabled(Certainty::inconclusive, inconclusive);
42+
const Settings settings1 = settingsBuilder(settings).certainty(Certainty::inconclusive, inconclusive).build();
4343

4444
// Tokenize..
45-
Tokenizer tokenizer(&settings, this);
45+
Tokenizer tokenizer(&settings1, this);
4646
std::istringstream istr(code);
4747
ASSERT_LOC(tokenizer.tokenize(istr, filename), file, line);
4848

49-
runChecks<CheckAutoVariables>(&tokenizer, &settings, this);
49+
runChecks<CheckAutoVariables>(&tokenizer, &settings1, this);
5050
}
5151

5252
void run() override {
53-
settings.severity.enable(Severity::warning);
54-
settings.severity.enable(Severity::style);
55-
LOAD_LIB_2(settings.library, "std.cfg");
56-
LOAD_LIB_2(settings.library, "qt.cfg");
57-
settings.libraries.emplace_back("qt");
58-
5953
TEST_CASE(testautovar1);
6054
TEST_CASE(testautovar2);
6155
TEST_CASE(testautovar3); // ticket #2925

test/testbool.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,9 @@ class TestBool : public TestFixture {
3131
TestBool() : TestFixture("TestBool") {}
3232

3333
private:
34-
Settings settings;
34+
const Settings settings = settingsBuilder().severity(Severity::style).severity(Severity::warning).certainty(Certainty::inconclusive).build();
3535

3636
void run() override {
37-
settings.severity.enable(Severity::style);
38-
settings.severity.enable(Severity::warning);
39-
settings.certainty.enable(Certainty::inconclusive);
40-
4137
TEST_CASE(bitwiseOnBoolean); // if (bool & bool)
4238
TEST_CASE(incrementBoolean);
4339
TEST_CASE(assignBoolToPointer);

test/testboost.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,9 @@ class TestBoost : public TestFixture {
3131
TestBoost() : TestFixture("TestBoost") {}
3232

3333
private:
34-
Settings settings;
34+
const Settings settings = settingsBuilder().severity(Severity::style).severity(Severity::performance).build();
3535

3636
void run() override {
37-
settings.severity.enable(Severity::style);
38-
settings.severity.enable(Severity::performance);
39-
4037
TEST_CASE(BoostForeachContainerModification);
4138
}
4239

test/testbufferoverrun.cpp

Lines changed: 15 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -42,22 +42,22 @@ class TestBufferOverrun : public TestFixture {
4242
TestBufferOverrun() : TestFixture("TestBufferOverrun") {}
4343

4444
private:
45-
Settings settings0;
45+
Settings settings0 = settingsBuilder().library("std.cfg").severity(Severity::warning).severity(Severity::style).severity(Severity::portability).build();
4646

4747
#define check(...) check_(__FILE__, __LINE__, __VA_ARGS__)
4848
void check_(const char* file, int line, const char code[], const char filename[] = "test.cpp") {
4949
// Clear the error buffer..
5050
errout.str("");
5151

52-
settings0.certainty.enable(Certainty::inconclusive);
52+
const Settings settings = settingsBuilder(settings0).certainty(Certainty::inconclusive).build();
5353

5454
// Tokenize..
55-
Tokenizer tokenizer(&settings0, this);
55+
Tokenizer tokenizer(&settings, this);
5656
std::istringstream istr(code);
5757
ASSERT_LOC(tokenizer.tokenize(istr, filename), file, line);
5858

5959
// Check for buffer overruns..
60-
runChecks<CheckBufferOverrun>(&tokenizer, &settings0, this);
60+
runChecks<CheckBufferOverrun>(&tokenizer, &settings, this);
6161
}
6262

6363
void check_(const char* file, int line, const char code[], const Settings &settings, const char filename[] = "test.cpp") {
@@ -77,14 +77,14 @@ class TestBufferOverrun : public TestFixture {
7777
// Clear the error buffer..
7878
errout.str("");
7979

80-
Settings* settings = &settings0;
81-
settings->severity.enable(Severity::style);
82-
settings->severity.enable(Severity::warning);
83-
settings->severity.enable(Severity::portability);
84-
settings->severity.enable(Severity::performance);
85-
settings->standards.c = Standards::CLatest;
86-
settings->standards.cpp = Standards::CPPLatest;
87-
settings->certainty.enable(Certainty::inconclusive);
80+
Settings settings = settings0;
81+
settings.severity.enable(Severity::style);
82+
settings.severity.enable(Severity::warning);
83+
settings.severity.enable(Severity::portability);
84+
settings.severity.enable(Severity::performance);
85+
settings.standards.c = Standards::CLatest;
86+
settings.standards.cpp = Standards::CPPLatest;
87+
settings.certainty.enable(Certainty::inconclusive);
8888

8989
// Raw tokens..
9090
std::vector<std::string> files(1, filename);
@@ -97,21 +97,15 @@ class TestBufferOverrun : public TestFixture {
9797
simplecpp::preprocess(tokens2, tokens1, files, filedata, simplecpp::DUI());
9898

9999
// Tokenizer..
100-
Tokenizer tokenizer(settings, this);
100+
Tokenizer tokenizer(&settings, this);
101101
tokenizer.createTokens(std::move(tokens2));
102102
tokenizer.simplifyTokens1("");
103103

104104
// Check for buffer overruns..
105-
runChecks<CheckBufferOverrun>(&tokenizer, settings, this);
105+
runChecks<CheckBufferOverrun>(&tokenizer, &settings, this);
106106
}
107107

108108
void run() override {
109-
LOAD_LIB_2(settings0.library, "std.cfg");
110-
111-
settings0.severity.enable(Severity::warning);
112-
settings0.severity.enable(Severity::style);
113-
settings0.severity.enable(Severity::portability);
114-
115109
TEST_CASE(noerr1);
116110
TEST_CASE(noerr2);
117111
TEST_CASE(noerr3);
@@ -5510,9 +5504,7 @@ class TestBufferOverrun : public TestFixture {
55105504

55115505
void checkPipeParameterSize() { // #3521
55125506

5513-
Settings settings;
5514-
LOAD_LIB_2(settings.library, "posix.cfg");
5515-
settings.libraries.emplace_back("posix");
5507+
const Settings settings = settingsBuilder().library("posix.cfg").build();
55165508

55175509
check("void f(){\n"
55185510
"int pipefd[1];\n" // <-- array of two integers is needed

test/testcharvar.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,10 @@ class TestCharVar : public TestFixture {
3131
TestCharVar() : TestFixture("TestCharVar") {}
3232

3333
private:
34-
Settings settings;
34+
Settings settings = settingsBuilder().severity(Severity::warning).severity(Severity::portability).build();
3535

3636
void run() override {
3737
PLATFORM(settings.platform, cppcheck::Platform::Type::Unspecified);
38-
settings.severity.enable(Severity::warning);
39-
settings.severity.enable(Severity::portability);
4038

4139
TEST_CASE(array_index_1);
4240
TEST_CASE(array_index_2);

test/testclangimport.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -137,8 +137,7 @@ class TestClangImport : public TestFixture {
137137
}
138138

139139
std::string parse(const char clang[]) {
140-
Settings settings;
141-
settings.clang = true;
140+
const Settings settings = settingsBuilder().clang().build();
142141
Tokenizer tokenizer(&settings, this);
143142
std::istringstream istr(clang);
144143
clangimport::parseClangAstDump(&tokenizer, istr);
@@ -1049,8 +1048,7 @@ class TestClangImport : public TestFixture {
10491048

10501049

10511050
#define GET_SYMBOL_DB(AST) \
1052-
Settings settings; \
1053-
settings.clang = true; \
1051+
Settings settings = settingsBuilder().clang().build(); \
10541052
{ \
10551053
std::string errstr; \
10561054
ASSERT_EQUALS_MSG(true, settings.platform.set("unix64", errstr, {exename.c_str()}), errstr); \

test/testclass.cpp

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,10 @@ class TestClass : public TestFixture {
3636
TestClass() : TestFixture("TestClass") {}
3737

3838
private:
39-
Settings settings0;
40-
Settings settings1;
39+
Settings settings0 = settingsBuilder().severity(Severity::style).build();
40+
Settings settings1 = settingsBuilder().severity(Severity::warning).build();
4141

4242
void run() override {
43-
settings0.severity.enable(Severity::style);
44-
settings1.severity.enable(Severity::warning);
45-
4643
// Load std.cfg configuration
4744
{
4845
const char xmldata[] = "<?xml version=\"1.0\"?>\n"
@@ -262,8 +259,7 @@ class TestClass : public TestFixture {
262259
void checkCopyCtorAndEqOperator_(const char code[], const char* file, int line) {
263260
// Clear the error log
264261
errout.str("");
265-
Settings settings;
266-
settings.severity.enable(Severity::warning);
262+
const Settings settings = settingsBuilder().severity(Severity::warning).build();
267263

268264
Preprocessor preprocessor(settings);
269265

@@ -2890,9 +2886,7 @@ class TestClass : public TestFixture {
28902886

28912887
#define checkNoMemset(...) checkNoMemset_(__FILE__, __LINE__, __VA_ARGS__)
28922888
void checkNoMemset_(const char* file, int line, const char code[]) {
2893-
Settings settings;
2894-
settings.severity.enable(Severity::warning);
2895-
settings.severity.enable(Severity::portability);
2889+
const Settings settings = settingsBuilder().severity(Severity::warning).severity(Severity::portability).build();
28962890
checkNoMemset_(file, line, code, settings);
28972891
}
28982892

@@ -3156,8 +3150,7 @@ class TestClass : public TestFixture {
31563150
errout.str());
31573151

31583152
// #1655
3159-
Settings s;
3160-
LOAD_LIB_2(s.library, "std.cfg");
3153+
const Settings s = settingsBuilder().library("std.cfg").build();
31613154
checkNoMemset("void f() {\n"
31623155
" char c[] = \"abc\";\n"
31633156
" std::string s;\n"
@@ -7231,10 +7224,7 @@ class TestClass : public TestFixture {
72317224
}
72327225

72337226
void qualifiedNameMember() { // #10872
7234-
Settings s;
7235-
s.severity.enable(Severity::style);
7236-
s.debugwarnings = true;
7237-
LOAD_LIB_2(s.library, "std.cfg");
7227+
Settings s = settingsBuilder().severity(Severity::style).debugwarnings().library("std.cfg").build();
72387228
checkConst("struct data {};\n"
72397229
" struct S {\n"
72407230
" std::vector<data> std;\n"
@@ -7289,8 +7279,7 @@ class TestClass : public TestFixture {
72897279
errout.str("");
72907280

72917281
// Check..
7292-
Settings settings;
7293-
settings.severity.enable(Severity::performance);
7282+
const Settings settings = settingsBuilder().severity(Severity::performance).build();
72947283

72957284
Preprocessor preprocessor(settings);
72967285

@@ -7970,8 +7959,8 @@ class TestClass : public TestFixture {
79707959
void checkOverride_(const char code[], const char* file, int line) {
79717960
// Clear the error log
79727961
errout.str("");
7973-
Settings settings;
7974-
settings.severity.enable(Severity::style);
7962+
7963+
const Settings settings = settingsBuilder().severity(Severity::style).build();
79757964

79767965
Preprocessor preprocessor(settings);
79777966

@@ -8147,9 +8136,9 @@ class TestClass : public TestFixture {
81478136
void checkUnsafeClassRefMember_(const char code[], const char* file, int line) {
81488137
// Clear the error log
81498138
errout.str("");
8150-
Settings settings;
8139+
8140+
Settings settings = settingsBuilder().severity(Severity::warning).build();
81518141
settings.safeChecks.classes = true;
8152-
settings.severity.enable(Severity::warning);
81538142

81548143
Preprocessor preprocessor(settings);
81558144

@@ -8328,7 +8317,7 @@ class TestClass : public TestFixture {
83288317

83298318

83308319
void ctu(const std::vector<std::string> &code) {
8331-
Settings settings;
8320+
const Settings settings;
83328321
auto &check = getCheck<CheckClass>();
83338322

83348323
// getFileInfo

test/testcondition.cpp

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -39,28 +39,19 @@ class TestCondition : public TestFixture {
3939
TestCondition() : TestFixture("TestCondition") {}
4040

4141
private:
42-
Settings settings0;
43-
Settings settings1;
42+
Settings settings0 = settingsBuilder().library("qt.cfg").library("std.cfg").severity(Severity::style).severity(Severity::warning).build();
43+
Settings settings1 = settingsBuilder().severity(Severity::style).severity(Severity::warning).build();
4444

4545
void run() override {
4646
// known platform..
4747
PLATFORM(settings0.platform, cppcheck::Platform::Type::Native);
4848
PLATFORM(settings1.platform, cppcheck::Platform::Type::Native);
4949

50-
LOAD_LIB_2(settings0.library, "qt.cfg");
51-
settings0.libraries.emplace_back("qt");
52-
LOAD_LIB_2(settings0.library, "std.cfg");
53-
54-
settings0.severity.enable(Severity::style);
55-
settings0.severity.enable(Severity::warning);
56-
5750
const char cfg[] = "<?xml version=\"1.0\"?>\n"
5851
"<def>\n"
5952
" <function name=\"bar\"> <pure/> </function>\n"
6053
"</def>";
6154
ASSERT(settings1.library.loadxmldata(cfg, sizeof(cfg)));
62-
settings1.severity.enable(Severity::style);
63-
settings1.severity.enable(Severity::warning);
6455

6556
TEST_CASE(assignAndCompare); // assignment and comparison don't match
6657
TEST_CASE(mismatchingBitAnd); // overlapping bitmasks
@@ -5630,8 +5621,7 @@ class TestCondition : public TestFixture {
56305621
}
56315622

56325623
void compareOutOfTypeRange() {
5633-
Settings settingsUnix64;
5634-
settingsUnix64.severity.enable(Severity::style);
5624+
Settings settingsUnix64 = settingsBuilder().severity(Severity::style).build();
56355625
PLATFORM(settingsUnix64.platform, cppcheck::Platform::Type::Unix64);
56365626

56375627
check("void f(unsigned char c) {\n"

0 commit comments

Comments
 (0)