From c78dbc366c818a9ae7358e13a52c2abe82bf98eb Mon Sep 17 00:00:00 2001 From: Guillaume Racicot <gufideg@gmail.com> Date: Thu, 29 Mar 2018 01:03:57 -0400 Subject: [PATCH] Added test for conversion to string_view --- test/src/unit-conversions.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/test/src/unit-conversions.cpp b/test/src/unit-conversions.cpp index d67f5acb..0b4bd912 100644 --- a/test/src/unit-conversions.cpp +++ b/test/src/unit-conversions.cpp @@ -39,6 +39,10 @@ using nlohmann::json; #include <unordered_set> #include <valarray> +#if defined(JSON_HAS_CPP_17) +#include <string_view> +#endif + TEST_CASE("value conversion") { SECTION("get an object (explicit)") @@ -292,6 +296,13 @@ TEST_CASE("value conversion") std::string s = j.get<std::string>(); CHECK(json(s) == j); } +#if defined(JSON_HAS_CPP_17) + SECTION("std::string_view") + { + std::string_view s = j.get<std::string_view>(); + CHECK(json(s) == j); + } +#endif SECTION("exception in case of a non-string type") { @@ -331,6 +342,14 @@ TEST_CASE("value conversion") CHECK(json(s) == j); } +#if defined(JSON_HAS_CPP_17) + SECTION("std::string_view") + { + std::string_view s = j; + CHECK(json(s) == j); + } +#endif + SECTION("std::string") { std::string s = j;