From aaaac35d928289b67f9b0774d29fb783fef82216 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Ho=C5=99e=C5=88ovsk=C3=BD?= Date: Sat, 13 Oct 2018 14:43:58 +0200 Subject: [PATCH] Add tests for #1403 --- .../Baselines/compact.sw.approved.txt | 1 + .../Baselines/console.std.approved.txt | 4 +-- .../Baselines/console.sw.approved.txt | 16 ++++++++-- .../Baselines/console.swa4.approved.txt | 16 ++++++++-- .../SelfTest/Baselines/junit.sw.approved.txt | 3 +- .../SelfTest/Baselines/xml.sw.approved.txt | 15 ++++++++-- .../SelfTest/UsageTests/Compilation.tests.cpp | 30 ++++++++++++++++++- 7 files changed, 75 insertions(+), 10 deletions(-) diff --git a/projects/SelfTest/Baselines/compact.sw.approved.txt b/projects/SelfTest/Baselines/compact.sw.approved.txt index 2138d26e..dff69a66 100644 --- a/projects/SelfTest/Baselines/compact.sw.approved.txt +++ b/projects/SelfTest/Baselines/compact.sw.approved.txt @@ -13,6 +13,7 @@ Misc.tests.cpp:: passed: Compilation.tests.cpp:: passed: std::memcmp(uarr, "123", sizeof(uarr)) == 0 for: 0 == 0 with 2 messages: 'uarr := "123"' and 'sarr := "456"' Compilation.tests.cpp:: passed: std::memcmp(sarr, "456", sizeof(sarr)) == 0 for: 0 == 0 with 2 messages: 'uarr := "123"' and 'sarr := "456"' Compilation.tests.cpp:: passed: +Compilation.tests.cpp:: passed: h1 == h2 for: [1403 helper] == [1403 helper] Exception.tests.cpp:: failed: unexpected exception with message: 'answer := 42' with 1 message: 'expected exception' Exception.tests.cpp:: failed: unexpected exception with message: 'answer := 42'; expression was: thisThrows() with 1 message: 'expected exception' Exception.tests.cpp:: passed: thisThrows() with 1 message: 'answer := 42' diff --git a/projects/SelfTest/Baselines/console.std.approved.txt b/projects/SelfTest/Baselines/console.std.approved.txt index 24755c80..057a5052 100644 --- a/projects/SelfTest/Baselines/console.std.approved.txt +++ b/projects/SelfTest/Baselines/console.std.approved.txt @@ -1096,6 +1096,6 @@ due to unexpected exception with message: Why would you throw a std::string? =============================================================================== -test cases: 213 | 160 passed | 49 failed | 4 failed as expected -assertions: 1228 | 1099 passed | 108 failed | 21 failed as expected +test cases: 214 | 161 passed | 49 failed | 4 failed as expected +assertions: 1229 | 1100 passed | 108 failed | 21 failed as expected diff --git a/projects/SelfTest/Baselines/console.sw.approved.txt b/projects/SelfTest/Baselines/console.sw.approved.txt index 27fa5c59..3c6c282d 100644 --- a/projects/SelfTest/Baselines/console.sw.approved.txt +++ b/projects/SelfTest/Baselines/console.sw.approved.txt @@ -135,6 +135,18 @@ Compilation.tests.cpp: Compilation.tests.cpp:: PASSED: +------------------------------------------------------------------------------- +#1403 +------------------------------------------------------------------------------- +Compilation.tests.cpp: +............................................................................... + +Compilation.tests.cpp:: +PASSED: + REQUIRE( h1 == h2 ) +with expansion: + [1403 helper] == [1403 helper] + ------------------------------------------------------------------------------- #748 - captures with unexpected exceptions outside assertions @@ -10834,6 +10846,6 @@ Misc.tests.cpp:: PASSED: =============================================================================== -test cases: 213 | 147 passed | 62 failed | 4 failed as expected -assertions: 1242 | 1099 passed | 122 failed | 21 failed as expected +test cases: 214 | 148 passed | 62 failed | 4 failed as expected +assertions: 1243 | 1100 passed | 122 failed | 21 failed as expected diff --git a/projects/SelfTest/Baselines/console.swa4.approved.txt b/projects/SelfTest/Baselines/console.swa4.approved.txt index d69844d8..3962de5a 100644 --- a/projects/SelfTest/Baselines/console.swa4.approved.txt +++ b/projects/SelfTest/Baselines/console.swa4.approved.txt @@ -135,6 +135,18 @@ Compilation.tests.cpp: Compilation.tests.cpp:: PASSED: +------------------------------------------------------------------------------- +#1403 +------------------------------------------------------------------------------- +Compilation.tests.cpp: +............................................................................... + +Compilation.tests.cpp:: +PASSED: + REQUIRE( h1 == h2 ) +with expansion: + [1403 helper] == [1403 helper] + ------------------------------------------------------------------------------- #748 - captures with unexpected exceptions outside assertions @@ -341,6 +353,6 @@ with expansion: !true =============================================================================== -test cases: 14 | 11 passed | 1 failed | 2 failed as expected -assertions: 38 | 31 passed | 4 failed | 3 failed as expected +test cases: 15 | 12 passed | 1 failed | 2 failed as expected +assertions: 39 | 32 passed | 4 failed | 3 failed as expected diff --git a/projects/SelfTest/Baselines/junit.sw.approved.txt b/projects/SelfTest/Baselines/junit.sw.approved.txt index ad5caeb1..0926d4b0 100644 --- a/projects/SelfTest/Baselines/junit.sw.approved.txt +++ b/projects/SelfTest/Baselines/junit.sw.approved.txt @@ -1,7 +1,7 @@ - + @@ -9,6 +9,7 @@ + expected exception diff --git a/projects/SelfTest/Baselines/xml.sw.approved.txt b/projects/SelfTest/Baselines/xml.sw.approved.txt index 34287874..1f2d8c30 100644 --- a/projects/SelfTest/Baselines/xml.sw.approved.txt +++ b/projects/SelfTest/Baselines/xml.sw.approved.txt @@ -130,6 +130,17 @@ + + + + h1 == h2 + + + [1403 helper] == [1403 helper] + + + +
@@ -11321,7 +11332,7 @@ loose text artifact
- + - + diff --git a/projects/SelfTest/UsageTests/Compilation.tests.cpp b/projects/SelfTest/UsageTests/Compilation.tests.cpp index 2e518ef2..91b65ca1 100644 --- a/projects/SelfTest/UsageTests/Compilation.tests.cpp +++ b/projects/SelfTest/UsageTests/Compilation.tests.cpp @@ -5,6 +5,27 @@ * file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) */ +// Setup for #1403 -- look for global overloads of operator << for classes +// in a different namespace. + +#include + + + +namespace foo { + struct helper_1403 { + bool operator==(helper_1403) const { return true; } + }; +} + +#ifdef __GNUC__ +#pragma GCC diagnostic ignored "-Wmissing-declarations" +#endif +std::ostream& operator<<(std::ostream& out, foo::helper_1403 const&) { + return out << "[1403 helper]"; +} +/////////////////////////////// + #include "catch.hpp" #include @@ -153,5 +174,12 @@ namespace { namespace CompilationTests { TEST_CASE_METHOD((Fixture_1245), "#1245", "[compilation]") { SUCCEED(); } - + + TEST_CASE("#1403", "[compilation]") { + ::foo::helper_1403 h1, h2; + REQUIRE(h1 == h2); + } + }} // namespace CompilationTests + +