Add std::byte stringification support (#1686)

* Add `std::byte` support

1. Add byte detection in Catch config
2. Add a `std::byte`specialisation for Catch2::Detail::StringMaker
This commit is contained in:
Stuart Dootson
2019-07-13 13:47:56 +01:00
committed by Martin Hořeňovský
parent 0c27554af5
commit 87739ad3fe
5 changed files with 41 additions and 0 deletions

View File

@@ -0,0 +1,15 @@
#include "catch.hpp"
#if defined(CATCH_CONFIG_CPP17_BYTE)
TEST_CASE( "std::byte -> toString", "[toString][byte][approvals]" ) {
using type = std::byte;
REQUIRE( "0" == ::Catch::Detail::stringify( type{ 0 } ) );
}
TEST_CASE( "std::vector<std::byte> -> toString", "[toString][byte][approvals]" ) {
using type = std::vector<std::byte>;
REQUIRE( "{ 0, 1, 2 }" == ::Catch::Detail::stringify( type{ std::byte{0}, std::byte{1}, std::byte{2} } ) );
}
#endif // CATCH_INTERNAL_CONFIG_CPP17_BYTE