| // __ _____ _____ _____ |
| // __| | __| | | | JSON for Modern C++ (supporting code) |
| // | | |__ | | | | | | version 3.11.2 |
| // |_____|_____|_____|_|___| https://github.com/nlohmann/json |
| // |
| // SPDX-FileCopyrightText: 2013-2022 Niels Lohmann <https://nlohmann.me> |
| // SPDX-License-Identifier: MIT |
| |
| #include "doctest_compatibility.h" |
| |
| #include <nlohmann/json.hpp> |
| |
| TEST_CASE("user-defined string literals") |
| { |
| auto j_expected = nlohmann::json::parse(R"({"foo": "bar", "baz": 42})"); |
| auto ptr_expected = nlohmann::json::json_pointer("/foo/bar"); |
| |
| SECTION("using namespace nlohmann::literals::json_literals") |
| { |
| using namespace nlohmann::literals::json_literals; // NOLINT(google-build-using-namespace) |
| |
| CHECK(R"({"foo": "bar", "baz": 42})"_json == j_expected); |
| CHECK("/foo/bar"_json_pointer == ptr_expected); |
| } |
| |
| SECTION("using namespace nlohmann::json_literals") |
| { |
| using namespace nlohmann::json_literals; // NOLINT(google-build-using-namespace) |
| |
| CHECK(R"({"foo": "bar", "baz": 42})"_json == j_expected); |
| CHECK("/foo/bar"_json_pointer == ptr_expected); |
| } |
| |
| SECTION("using namespace nlohmann::literals") |
| { |
| using namespace nlohmann::literals; // NOLINT(google-build-using-namespace) |
| |
| CHECK(R"({"foo": "bar", "baz": 42})"_json == j_expected); |
| CHECK("/foo/bar"_json_pointer == ptr_expected); |
| } |
| |
| SECTION("using namespace nlohmann") |
| { |
| using namespace nlohmann; // NOLINT(google-build-using-namespace) |
| |
| CHECK(R"({"foo": "bar", "baz": 42})"_json == j_expected); |
| CHECK("/foo/bar"_json_pointer == ptr_expected); |
| } |
| |
| #ifndef JSON_TEST_NO_GLOBAL_UDLS |
| SECTION("global namespace") |
| { |
| CHECK(R"({"foo": "bar", "baz": 42})"_json == j_expected); |
| CHECK("/foo/bar"_json_pointer == ptr_expected); |
| } |
| #endif |
| } |