Enabled c++11 tests in approvals
diff --git a/projects/SelfTest/ApproxTests.cpp b/projects/SelfTest/ApproxTests.cpp
index e4bc6ec..bb6abff 100644
--- a/projects/SelfTest/ApproxTests.cpp
+++ b/projects/SelfTest/ApproxTests.cpp
@@ -166,11 +166,7 @@
return os << "StrongDoubleTypedef(" << static_cast<double>(td) << ")";
}
-TEST_CASE
-(
- "Comparison with explicitly convertible types",
- "[Approx][c++11]"
-)
+TEST_CASE( "Comparison with explicitly convertible types", "[Approx]" )
{
StrongDoubleTypedef td(10.0);
diff --git a/projects/SelfTest/Baselines/console.std.approved.txt b/projects/SelfTest/Baselines/console.std.approved.txt
index 7a4c832..2b41e42 100644
--- a/projects/SelfTest/Baselines/console.std.approved.txt
+++ b/projects/SelfTest/Baselines/console.std.approved.txt
@@ -1001,7 +1001,23 @@
with expansion:
"first" == "second"
+-------------------------------------------------------------------------------
+toString(enum class)
+-------------------------------------------------------------------------------
+EnumToString.cpp:<line number>
+...............................................................................
+
+EnumToString.cpp:<line number>: FAILED:
+ CHECK( ::Catch::Detail::stringify(e0) == "0" )
+with expansion:
+ "{?}" == "0"
+
+EnumToString.cpp:<line number>: FAILED:
+ CHECK( ::Catch::Detail::stringify(e1) == "1" )
+with expansion:
+ "{?}" == "1"
+
===============================================================================
-test cases: 173 | 123 passed | 46 failed | 4 failed as expected
-assertions: 907 | 792 passed | 94 failed | 21 failed as expected
+test cases: 186 | 135 passed | 47 failed | 4 failed as expected
+assertions: 939 | 822 passed | 96 failed | 21 failed as expected
diff --git a/projects/SelfTest/Baselines/console.sw.approved.txt b/projects/SelfTest/Baselines/console.sw.approved.txt
index 17f5fc6..0857fc2 100644
--- a/projects/SelfTest/Baselines/console.sw.approved.txt
+++ b/projects/SelfTest/Baselines/console.sw.approved.txt
@@ -924,6 +924,84 @@
0x<hex digits>
-------------------------------------------------------------------------------
+Comparison with explicitly convertible types
+-------------------------------------------------------------------------------
+ApproxTests.cpp:<line number>
+...............................................................................
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( td == Approx(10.0) )
+with expansion:
+ StrongDoubleTypedef(10) == Approx( 10.0 )
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( Approx(10.0) == td )
+with expansion:
+ Approx( 10.0 ) == StrongDoubleTypedef(10)
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( td != Approx(11.0) )
+with expansion:
+ StrongDoubleTypedef(10) != Approx( 11.0 )
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( Approx(11.0) != td )
+with expansion:
+ Approx( 11.0 ) != StrongDoubleTypedef(10)
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( td <= Approx(10.0) )
+with expansion:
+ StrongDoubleTypedef(10) <= Approx( 10.0 )
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( td <= Approx(11.0) )
+with expansion:
+ StrongDoubleTypedef(10) <= Approx( 11.0 )
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( Approx(10.0) <= td )
+with expansion:
+ Approx( 10.0 ) <= StrongDoubleTypedef(10)
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( Approx(9.0) <= td )
+with expansion:
+ Approx( 9.0 ) <= StrongDoubleTypedef(10)
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( td >= Approx(9.0) )
+with expansion:
+ StrongDoubleTypedef(10) >= Approx( 9.0 )
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( td >= Approx(10.0) )
+with expansion:
+ StrongDoubleTypedef(10) >= Approx( 10.0 )
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( Approx(10.0) >= td )
+with expansion:
+ Approx( 10.0 ) >= StrongDoubleTypedef(10)
+
+ApproxTests.cpp:<line number>:
+PASSED:
+ REQUIRE( Approx(11.0) >= td )
+with expansion:
+ Approx( 11.0 ) >= StrongDoubleTypedef(10)
+
+-------------------------------------------------------------------------------
Comparisons between ints where one side is computed
-------------------------------------------------------------------------------
ConditionTests.cpp:<line number>
@@ -8060,6 +8138,20 @@
Previous info should not be seen
-------------------------------------------------------------------------------
+long long
+-------------------------------------------------------------------------------
+MiscTests.cpp:<line number>
+...............................................................................
+
+MiscTests.cpp:<line number>:
+PASSED:
+ REQUIRE( l == std::numeric_limits<long long>::max() )
+with expansion:
+ 9223372036854775807 (0x<hex digits>)
+ ==
+ 9223372036854775807 (0x<hex digits>)
+
+-------------------------------------------------------------------------------
looped SECTION tests
s1
-------------------------------------------------------------------------------
@@ -8249,6 +8341,18 @@
{null string} == {null string}
-------------------------------------------------------------------------------
+null_ptr
+-------------------------------------------------------------------------------
+TrickyTests.cpp:<line number>
+...............................................................................
+
+TrickyTests.cpp:<line number>:
+PASSED:
+ REQUIRE( ptr.get() == 0 )
+with expansion:
+ 0 == 0
+
+-------------------------------------------------------------------------------
pair<pair<int,const char *,pair<std::string,int> > -> toString
-------------------------------------------------------------------------------
ToStringPair.cpp:<line number>
@@ -8616,6 +8720,48 @@
"{ StringMaker<has_maker> }"
-------------------------------------------------------------------------------
+toString(enum class w/operator<<)
+-------------------------------------------------------------------------------
+EnumToString.cpp:<line number>
+...............................................................................
+
+EnumToString.cpp:<line number>:
+PASSED:
+ CHECK( ::Catch::Detail::stringify(e0) == "E2/V0" )
+with expansion:
+ "E2/V0" == "E2/V0"
+
+EnumToString.cpp:<line number>:
+PASSED:
+ CHECK( ::Catch::Detail::stringify(e1) == "E2/V1" )
+with expansion:
+ "E2/V1" == "E2/V1"
+
+EnumToString.cpp:<line number>:
+PASSED:
+ CHECK( ::Catch::Detail::stringify(e3) == "Unknown enum value 10" )
+with expansion:
+ "Unknown enum value 10"
+ ==
+ "Unknown enum value 10"
+
+-------------------------------------------------------------------------------
+toString(enum class)
+-------------------------------------------------------------------------------
+EnumToString.cpp:<line number>
+...............................................................................
+
+EnumToString.cpp:<line number>: FAILED:
+ CHECK( ::Catch::Detail::stringify(e0) == "0" )
+with expansion:
+ "{?}" == "0"
+
+EnumToString.cpp:<line number>: FAILED:
+ CHECK( ::Catch::Detail::stringify(e1) == "1" )
+with expansion:
+ "{?}" == "1"
+
+-------------------------------------------------------------------------------
toString(enum w/operator<<)
-------------------------------------------------------------------------------
EnumToString.cpp:<line number>
@@ -8652,6 +8798,140 @@
"1" == "1"
-------------------------------------------------------------------------------
+tuple<>
+-------------------------------------------------------------------------------
+ToStringTuple.cpp:<line number>
+...............................................................................
+
+ToStringTuple.cpp:<line number>:
+PASSED:
+ CHECK( "{ }" == ::Catch::Detail::stringify(type{}) )
+with expansion:
+ "{ }" == "{ }"
+
+ToStringTuple.cpp:<line number>:
+PASSED:
+ CHECK( "{ }" == ::Catch::Detail::stringify(value) )
+with expansion:
+ "{ }" == "{ }"
+
+-------------------------------------------------------------------------------
+tuple<float,int>
+-------------------------------------------------------------------------------
+ToStringTuple.cpp:<line number>
+...............................................................................
+
+ToStringTuple.cpp:<line number>:
+PASSED:
+ CHECK( "1.2f" == ::Catch::Detail::stringify(float(1.2)) )
+with expansion:
+ "1.2f" == "1.2f"
+
+ToStringTuple.cpp:<line number>:
+PASSED:
+ CHECK( "{ 1.2f, 0 }" == ::Catch::Detail::stringify(type{1.2f,0}) )
+with expansion:
+ "{ 1.2f, 0 }" == "{ 1.2f, 0 }"
+
+-------------------------------------------------------------------------------
+tuple<int>
+-------------------------------------------------------------------------------
+ToStringTuple.cpp:<line number>
+...............................................................................
+
+ToStringTuple.cpp:<line number>:
+PASSED:
+ CHECK( "{ 0 }" == ::Catch::Detail::stringify(type{0}) )
+with expansion:
+ "{ 0 }" == "{ 0 }"
+
+-------------------------------------------------------------------------------
+tuple<0,int,const char *>
+-------------------------------------------------------------------------------
+ToStringTuple.cpp:<line number>
+...............................................................................
+
+ToStringTuple.cpp:<line number>:
+PASSED:
+ CHECK( "{ 0, 42, \"Catch me\" }" == ::Catch::Detail::stringify(value) )
+with expansion:
+ "{ 0, 42, "Catch me" }"
+ ==
+ "{ 0, 42, "Catch me" }"
+
+-------------------------------------------------------------------------------
+tuple<string,string>
+-------------------------------------------------------------------------------
+ToStringTuple.cpp:<line number>
+...............................................................................
+
+ToStringTuple.cpp:<line number>:
+PASSED:
+ CHECK( "{ \"hello\", \"world\" }" == ::Catch::Detail::stringify(type{"hello","world"}) )
+with expansion:
+ "{ "hello", "world" }"
+ ==
+ "{ "hello", "world" }"
+
+-------------------------------------------------------------------------------
+tuple<tuple<int>,tuple<>,float>
+-------------------------------------------------------------------------------
+ToStringTuple.cpp:<line number>
+...............................................................................
+
+ToStringTuple.cpp:<line number>:
+PASSED:
+ CHECK( "{ { 42 }, { }, 1.2f }" == ::Catch::Detail::stringify(value) )
+with expansion:
+ "{ { 42 }, { }, 1.2f }"
+ ==
+ "{ { 42 }, { }, 1.2f }"
+
+-------------------------------------------------------------------------------
+vec<vec<string,alloc>> -> toString
+-------------------------------------------------------------------------------
+ToStringVector.cpp:<line number>
+...............................................................................
+
+ToStringVector.cpp:<line number>:
+PASSED:
+ REQUIRE( ::Catch::Detail::stringify(v) == "{ }" )
+with expansion:
+ "{ }" == "{ }"
+
+ToStringVector.cpp:<line number>:
+PASSED:
+ REQUIRE( ::Catch::Detail::stringify(v) == "{ { \"hello\" }, { \"world\" } }" )
+with expansion:
+ "{ { "hello" }, { "world" } }"
+ ==
+ "{ { "hello" }, { "world" } }"
+
+-------------------------------------------------------------------------------
+vector<int,allocator> -> toString
+-------------------------------------------------------------------------------
+ToStringVector.cpp:<line number>
+...............................................................................
+
+ToStringVector.cpp:<line number>:
+PASSED:
+ REQUIRE( ::Catch::Detail::stringify(vv) == "{ }" )
+with expansion:
+ "{ }" == "{ }"
+
+ToStringVector.cpp:<line number>:
+PASSED:
+ REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42 }" )
+with expansion:
+ "{ 42 }" == "{ 42 }"
+
+ToStringVector.cpp:<line number>:
+PASSED:
+ REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42, 250 }" )
+with expansion:
+ "{ 42, 250 }" == "{ 42, 250 }"
+
+-------------------------------------------------------------------------------
vector<int> -> toString
-------------------------------------------------------------------------------
ToStringVector.cpp:<line number>
@@ -8884,6 +9164,6 @@
PASSED:
===============================================================================
-test cases: 173 | 122 passed | 47 failed | 4 failed as expected
-assertions: 909 | 792 passed | 96 failed | 21 failed as expected
+test cases: 186 | 134 passed | 48 failed | 4 failed as expected
+assertions: 941 | 822 passed | 98 failed | 21 failed as expected
diff --git a/projects/SelfTest/Baselines/junit.sw.approved.txt b/projects/SelfTest/Baselines/junit.sw.approved.txt
index df8d91e..6f09f33 100644
--- a/projects/SelfTest/Baselines/junit.sw.approved.txt
+++ b/projects/SelfTest/Baselines/junit.sw.approved.txt
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<testsuitesspanner>
- <testsuite name="<exe-name>" errors="15" failures="82" tests="910" hostname="tbd" time="{duration}" timestamp="{iso8601-timestamp}">
+ <testsuite name="<exe-name>" errors="15" failures="84" tests="942" hostname="tbd" time="{duration}" timestamp="{iso8601-timestamp}">
<testcase classname="<exe-name>.global" name="# A test name that starts with a #" time="{duration}"/>
<testcase classname="<exe-name>.global" name="#748 - captures with unexpected exceptions/outside assertions" time="{duration}">
<error type="TEST_CASE">
@@ -112,6 +112,7 @@
<testcase classname="<exe-name>.global" name="Commas in various macros are allowed" time="{duration}"/>
<testcase classname="<exe-name>.global" name="Comparing function pointers" time="{duration}"/>
<testcase classname="<exe-name>.global" name="Comparing member function pointers" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="Comparison with explicitly convertible types" time="{duration}"/>
<testcase classname="<exe-name>.global" name="Comparisons between ints where one side is computed" time="{duration}"/>
<testcase classname="<exe-name>.global" name="Comparisons between unsigned ints and negative signed ints match c++ standard behaviour" time="{duration}"/>
<testcase classname="<exe-name>.global" name="Comparisons with int literals don't warn when mixing signed/ unsigned" time="{duration}"/>
@@ -692,6 +693,7 @@
MessageTests.cpp:<line number>
</failure>
</testcase>
+ <testcase classname="<exe-name>.global" name="long long" time="{duration}"/>
<testcase classname="<exe-name>.global" name="looped SECTION tests/s1" time="{duration}">
<failure message="0 > 1" type="CHECK">
MiscTests.cpp:<line number>
@@ -735,6 +737,7 @@
<testcase classname="<exe-name>.global" name="non streamable - with conv. op" time="{duration}"/>
<testcase classname="<exe-name>.global" name="not allowed" time="{duration}"/>
<testcase classname="<exe-name>.global" name="null strings" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="null_ptr" time="{duration}"/>
<testcase classname="<exe-name>.global" name="pair<pair<int,const char *,pair<std::string,int> > -> toString" time="{duration}"/>
<testcase classname="<exe-name>.global" name="pointer to class" time="{duration}"/>
<testcase classname="<exe-name>.global" name="random SECTION tests/s1" time="{duration}"/>
@@ -775,8 +778,25 @@
<testcase classname="<exe-name>.global" name="toString on wchar_t const pointer returns the string contents" time="{duration}"/>
<testcase classname="<exe-name>.global" name="toString on wchar_t returns the string contents" time="{duration}"/>
<testcase classname="<exe-name>.global" name="toString( vectors<has_maker )" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="toString(enum class w/operator<<)" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="toString(enum class)" time="{duration}">
+ <failure message=""{?}" == "0"" type="CHECK">
+EnumToString.cpp:<line number>
+ </failure>
+ <failure message=""{?}" == "1"" type="CHECK">
+EnumToString.cpp:<line number>
+ </failure>
+ </testcase>
<testcase classname="<exe-name>.global" name="toString(enum w/operator<<)" time="{duration}"/>
<testcase classname="<exe-name>.global" name="toString(enum)" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="tuple<>" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="tuple<float,int>" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="tuple<int>" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="tuple<0,int,const char *>" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="tuple<string,string>" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="tuple<tuple<int>,tuple<>,float>" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="vec<vec<string,alloc>> -> toString" time="{duration}"/>
+ <testcase classname="<exe-name>.global" name="vector<int,allocator> -> toString" time="{duration}"/>
<testcase classname="<exe-name>.global" name="vector<int> -> toString" time="{duration}"/>
<testcase classname="<exe-name>.global" name="vector<string> -> toString" time="{duration}"/>
<testcase classname="<exe-name>.global" name="vectors can be sized and resized" time="{duration}"/>
diff --git a/projects/SelfTest/Baselines/xml.sw.approved.txt b/projects/SelfTest/Baselines/xml.sw.approved.txt
index 1f7e73f..adbdba8 100644
--- a/projects/SelfTest/Baselines/xml.sw.approved.txt
+++ b/projects/SelfTest/Baselines/xml.sw.approved.txt
@@ -1029,6 +1029,105 @@
</Expression>
<OverallResult success="true"/>
</TestCase>
+ <TestCase name="Comparison with explicitly convertible types" tags="[Approx]" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ td == Approx(10.0)
+ </Original>
+ <Expanded>
+ StrongDoubleTypedef(10) == Approx( 10.0 )
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ Approx(10.0) == td
+ </Original>
+ <Expanded>
+ Approx( 10.0 ) == StrongDoubleTypedef(10)
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ td != Approx(11.0)
+ </Original>
+ <Expanded>
+ StrongDoubleTypedef(10) != Approx( 11.0 )
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ Approx(11.0) != td
+ </Original>
+ <Expanded>
+ Approx( 11.0 ) != StrongDoubleTypedef(10)
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ td <= Approx(10.0)
+ </Original>
+ <Expanded>
+ StrongDoubleTypedef(10) <= Approx( 10.0 )
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ td <= Approx(11.0)
+ </Original>
+ <Expanded>
+ StrongDoubleTypedef(10) <= Approx( 11.0 )
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ Approx(10.0) <= td
+ </Original>
+ <Expanded>
+ Approx( 10.0 ) <= StrongDoubleTypedef(10)
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ Approx(9.0) <= td
+ </Original>
+ <Expanded>
+ Approx( 9.0 ) <= StrongDoubleTypedef(10)
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ td >= Approx(9.0)
+ </Original>
+ <Expanded>
+ StrongDoubleTypedef(10) >= Approx( 9.0 )
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ td >= Approx(10.0)
+ </Original>
+ <Expanded>
+ StrongDoubleTypedef(10) >= Approx( 10.0 )
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ Approx(10.0) >= td
+ </Original>
+ <Expanded>
+ Approx( 10.0 ) >= StrongDoubleTypedef(10)
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ApproxTests.cpp" >
+ <Original>
+ Approx(11.0) >= td
+ </Original>
+ <Expanded>
+ Approx( 11.0 ) >= StrongDoubleTypedef(10)
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
<TestCase name="Comparisons between ints where one side is computed" filename="projects/<exe-name>/ConditionTests.cpp" >
<Expression success="true" type="CHECK" filename="projects/<exe-name>/ConditionTests.cpp" >
<Original>
@@ -8927,6 +9026,19 @@
<TestCase name="just info" tags="[info][isolated info][messages]" filename="projects/<exe-name>/MessageTests.cpp" >
<OverallResult success="true"/>
</TestCase>
+ <TestCase name="long long" filename="projects/<exe-name>/MiscTests.cpp" >
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/MiscTests.cpp" >
+ <Original>
+ l == std::numeric_limits<long long>::max()
+ </Original>
+ <Expanded>
+ 9223372036854775807 (0x<hex digits>)
+==
+9223372036854775807 (0x<hex digits>)
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
<TestCase name="looped SECTION tests" tags="[.][failing][hide][sections]" filename="projects/<exe-name>/MiscTests.cpp" >
<Section name="s1" description="b is currently: 0" filename="projects/<exe-name>/MiscTests.cpp" >
<Expression success="false" type="CHECK" filename="projects/<exe-name>/MiscTests.cpp" >
@@ -9143,6 +9255,17 @@
</Expression>
<OverallResult success="true"/>
</TestCase>
+ <TestCase name="null_ptr" tags="[Tricky]" filename="projects/<exe-name>/TrickyTests.cpp" >
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/TrickyTests.cpp" >
+ <Original>
+ ptr.get() == 0
+ </Original>
+ <Expanded>
+ 0 == 0
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
<TestCase name="pair<pair<int,const char *,pair<std::string,int> > -> toString" tags="[pair][toString]" filename="projects/<exe-name>/ToStringPair.cpp" >
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ToStringPair.cpp" >
<Original>
@@ -9512,6 +9635,54 @@
</Expression>
<OverallResult success="true"/>
</TestCase>
+ <TestCase name="toString(enum class w/operator<<)" tags="[enum][enumClass][toString]" filename="projects/<exe-name>/EnumToString.cpp" >
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/EnumToString.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(e0) == "E2/V0"
+ </Original>
+ <Expanded>
+ "E2/V0" == "E2/V0"
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/EnumToString.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(e1) == "E2/V1"
+ </Original>
+ <Expanded>
+ "E2/V1" == "E2/V1"
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/EnumToString.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(e3) == "Unknown enum value 10"
+ </Original>
+ <Expanded>
+ "Unknown enum value 10"
+==
+"Unknown enum value 10"
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
+ <TestCase name="toString(enum class)" tags="[enum][enumClass][toString]" filename="projects/<exe-name>/EnumToString.cpp" >
+ <Expression success="false" type="CHECK" filename="projects/<exe-name>/EnumToString.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(e0) == "0"
+ </Original>
+ <Expanded>
+ "{?}" == "0"
+ </Expanded>
+ </Expression>
+ <Expression success="false" type="CHECK" filename="projects/<exe-name>/EnumToString.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(e1) == "1"
+ </Original>
+ <Expanded>
+ "{?}" == "1"
+ </Expanded>
+ </Expression>
+ <OverallResult success="false"/>
+ </TestCase>
<TestCase name="toString(enum w/operator<<)" tags="[enum][toString]" filename="projects/<exe-name>/EnumToString.cpp" >
<Expression success="true" type="CHECK" filename="projects/<exe-name>/EnumToString.cpp" >
<Original>
@@ -9550,6 +9721,142 @@
</Expression>
<OverallResult success="true"/>
</TestCase>
+ <TestCase name="tuple<>" tags="[toString][tuple]" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Original>
+ "{ }" == ::Catch::Detail::stringify(type{})
+ </Original>
+ <Expanded>
+ "{ }" == "{ }"
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Original>
+ "{ }" == ::Catch::Detail::stringify(value)
+ </Original>
+ <Expanded>
+ "{ }" == "{ }"
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
+ <TestCase name="tuple<float,int>" tags="[toString][tuple]" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Original>
+ "1.2f" == ::Catch::Detail::stringify(float(1.2))
+ </Original>
+ <Expanded>
+ "1.2f" == "1.2f"
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Original>
+ "{ 1.2f, 0 }" == ::Catch::Detail::stringify(type{1.2f,0})
+ </Original>
+ <Expanded>
+ "{ 1.2f, 0 }" == "{ 1.2f, 0 }"
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
+ <TestCase name="tuple<int>" tags="[toString][tuple]" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Original>
+ "{ 0 }" == ::Catch::Detail::stringify(type{0})
+ </Original>
+ <Expanded>
+ "{ 0 }" == "{ 0 }"
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
+ <TestCase name="tuple<0,int,const char *>" tags="[toString][tuple]" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Original>
+ "{ 0, 42, \"Catch me\" }" == ::Catch::Detail::stringify(value)
+ </Original>
+ <Expanded>
+ "{ 0, 42, "Catch me" }"
+==
+"{ 0, 42, "Catch me" }"
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
+ <TestCase name="tuple<string,string>" tags="[toString][tuple]" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Original>
+ "{ \"hello\", \"world\" }" == ::Catch::Detail::stringify(type{"hello","world"})
+ </Original>
+ <Expanded>
+ "{ "hello", "world" }"
+==
+"{ "hello", "world" }"
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
+ <TestCase name="tuple<tuple<int>,tuple<>,float>" tags="[toString][tuple]" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Expression success="true" type="CHECK" filename="projects/<exe-name>/ToStringTuple.cpp" >
+ <Original>
+ "{ { 42 }, { }, 1.2f }" == ::Catch::Detail::stringify(value)
+ </Original>
+ <Expanded>
+ "{ { 42 }, { }, 1.2f }"
+==
+"{ { 42 }, { }, 1.2f }"
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
+ <TestCase name="vec<vec<string,alloc>> -> toString" tags="[toString][vector,allocator]" filename="projects/<exe-name>/ToStringVector.cpp" >
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ToStringVector.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(v) == "{ }"
+ </Original>
+ <Expanded>
+ "{ }" == "{ }"
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ToStringVector.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(v) == "{ { \"hello\" }, { \"world\" } }"
+ </Original>
+ <Expanded>
+ "{ { "hello" }, { "world" } }"
+==
+"{ { "hello" }, { "world" } }"
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
+ <TestCase name="vector<int,allocator> -> toString" tags="[toString][vector,allocator]" filename="projects/<exe-name>/ToStringVector.cpp" >
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ToStringVector.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(vv) == "{ }"
+ </Original>
+ <Expanded>
+ "{ }" == "{ }"
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ToStringVector.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(vv) == "{ 42 }"
+ </Original>
+ <Expanded>
+ "{ 42 }" == "{ 42 }"
+ </Expanded>
+ </Expression>
+ <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ToStringVector.cpp" >
+ <Original>
+ ::Catch::Detail::stringify(vv) == "{ 42, 250 }"
+ </Original>
+ <Expanded>
+ "{ 42, 250 }" == "{ 42, 250 }"
+ </Expanded>
+ </Expression>
+ <OverallResult success="true"/>
+ </TestCase>
<TestCase name="vector<int> -> toString" tags="[toString][vector]" filename="projects/<exe-name>/ToStringVector.cpp" >
<Expression success="true" type="REQUIRE" filename="projects/<exe-name>/ToStringVector.cpp" >
<Original>
@@ -9769,7 +10076,7 @@
</Section>
<OverallResult success="true"/>
</TestCase>
- <OverallResults successes="792" failures="97" expectedFailures="21"/>
+ <OverallResults successes="822" failures="99" expectedFailures="21"/>
</Group>
- <OverallResults successes="792" failures="96" expectedFailures="21"/>
+ <OverallResults successes="822" failures="98" expectedFailures="21"/>
</Catch>
diff --git a/projects/SelfTest/EnumToString.cpp b/projects/SelfTest/EnumToString.cpp
index eb80c74..7d18a29 100644
--- a/projects/SelfTest/EnumToString.cpp
+++ b/projects/SelfTest/EnumToString.cpp
@@ -28,7 +28,7 @@
// Enum class without user-provided stream operator
enum class EnumClass1 { EnumClass1Value0, EnumClass1Value1 };
-TEST_CASE( "toString(enum class)", "[toString][enum][enumClass][c++11][.]" ) {
+TEST_CASE( "toString(enum class)", "[toString][enum][enumClass]" ) {
EnumClass1 e0 = EnumClass1::EnumClass1Value0;
CHECK( ::Catch::Detail::stringify(e0) == "0" );
EnumClass1 e1 = EnumClass1::EnumClass1Value1;
@@ -49,7 +49,7 @@
}
}
-TEST_CASE( "toString(enum class w/operator<<)", "[toString][enum][enumClass][c++11][.]" ) {
+TEST_CASE( "toString(enum class w/operator<<)", "[toString][enum][enumClass]" ) {
EnumClass2 e0 = EnumClass2::EnumClass2Value0;
CHECK( ::Catch::Detail::stringify(e0) == "E2/V0" );
EnumClass2 e1 = EnumClass2::EnumClass2Value1;
diff --git a/projects/SelfTest/MiscTests.cpp b/projects/SelfTest/MiscTests.cpp
index 9d83782..87381b0 100644
--- a/projects/SelfTest/MiscTests.cpp
+++ b/projects/SelfTest/MiscTests.cpp
@@ -372,7 +372,7 @@
}
}
-TEST_CASE( "long long", "[c++11][.]" ) {
+TEST_CASE( "long long" ) {
long long l = std::numeric_limits<long long>::max();
REQUIRE( l == std::numeric_limits<long long>::max() );
diff --git a/projects/SelfTest/ToStringTuple.cpp b/projects/SelfTest/ToStringTuple.cpp
index dcd1d80..330e427 100644
--- a/projects/SelfTest/ToStringTuple.cpp
+++ b/projects/SelfTest/ToStringTuple.cpp
@@ -2,7 +2,7 @@
#include <tuple>
-TEST_CASE( "tuple<>", "[toString][tuple][c++11][.]" )
+TEST_CASE( "tuple<>", "[toString][tuple]" )
{
typedef std::tuple<> type;
CHECK( "{ }" == ::Catch::Detail::stringify(type{}) );
@@ -10,34 +10,34 @@
CHECK( "{ }" == ::Catch::Detail::stringify(value) );
}
-TEST_CASE( "tuple<int>", "[toString][tuple][c++11][.]" )
+TEST_CASE( "tuple<int>", "[toString][tuple]" )
{
typedef std::tuple<int> type;
CHECK( "{ 0 }" == ::Catch::Detail::stringify(type{0}) );
}
-TEST_CASE( "tuple<float,int>", "[toString][tuple][c++11][.]" )
+TEST_CASE( "tuple<float,int>", "[toString][tuple]" )
{
typedef std::tuple<float,int> type;
CHECK( "1.2f" == ::Catch::Detail::stringify(float(1.2)) );
CHECK( "{ 1.2f, 0 }" == ::Catch::Detail::stringify(type{1.2f,0}) );
}
-TEST_CASE( "tuple<string,string>", "[toString][tuple][c++11][.]" )
+TEST_CASE( "tuple<string,string>", "[toString][tuple]" )
{
typedef std::tuple<std::string,std::string> type;
CHECK( "{ \"hello\", \"world\" }" == ::Catch::Detail::stringify(type{"hello","world"}) );
}
-TEST_CASE( "tuple<tuple<int>,tuple<>,float>", "[toString][tuple][c++11][.]" )
+TEST_CASE( "tuple<tuple<int>,tuple<>,float>", "[toString][tuple]" )
{
typedef std::tuple<std::tuple<int>,std::tuple<>,float> type;
type value { std::tuple<int>{42}, {}, 1.2f };
CHECK( "{ { 42 }, { }, 1.2f }" == ::Catch::Detail::stringify(value) );
}
-TEST_CASE( "tuple<nullptr,int,const char *>", "[toString][tuple][c++11][.]" )
+TEST_CASE( "tuple<nullptr,int,const char *>", "[toString][tuple]" )
{
typedef std::tuple<std::nullptr_t,int,const char *> type;
type value { nullptr, 42, "Catch me" };
diff --git a/projects/SelfTest/ToStringVector.cpp b/projects/SelfTest/ToStringVector.cpp
index c70872c..df9c55a 100644
--- a/projects/SelfTest/ToStringVector.cpp
+++ b/projects/SelfTest/ToStringVector.cpp
@@ -48,7 +48,7 @@
};
}
-TEST_CASE( "vector<int,allocator> -> toString", "[toString][vector,allocator][c++11][.]" ) {
+TEST_CASE( "vector<int,allocator> -> toString", "[toString][vector,allocator]" ) {
std::vector<int,minimal_allocator<int> > vv;
REQUIRE( ::Catch::Detail::stringify(vv) == "{ }" );
vv.push_back( 42 );
@@ -57,7 +57,7 @@
REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42, 250 }" );
}
-TEST_CASE( "vec<vec<string,alloc>> -> toString", "[toString][vector,allocator][c++11][.]" ) {
+TEST_CASE( "vec<vec<string,alloc>> -> toString", "[toString][vector,allocator]" ) {
using inner = std::vector<std::string, minimal_allocator<std::string>>;
using vector = std::vector<inner>;
vector v;
diff --git a/projects/SelfTest/TrickyTests.cpp b/projects/SelfTest/TrickyTests.cpp
index ca8c451..4ebb0f2 100644
--- a/projects/SelfTest/TrickyTests.cpp
+++ b/projects/SelfTest/TrickyTests.cpp
@@ -383,7 +383,7 @@
#include <memory>
-TEST_CASE( "null_ptr", "[Tricky][c++11][.]" )
+TEST_CASE( "null_ptr", "[Tricky]" )
{
std::unique_ptr<int> ptr;
REQUIRE(ptr.get() == nullptr);
diff --git a/scripts/approvalTests.py b/scripts/approvalTests.py
index 3b71be3..016997c 100755
--- a/scripts/approvalTests.py
+++ b/scripts/approvalTests.py
@@ -145,15 +145,15 @@
print(" " + cmdPath)
# Standard console reporter
-approve("console.std", ["~[c++11]~[!nonportable]", "--order", "lex"])
+approve("console.std", ["~[!nonportable]", "--order", "lex"])
# console reporter, include passes, warn about No Assertions
-approve("console.sw", ["~[c++11]~[!nonportable]", "-s", "-w", "NoAssertions", "--order", "lex"])
+approve("console.sw", ["~[!nonportable]", "-s", "-w", "NoAssertions", "--order", "lex"])
# console reporter, include passes, warn about No Assertions, limit failures to first 4
-approve("console.swa4", ["~[c++11]~[!nonportable]", "-s", "-w", "NoAssertions", "-x", "4", "--order", "lex"])
+approve("console.swa4", ["~[!nonportable]", "-s", "-w", "NoAssertions", "-x", "4", "--order", "lex"])
# junit reporter, include passes, warn about No Assertions
-approve("junit.sw", ["~[c++11]~[!nonportable]", "-s", "-w", "NoAssertions", "-r", "junit", "--order", "lex"])
+approve("junit.sw", ["~[!nonportable]", "-s", "-w", "NoAssertions", "-r", "junit", "--order", "lex"])
# xml reporter, include passes, warn about No Assertions
-approve("xml.sw", ["~[c++11]~[!nonportable]", "-s", "-w", "NoAssertions", "-r", "xml", "--order", "lex"])
+approve("xml.sw", ["~[!nonportable]", "-s", "-w", "NoAssertions", "-r", "xml", "--order", "lex"])
if overallResult != 0:
print("If these differences are expected, run approve.py to approve new baselines.")