summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/sol2/Catch/projects/SelfTest/ToStringWhich.cpp
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/sol2/Catch/projects/SelfTest/ToStringWhich.cpp')
-rw-r--r--3rdparty/sol2/Catch/projects/SelfTest/ToStringWhich.cpp68
1 files changed, 0 insertions, 68 deletions
diff --git a/3rdparty/sol2/Catch/projects/SelfTest/ToStringWhich.cpp b/3rdparty/sol2/Catch/projects/SelfTest/ToStringWhich.cpp
deleted file mode 100644
index 1d4aa892581..00000000000
--- a/3rdparty/sol2/Catch/projects/SelfTest/ToStringWhich.cpp
+++ /dev/null
@@ -1,68 +0,0 @@
-#include "catch.hpp"
-/*
- Demonstrate which version of toString/StringMaker is being used
- for various types
-*/
-
-
-struct has_toString { };
-struct has_maker {};
-struct has_maker_and_toString {};
-
-namespace Catch {
- inline std::string toString( const has_toString& ) {
- return "toString( has_toString )";
- }
- inline std::string toString( const has_maker_and_toString& ) {
- return "toString( has_maker_and_toString )";
- }
- template<>
- struct StringMaker<has_maker> {
- static std::string convert( const has_maker& ) {
- return "StringMaker<has_maker>";
- }
- };
- template<>
- struct StringMaker<has_maker_and_toString> {
- static std::string convert( const has_maker_and_toString& ) {
- return "StringMaker<has_maker_and_toString>";
- }
- };
-}
-
-// Call the overload
-TEST_CASE( "toString( has_toString )", "[toString]" ) {
- has_toString item;
- REQUIRE( Catch::toString( item ) == "toString( has_toString )" );
-}
-
-// Call the overload
-TEST_CASE( "toString( has_maker )", "[toString]" ) {
- has_maker item;
- REQUIRE( Catch::toString( item ) == "StringMaker<has_maker>" );
-}
-
-// Call the overload
-TEST_CASE( "toString( has_maker_and_toString )", "[toString]" ) {
- has_maker_and_toString item;
- REQUIRE( Catch::toString( item ) == "toString( has_maker_and_toString )" );
-}
-
-// Vectors...
-TEST_CASE( "toString( vectors<has_toString )", "[toString]" ) {
- std::vector<has_toString> v(1);
- // This invokes template<T> toString which actually gives us '{ ? }'
- REQUIRE( Catch::toString( v ) == "{ {?} }" );
-}
-
-TEST_CASE( "toString( vectors<has_maker )", "[toString]" ) {
- std::vector<has_maker> v(1);
- REQUIRE( Catch::toString( v ) == "{ StringMaker<has_maker> }" );
-}
-
-
-TEST_CASE( "toString( vectors<has_maker_and_toString )", "[toString]" ) {
- std::vector<has_maker_and_toString> v(1);
- // Note: This invokes the template<T> toString -> StringMaker
- REQUIRE( Catch::toString( v ) == "{ StringMaker<has_maker_and_toString> }" );
-}