void suppressionsDosFormat() const {
     Suppressions suppressions;
     std::istringstream s("abc\r\ndef\r\n");
     ASSERT_EQUALS("", suppressions.parseFile(s));
     ASSERT_EQUALS(true, suppressions.isSuppressed("abc", "test.cpp", 1));
     ASSERT_EQUALS(true, suppressions.isSuppressed("def", "test.cpp", 1));
 }
 void suppressionsFileNameWithColon() const {
     Suppressions suppressions;
     std::istringstream s("errorid:c:\\foo.cpp\nerrorid:c:\\bar.cpp:12");
     ASSERT_EQUALS("", suppressions.parseFile(s));
     ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "c:/foo.cpp", 1111));
     ASSERT_EQUALS(false, suppressions.isSuppressed("errorid", "c:/bar.cpp", 10));
     ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "c:/bar.cpp", 12));
 }
    void suppressionsBadId1() const {
        Suppressions suppressions;
        std::istringstream s1("123");
        ASSERT_EQUALS("Failed to add suppression. Invalid id \"123\"", suppressions.parseFile(s1));

        std::istringstream s2("obsoleteFunctionsrand_r");
        ASSERT_EQUALS("", suppressions.parseFile(s2));
    }
    void suppressionsPathSeparator() const {
        Suppressions suppressions;
        suppressions.addSuppressionLine("*:test\\*");
        ASSERT_EQUALS(true, suppressions.isSuppressed("someid", "test/foo/bar.cpp", 142));

        suppressions.addSuppressionLine("abc:include/1.h");
        ASSERT_EQUALS(true, suppressions.isSuppressed("abc", "include\\1.h", 142));
    }
 void globalsuppress_unusedFunction() const { // #4946 - wrong report of "unmatchedSuppression" for "unusedFunction"
     Suppressions suppressions;
     suppressions.addSuppressionLine("unusedFunction:*");
     ASSERT_EQUALS(false, !suppressions.getUnmatchedLocalSuppressions("test.c", true).empty());
     ASSERT_EQUALS(true, !suppressions.getUnmatchedGlobalSuppressions(true).empty());
     ASSERT_EQUALS(false, !suppressions.getUnmatchedLocalSuppressions("test.c", false).empty());
     ASSERT_EQUALS(false, !suppressions.getUnmatchedGlobalSuppressions(false).empty());
 }
    void suppressionsGlob() const {
        // Check for syntax errors in glob
        {
            Suppressions suppressions;
            std::istringstream s("errorid:**.cpp\n");
            ASSERT_EQUALS("Failed to add suppression. Syntax error in glob.", suppressions.parseFile(s));
        }

        // Check that globbing works
        {
            Suppressions suppressions;
            std::istringstream s("errorid:x*.cpp\nerrorid:y?.cpp\nerrorid:test.c*");
            ASSERT_EQUALS("", suppressions.parseFile(s));
            ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "xyz.cpp", 1));
            ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "xyz.cpp.cpp", 1));
            ASSERT_EQUALS(false, suppressions.isSuppressed("errorid", "abc.cpp", 1));
            ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "ya.cpp", 1));
            ASSERT_EQUALS(false, suppressions.isSuppressed("errorid", "y.cpp", 1));
            ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "test.c", 1));
            ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "test.cpp", 1));
        }

        // Check that both a filename match and a glob match apply
        {
            Suppressions suppressions;
            std::istringstream s("errorid:x*.cpp\nerrorid:xyz.cpp:1\nerrorid:a*.cpp:1\nerrorid:abc.cpp:2");
            ASSERT_EQUALS("", suppressions.parseFile(s));
            ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "xyz.cpp", 1));
            ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "xyz.cpp", 2));
            ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "abc.cpp", 1));
            ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "abc.cpp", 2));
        }
    }
 void suppressionsFileNameWithExtraPath() const {
     // Ticket #2797
     Suppressions suppressions;
     suppressions.addSuppression("errorid", "./a.c", 123);
     ASSERT_EQUALS(true, suppressions.isSuppressed("errorid", "a.c", 123));
 }
Exemple #8
0
 void inlinesuppress_unusedFunction() const { // #4210 - wrong report of "unmatchedSuppression" for "unusedFunction"
     Suppressions suppressions;
     suppressions.addSuppression("unusedFunction", "test.c", 3U);
     ASSERT_EQUALS(true, suppressions.getUnmatchedLocalSuppressions("test.c").empty());
     ASSERT_EQUALS(false, suppressions.getUnmatchedGlobalSuppressions().empty());
 }
 void suppressionsBadId1() {
     Suppressions suppressions;
     std::istringstream s("123");
     ASSERT_EQUALS("Failed to add suppression. Invalid id \"123\"", suppressions.parseFile(s));
 }