Skip to content

Commit c1d9276

Browse files
authored
testrunner: create more settings as immutable (#8067)
1 parent ac3f534 commit c1d9276

File tree

3 files changed

+84
-69
lines changed

3 files changed

+84
-69
lines changed

test/testbufferoverrun.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4283,8 +4283,9 @@ class TestBufferOverrun : public TestFixture {
42834283
" <arg nr=\"3\"/>\n"
42844284
" </function>\n"
42854285
"</def>";
4286-
/*const*/ Settings settings = settingsBuilder().libraryxml(xmldata).severity(Severity::warning).build();
4287-
settings.platform.sizeof_wchar_t = 4;
4286+
// use a platform which has wchar_t with a sizeof 4
4287+
const Settings settings = settingsBuilder().libraryxml(xmldata).severity(Severity::warning).platform(Platform::Unix32).build();
4288+
ASSERT_EQUALS(4, settings.platform.sizeof_wchar_t);
42884289

42894290
check("void f() {\n"
42904291
" char c[10];\n"

test/testpreprocessor.cpp

Lines changed: 75 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1992,9 +1992,9 @@ class TestPreprocessor : public TestFixture {
19921992
}
19931993

19941994
void inline_suppressions() {
1995-
/*const*/ Settings settings;
1996-
settings.inlineSuppressions = true;
1997-
settings.checks.enable(Checks::missingInclude);
1995+
const auto settings = dinit(Settings,
1996+
$.inlineSuppressions = true,
1997+
$.checks.enable (Checks::missingInclude));
19981998

19991999
const char code[] = "// cppcheck-suppress missingInclude\n"
20002000
"#include \"missing.h\"\n"
@@ -2447,10 +2447,11 @@ class TestPreprocessor : public TestFixture {
24472447

24482448
// test for existing local include
24492449
void testMissingInclude() {
2450-
/*const*/ Settings settings;
2451-
settings.clearIncludeCache = true;
2452-
settings.checks.enable(Checks::missingInclude);
2453-
settings.templateFormat = "simple"; // has no effect
2450+
const auto settings = dinit(Settings,
2451+
$.clearIncludeCache = true,
2452+
$.checks.enable (Checks::missingInclude),
2453+
$.templateFormat = "simple" // has no effect
2454+
);
24542455
setTemplateFormat("simple");
24552456

24562457
ScopedFile header("header.h", "");
@@ -2463,10 +2464,11 @@ class TestPreprocessor : public TestFixture {
24632464

24642465
// test for missing local include
24652466
void testMissingInclude2() {
2466-
/*const*/ Settings settings;
2467-
settings.clearIncludeCache = true;
2468-
settings.checks.enable(Checks::missingInclude);
2469-
settings.templateFormat = "simple"; // has no effect
2467+
const auto settings = dinit(Settings,
2468+
$.clearIncludeCache = true,
2469+
$.checks.enable (Checks::missingInclude),
2470+
$.templateFormat = "simple" // has no effect
2471+
);
24702472
setTemplateFormat("simple");
24712473

24722474
const char code[] = "#include \"header.h\"";
@@ -2477,10 +2479,11 @@ class TestPreprocessor : public TestFixture {
24772479

24782480
// test for missing local include - no include path given
24792481
void testMissingInclude3() {
2480-
/*const*/ Settings settings;
2481-
settings.clearIncludeCache = true;
2482-
settings.checks.enable(Checks::missingInclude);
2483-
settings.templateFormat = "simple"; // has no effect
2482+
const auto settings = dinit(Settings,
2483+
$.clearIncludeCache = true,
2484+
$.checks.enable (Checks::missingInclude),
2485+
$.templateFormat = "simple" // has no effect
2486+
);
24842487
setTemplateFormat("simple");
24852488

24862489
ScopedFile header("header.h", "", "inc");
@@ -2493,11 +2496,12 @@ class TestPreprocessor : public TestFixture {
24932496

24942497
// test for existing local include - include path provided
24952498
void testMissingInclude4() {
2496-
/*const*/ Settings settings;
2497-
settings.clearIncludeCache = true;
2498-
settings.checks.enable(Checks::missingInclude);
2499-
settings.includePaths.emplace_back("inc");
2500-
settings.templateFormat = "simple"; // has no effect
2499+
const auto settings = dinit(Settings,
2500+
$.clearIncludeCache = true,
2501+
$.checks.enable (Checks::missingInclude),
2502+
$.includePaths.emplace_back ("inc"),
2503+
$.templateFormat = "simple" // has no effect
2504+
);
25012505
setTemplateFormat("simple");
25022506

25032507
ScopedFile header("header.h", "", "inc");
@@ -2510,11 +2514,12 @@ class TestPreprocessor : public TestFixture {
25102514

25112515
// test for existing local include - absolute path
25122516
void testMissingInclude5() {
2513-
/*const*/ Settings settings;
2514-
settings.clearIncludeCache = true;
2515-
settings.checks.enable(Checks::missingInclude);
2516-
settings.includePaths.emplace_back("inc");
2517-
settings.templateFormat = "simple"; // has no effect
2517+
const auto settings = dinit(Settings,
2518+
$.clearIncludeCache = true,
2519+
$.checks.enable (Checks::missingInclude),
2520+
$.includePaths.emplace_back ("inc"),
2521+
$.templateFormat = "simple" // has no effect
2522+
);
25182523
setTemplateFormat("simple");
25192524

25202525
ScopedFile header("header.h", "", Path::getCurrentPath());
@@ -2527,10 +2532,11 @@ class TestPreprocessor : public TestFixture {
25272532

25282533
// test for missing local include - absolute path
25292534
void testMissingInclude6() {
2530-
/*const*/ Settings settings;
2531-
settings.clearIncludeCache = true;
2532-
settings.checks.enable(Checks::missingInclude);
2533-
settings.templateFormat = "simple"; // has no effect
2535+
const auto settings = dinit(Settings,
2536+
$.clearIncludeCache = true,
2537+
$.checks.enable (Checks::missingInclude),
2538+
$.templateFormat = "simple" // has no effect
2539+
);
25342540
setTemplateFormat("simple");
25352541

25362542
const std::string header = Path::join(Path::getCurrentPath(), "header.h");
@@ -2543,10 +2549,11 @@ class TestPreprocessor : public TestFixture {
25432549

25442550
// test for missing system include - system includes are not searched for in relative path
25452551
void testMissingSystemInclude() {
2546-
/*const*/ Settings settings;
2547-
settings.clearIncludeCache = true;
2548-
settings.checks.enable(Checks::missingInclude);
2549-
settings.templateFormat = "simple"; // has no effect
2552+
const auto settings = dinit(Settings,
2553+
$.clearIncludeCache = true,
2554+
$.checks.enable (Checks::missingInclude),
2555+
$.templateFormat = "simple" // has no effect
2556+
);
25502557
setTemplateFormat("simple");
25512558

25522559
ScopedFile header("header.h", "");
@@ -2559,10 +2566,11 @@ class TestPreprocessor : public TestFixture {
25592566

25602567
// test for missing system include
25612568
void testMissingSystemInclude2() {
2562-
/*const*/ Settings settings;
2563-
settings.clearIncludeCache = true;
2564-
settings.checks.enable(Checks::missingInclude);
2565-
settings.templateFormat = "simple"; // has no effect
2569+
const auto settings = dinit(Settings,
2570+
$.clearIncludeCache = true,
2571+
$.checks.enable (Checks::missingInclude),
2572+
$.templateFormat = "simple" // has no effect
2573+
);
25662574
setTemplateFormat("simple");
25672575

25682576
const char code[] = "#include <header.h>";
@@ -2573,28 +2581,30 @@ class TestPreprocessor : public TestFixture {
25732581

25742582
// test for existing system include in system include path
25752583
void testMissingSystemInclude3() {
2576-
/*const*/ Settings settings;
2577-
settings.clearIncludeCache = true;
2578-
settings.checks.enable(Checks::missingInclude);
2579-
settings.templateFormat = "simple"; // has no effect
2584+
const auto settings = dinit(Settings,
2585+
$.clearIncludeCache = true,
2586+
$.checks.enable (Checks::missingInclude),
2587+
$.templateFormat = "simple", // has no effect
2588+
$.includePaths.emplace_back ("system")
2589+
);
25802590
setTemplateFormat("simple");
2581-
settings.includePaths.emplace_back("system");
25822591

25832592
ScopedFile header("header.h", "", "system");
25842593

25852594
const char code[] = "#include <header.h>";
2586-
(void)getcodeforcfg(settings0, *this, code, "", "test.c");
2595+
(void)getcodeforcfg(settings, *this, code, "", "test.c");
25872596

25882597
ASSERT_EQUALS("", errout_str());
25892598
}
25902599

25912600
// test for existing system include - absolute path
25922601
void testMissingSystemInclude4() {
2593-
/*const*/ Settings settings;
2594-
settings.clearIncludeCache = true;
2595-
settings.checks.enable(Checks::missingInclude);
2596-
settings.includePaths.emplace_back("inc");
2597-
settings.templateFormat = "simple"; // has no effect
2602+
const auto settings = dinit(Settings,
2603+
$.clearIncludeCache = true,
2604+
$.checks.enable (Checks::missingInclude),
2605+
$.includePaths.emplace_back ("inc");
2606+
$.templateFormat = "simple" // has no effect
2607+
);
25982608
setTemplateFormat("simple");
25992609

26002610
ScopedFile header("header.h", "", Path::getCurrentPath());
@@ -2607,10 +2617,11 @@ class TestPreprocessor : public TestFixture {
26072617

26082618
// test for missing system include - absolute path
26092619
void testMissingSystemInclude5() {
2610-
/*const*/ Settings settings;
2611-
settings.clearIncludeCache = true;
2612-
settings.checks.enable(Checks::missingInclude);
2613-
settings.templateFormat = "simple"; // has no effect
2620+
const auto settings = dinit(Settings,
2621+
$.clearIncludeCache = true,
2622+
$.checks.enable (Checks::missingInclude),
2623+
$.templateFormat = "simple" // has no effect
2624+
);
26142625
setTemplateFormat("simple");
26152626

26162627
const std::string header = Path::join(Path::getCurrentPath(), "header.h");
@@ -2623,10 +2634,12 @@ class TestPreprocessor : public TestFixture {
26232634

26242635
// test for missing local and system include
26252636
void testMissingIncludeMixed() {
2626-
/*const*/ Settings settings;
2627-
settings.clearIncludeCache = true;
2628-
settings.checks.enable(Checks::missingInclude);
2629-
settings.templateFormat = "simple"; // has no effect
2637+
const auto settings = dinit(Settings,
2638+
$.clearIncludeCache = true,
2639+
$.checks.enable (Checks::missingInclude),
2640+
2641+
$.templateFormat = "simple" // has no effect
2642+
);
26302643
setTemplateFormat("simple");
26312644

26322645
ScopedFile header("header.h", "");
@@ -2644,11 +2657,12 @@ class TestPreprocessor : public TestFixture {
26442657
}
26452658

26462659
void testMissingIncludeCheckConfig() {
2647-
/*const*/ Settings settings;
2648-
settings.clearIncludeCache = true;
2649-
settings.checks.enable(Checks::missingInclude);
2650-
settings.includePaths.emplace_back("system");
2651-
settings.templateFormat = "simple"; // has no effect
2660+
const auto settings = dinit(Settings,
2661+
$.clearIncludeCache = true,
2662+
$.checks.enable (Checks::missingInclude),
2663+
$.includePaths.emplace_back ("system");
2664+
$.templateFormat = "simple" // has no effect
2665+
);
26522666
setTemplateFormat("simple");
26532667

26542668
ScopedFile header("header.h", "");

test/testsuppressions.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -315,12 +315,12 @@ class TestSuppressions : public TestFixture {
315315
fileSettings.emplace_back("test.cpp", Standards::Language::CPP, strlen(code));
316316
}
317317

318-
/*const*/ auto settings = dinit(Settings,
319-
$.jobs = 2,
320-
$.quiet = true,
321-
$.inlineSuppressions = true);
322-
settings.severity.enable(Severity::information);
323-
settings.templateFormat = templateFormat;
318+
const auto settings = dinit(Settings,
319+
$.jobs = 2,
320+
$.quiet = true,
321+
$.inlineSuppressions = true,
322+
$.severity.enable (Severity::information),
323+
$.templateFormat = templateFormat);
324324

325325
Suppressions supprs;
326326
if (!suppression.empty()) {

0 commit comments

Comments
 (0)