MCPcopy Create free account
hub / github.com/boostorg/json / testExchange

Method testExchange

test/value.cpp:990–1050  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

988 using tt = T;
989
990 void
991 testExchange()
992 {
993 // string{}
994 {
995 BOOST_TEST(value("abc").is_string());
996 BOOST_TEST(value(std::string()).is_string());
997 BOOST_TEST(value(string_view()).is_string());
998
999 { value jv; BOOST_TEST((jv = "abc").is_string()); }
1000 { value jv; BOOST_TEST((jv = std::string()).is_string()); }
1001 { value jv; BOOST_TEST((jv = string_view()).is_string()); }
1002 }
1003
1004 // numbers
1005 {
1006 BOOST_TEST(value(tt<signed char>{}).is_int64());
1007 BOOST_TEST(value(tt<short>{}).is_int64());
1008 BOOST_TEST(value(tt<int>{}).is_int64());
1009 BOOST_TEST(value(tt<long>{}).is_int64());
1010 BOOST_TEST(value(tt<long long>{}).is_int64());
1011 BOOST_TEST(value(tt<unsigned char>{}).is_uint64());
1012 BOOST_TEST(value(tt<unsigned short>{}).is_uint64());
1013 BOOST_TEST(value(tt<unsigned int>{}).is_uint64());
1014 BOOST_TEST(value(tt<unsigned long>{}).is_uint64());
1015 BOOST_TEST(value(tt<unsigned long long>{}).is_uint64());
1016 BOOST_TEST(value(tt<float>{}).is_double());
1017 BOOST_TEST(value(tt<double>{}).is_double());
1018
1019 { value jv; BOOST_TEST((jv = tt<signed char>{}).is_int64()); }
1020 { value jv; BOOST_TEST((jv = tt<short>{}).is_int64()); }
1021 { value jv; BOOST_TEST((jv = tt<int>{}).is_int64()); }
1022 { value jv; BOOST_TEST((jv = tt<long>{}).is_int64()); }
1023 { value jv; BOOST_TEST((jv = tt<long long>{}).is_int64()); }
1024 { value jv; BOOST_TEST((jv = tt<unsigned char>{}).is_uint64()); }
1025 { value jv; BOOST_TEST((jv = tt<unsigned short>{}).is_uint64()); }
1026 { value jv; BOOST_TEST((jv = tt<unsigned int>{}).is_uint64()); }
1027 { value jv; BOOST_TEST((jv = tt<unsigned long>{}).is_uint64()); }
1028 { value jv; BOOST_TEST((jv = tt<unsigned long long>{}).is_uint64()); }
1029 { value jv; BOOST_TEST((jv = tt<float>{}).is_double()); }
1030 { value jv; BOOST_TEST((jv = tt<double>{}).is_double()); }
1031 }
1032
1033 // bool
1034 {
1035 BOOST_TEST(value(true).is_bool());
1036 BOOST_TEST(value(false).is_bool());
1037
1038 { value jv; BOOST_TEST((jv = true).is_bool()); }
1039 { value jv; BOOST_TEST((jv = false).is_bool()); }
1040 }
1041
1042 // nullptr
1043 {
1044 BOOST_TEST(value(nullptr).is_null());
1045
1046 { value jv("x"); BOOST_TEST((jv = nullptr).is_null()); }
1047 }

Callers

nothing calls this directly

Calls 9

string_viewClass · 0.85
is_stringMethod · 0.80
is_int64Method · 0.80
is_uint64Method · 0.80
is_doubleMethod · 0.80
is_boolMethod · 0.80
is_nullMethod · 0.80
valueClass · 0.70
stringClass · 0.50

Tested by

no test coverage detected