Skip to content

Commit f412af8

Browse files
committed
first round of SettingsBuilder usage in tests
1 parent 99874e1 commit f412af8

37 files changed

Lines changed: 169 additions & 366 deletions

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
@@ -31,7 +31,7 @@ class TestAssert : public TestFixture {
3131
TestAssert() : TestFixture("TestAssert") {}
3232

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

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

5050
void run() override {
51-
settings.severity.enable(Severity::warning);
52-
5351
TEST_CASE(assignmentInAssert);
5452
TEST_CASE(functionCallInAssert);
5553
TEST_CASE(memberFunctionCallInAssert);

test/testautovariables.cpp

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,29 +30,24 @@ class TestAutoVariables : public TestFixture {
3030
TestAutoVariables() : TestFixture("TestAutoVariables") {}
3131

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

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

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

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

47-
runChecks<CheckAutoVariables>(&tokenizer, &settings, this);
47+
runChecks<CheckAutoVariables>(&tokenizer, &settings1, this);
4848
}
4949

5050
void run() override {
51-
settings.severity.enable(Severity::warning);
52-
settings.severity.enable(Severity::style);
53-
LOAD_LIB_2(settings.library, "std.cfg");
54-
LOAD_LIB_2(settings.library, "qt.cfg");
55-
5651
TEST_CASE(testautovar1);
5752
TEST_CASE(testautovar2);
5853
TEST_CASE(testautovar3); // ticket #2925

test/testbool.cpp

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

3232
private:
33-
Settings settings;
33+
const Settings settings = settingsBuilder().severity(Severity::style).severity(Severity::warning).certainty(Certainty::inconclusive).build();
3434

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

test/testboost.cpp

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

3232
private:
33-
Settings settings;
33+
const Settings settings = settingsBuilder().severity(Severity::style).severity(Severity::performance).build();
3434

3535
void run() override {
36-
settings.severity.enable(Severity::style);
37-
settings.severity.enable(Severity::performance);
38-
3936
TEST_CASE(BoostForeachContainerModification);
4037
}
4138

test/testbufferoverrun.cpp

Lines changed: 17 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -44,22 +44,22 @@ class TestBufferOverrun : public TestFixture {
4444
TestBufferOverrun() : TestFixture("TestBufferOverrun") {}
4545

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

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

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

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

6161
// Check for buffer overruns..
62-
runChecks<CheckBufferOverrun>(&tokenizer, &settings0, this);
62+
runChecks<CheckBufferOverrun>(&tokenizer, &settings, this);
6363
}
6464

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

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

9292
// Raw tokens..
9393
std::vector<std::string> files(1, filename);
@@ -99,26 +99,20 @@ class TestBufferOverrun : public TestFixture {
9999
std::map<std::string, simplecpp::TokenList*> filedata;
100100
simplecpp::preprocess(tokens2, tokens1, files, filedata, simplecpp::DUI());
101101

102-
Preprocessor preprocessor(*settings, nullptr);
102+
Preprocessor preprocessor(settings, nullptr);
103103
preprocessor.setDirectives(tokens1);
104104

105105
// Tokenizer..
106-
Tokenizer tokenizer(settings, this);
106+
Tokenizer tokenizer(&settings, this);
107107
tokenizer.createTokens(std::move(tokens2));
108108
tokenizer.simplifyTokens1("");
109109
tokenizer.setPreprocessor(&preprocessor);
110110

111111
// Check for buffer overruns..
112-
runChecks<CheckBufferOverrun>(&tokenizer, settings, this);
112+
runChecks<CheckBufferOverrun>(&tokenizer, &settings, this);
113113
}
114114

115115
void run() override {
116-
LOAD_LIB_2(settings0.library, "std.cfg");
117-
118-
settings0.severity.enable(Severity::warning);
119-
settings0.severity.enable(Severity::style);
120-
settings0.severity.enable(Severity::portability);
121-
122116
TEST_CASE(noerr1);
123117
TEST_CASE(noerr2);
124118
TEST_CASE(noerr3);
@@ -5496,8 +5490,7 @@ class TestBufferOverrun : public TestFixture {
54965490

54975491
void checkPipeParameterSize() { // #3521
54985492

5499-
Settings settings;
5500-
LOAD_LIB_2(settings.library, "posix.cfg");
5493+
const Settings settings = settingsBuilder().library("posix.cfg").build();
55015494

55025495
check("void f(){\n"
55035496
"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, Settings::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
@@ -138,8 +138,7 @@ class TestClangImport : public TestFixture {
138138
}
139139

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

10511050

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

test/testclass.cpp

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

3939
private:
40-
Settings settings0;
41-
Settings settings1;
40+
Settings settings0 = settingsBuilder().severity(Severity::style).build();
41+
Settings settings1 = settingsBuilder().severity(Severity::warning).build();
4242

4343
void run() override {
44-
settings0.severity.enable(Severity::style);
45-
settings1.severity.enable(Severity::warning);
46-
4744
// Load std.cfg configuration
4845
{
4946
const char xmldata[] = "<?xml version=\"1.0\"?>\n"
@@ -259,8 +256,7 @@ class TestClass : public TestFixture {
259256
void checkCopyCtorAndEqOperator_(const char code[], const char* file, int line) {
260257
// Clear the error log
261258
errout.str("");
262-
Settings settings;
263-
settings.severity.enable(Severity::warning);
259+
const Settings settings = settingsBuilder().severity(Severity::warning).build();
264260

265261
// Tokenize..
266262
Tokenizer tokenizer(&settings, this);
@@ -2873,9 +2869,7 @@ class TestClass : public TestFixture {
28732869

28742870
#define checkNoMemset(...) checkNoMemset_(__FILE__, __LINE__, __VA_ARGS__)
28752871
void checkNoMemset_(const char* file, int line, const char code[]) {
2876-
Settings settings;
2877-
settings.severity.enable(Severity::warning);
2878-
settings.severity.enable(Severity::portability);
2872+
const Settings settings = settingsBuilder().severity(Severity::warning).severity(Severity::portability).build();
28792873
checkNoMemset_(file, line, code, settings);
28802874
}
28812875

@@ -3137,8 +3131,7 @@ class TestClass : public TestFixture {
31373131
errout.str());
31383132

31393133
// #1655
3140-
Settings s;
3141-
LOAD_LIB_2(s.library, "std.cfg");
3134+
const Settings s = settingsBuilder().library("std.cfg").build();
31423135
checkNoMemset("void f() {\n"
31433136
" char c[] = \"abc\";\n"
31443137
" std::string s;\n"
@@ -7041,10 +7034,7 @@ class TestClass : public TestFixture {
70417034
}
70427035

70437036
void qualifiedNameMember() { // #10872
7044-
Settings s;
7045-
s.severity.enable(Severity::style);
7046-
s.debugwarnings = true;
7047-
LOAD_LIB_2(s.library, "std.cfg");
7037+
Settings s = settingsBuilder().severity(Severity::style).debugwarnings().library("std.cfg").build();
70487038
checkConst("struct data {};\n"
70497039
" struct S {\n"
70507040
" std::vector<data> std;\n"
@@ -7097,8 +7087,7 @@ class TestClass : public TestFixture {
70977087
errout.str("");
70987088

70997089
// Check..
7100-
Settings settings;
7101-
settings.severity.enable(Severity::performance);
7090+
const Settings settings = settingsBuilder().severity(Severity::performance).build();
71027091

71037092
// Tokenize..
71047093
Tokenizer tokenizer(&settings, this);
@@ -7775,8 +7764,8 @@ class TestClass : public TestFixture {
77757764
void checkOverride_(const char code[], const char* file, int line) {
77767765
// Clear the error log
77777766
errout.str("");
7778-
Settings settings;
7779-
settings.severity.enable(Severity::style);
7767+
7768+
const Settings settings = settingsBuilder().severity(Severity::style).build();
77807769

77817770
// Tokenize..
77827771
Tokenizer tokenizer(&settings, this);
@@ -7950,9 +7939,9 @@ class TestClass : public TestFixture {
79507939
void checkUnsafeClassRefMember_(const char code[], const char* file, int line) {
79517940
// Clear the error log
79527941
errout.str("");
7953-
Settings settings;
7942+
7943+
Settings settings = settingsBuilder().severity(Severity::warning).build();
79547944
settings.safeChecks.classes = true;
7955-
settings.severity.enable(Severity::warning);
79567945

79577946
// Tokenize..
79587947
Tokenizer tokenizer(&settings, this);
@@ -8127,7 +8116,7 @@ class TestClass : public TestFixture {
81278116

81288117

81298118
void ctu(const std::vector<std::string> &code) {
8130-
Settings settings;
8119+
const Settings settings;
81318120
auto &check = getCheck<CheckClass>();
81328121

81338122
// getFileInfo

test/testcondition.cpp

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -40,28 +40,20 @@ class TestCondition : public TestFixture {
4040
TestCondition() : TestFixture("TestCondition") {}
4141

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

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

51-
LOAD_LIB_2(settings0.library, "qt.cfg");
52-
LOAD_LIB_2(settings0.library, "std.cfg");
53-
54-
settings0.severity.enable(Severity::style);
55-
settings0.severity.enable(Severity::warning);
56-
5751
const char cfg[] = "<?xml version=\"1.0\"?>\n"
5852
"<def>\n"
5953
" <function name=\"bar\"> <pure/> </function>\n"
6054
"</def>";
6155
tinyxml2::XMLDocument xmldoc;
6256
xmldoc.Parse(cfg, sizeof(cfg));
63-
settings1.severity.enable(Severity::style);
64-
settings1.severity.enable(Severity::warning);
6557
settings1.library.load(xmldoc);
6658

6759
TEST_CASE(assignAndCompare); // assignment and comparison don't match
@@ -5578,8 +5570,7 @@ class TestCondition : public TestFixture {
55785570
}
55795571

55805572
void compareOutOfTypeRange() {
5581-
Settings settingsUnix64;
5582-
settingsUnix64.severity.enable(Severity::style);
5573+
Settings settingsUnix64 = settingsBuilder().severity(Severity::style).build();
55835574
PLATFORM(settingsUnix64, cppcheck::Platform::PlatformType::Unix64);
55845575

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

0 commit comments

Comments
 (0)