Lines Matching full:json

2 //  __|  |   __|     |   | |  JSON for Modern C++ (supporting code)
4 // |_____|_____|_____|_|___| https://github.com/nlohmann/json
11 #include <nlohmann/json.hpp>
12 using json = nlohmann::json;
17 TEST_CASE("hash<nlohmann::json>")
19 // Collect hashes for different JSON values and make sure that they are distinct
26 hashes.insert(std::hash<json> {}(json(nullptr)));
29 hashes.insert(std::hash<json> {}(json(true)));
30 hashes.insert(std::hash<json> {}(json(false)));
33 hashes.insert(std::hash<json> {}(json("")));
34 hashes.insert(std::hash<json> {}(json("foo")));
37 hashes.insert(std::hash<json> {}(json(0)));
38 hashes.insert(std::hash<json> {}(json(static_cast<unsigned>(0))));
40 hashes.insert(std::hash<json> {}(json(-1)));
41 hashes.insert(std::hash<json> {}(json(0.0)));
42 hashes.insert(std::hash<json> {}(json(42.23)));
45 hashes.insert(std::hash<json> {}(json::array()));
46 hashes.insert(std::hash<json> {}(json::array({1, 2, 3})));
49 hashes.insert(std::hash<json> {}(json::object()));
50 hashes.insert(std::hash<json> {}(json::object({{"foo", "bar"}})));
53 hashes.insert(std::hash<json> {}(json::binary({})));
54 hashes.insert(std::hash<json> {}(json::binary({}, 0)));
55 hashes.insert(std::hash<json> {}(json::binary({}, 42)));
56 hashes.insert(std::hash<json> {}(json::binary({1, 2, 3})));
57 hashes.insert(std::hash<json> {}(json::binary({1, 2, 3}, 0)));
58 hashes.insert(std::hash<json> {}(json::binary({1, 2, 3}, 42)));
61 hashes.insert(std::hash<json> {}(json(json::value_t::discarded)));
68 // Collect hashes for different JSON values and make sure that they are distinct