Skip to content

Commit 66d9251

Browse files
committed
more init-list value construction tests
1 parent a07e38b commit 66d9251

File tree

1 file changed

+55
-5
lines changed

1 file changed

+55
-5
lines changed

test/value.cpp

Lines changed: 55 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2132,15 +2132,55 @@ class value_test
21322132
testInitList()
21332133
{
21342134
{
2135-
value jv{};
2136-
BOOST_TEST( jv.is_null() );
2135+
value jv1{};
2136+
BOOST_TEST( jv1.is_null() );
2137+
2138+
value jv2 = {};
2139+
BOOST_TEST( jv2.is_null() );
2140+
2141+
value jv3 = value{};
2142+
BOOST_TEST( jv3.is_null() );
21372143
}
2138-
#ifndef BOOST_JSON_LEGACY_INIT_LIST_BEHAVIOR
21392144
{
2140-
value jv{0};
2141-
BOOST_TEST( jv == 0 );
2145+
value jv1{1, 2};
2146+
BOOST_TEST(( jv1 == array{1,2} ));
2147+
2148+
value jv2 = {1, 2};
2149+
BOOST_TEST(( jv2 == array{1,2} ));
2150+
2151+
value jv3 = value{1, 2};
2152+
BOOST_TEST(( jv3 == array{1,2} ));
2153+
2154+
value jv4{{1, 2}};
2155+
BOOST_TEST(( jv4 == array{1,2} ));
2156+
2157+
value jv5 = {{1, 2}};
2158+
BOOST_TEST(( jv5 == array{1,2} ));
2159+
2160+
value jv6 = value{{1, 2}};
2161+
BOOST_TEST(( jv6 == array{1,2} ));
21422162
}
2163+
{
2164+
#ifndef BOOST_JSON_LEGACY_INIT_LIST_BEHAVIOR
2165+
value jv1{0};
2166+
BOOST_TEST( jv1 == 0 );
2167+
2168+
value jv2 = {0};
2169+
BOOST_TEST( jv2 == 0 );
2170+
2171+
value jv3 = value{0};
2172+
BOOST_TEST( jv3 == 0 );
2173+
21432174
#endif
2175+
value jv4{{0}};
2176+
BOOST_TEST( jv4 == array{0} );
2177+
2178+
value jv5 = {{0}};
2179+
BOOST_TEST( jv5 == array{0} );
2180+
2181+
value jv6 = value{{0}};
2182+
BOOST_TEST( jv6 == array{0} );
2183+
}
21442184

21452185
check_array(value{0,0,0}, 0, 0, 0);
21462186
check_array(value{false,false,false}, false, false, false);
@@ -2151,6 +2191,16 @@ class value_test
21512191
check_array(value{false,2,"3",nullptr}, false, 2, "3", nullptr);
21522192
check_array(value{2,false,"3"}, 2, false, "3");
21532193
check_array(value{true,2,"3"}, true, 2, "3");
2194+
2195+
check_array({0,0,0}, 0, 0, 0);
2196+
check_array({false,false,false}, false, false, false);
2197+
check_array({false,2,false}, false, 2, false);
2198+
check_array({false,2,"3"}, false, 2, "3");
2199+
check_array({false,false}, false, false);
2200+
check_array({false,2}, false, 2);
2201+
check_array({false,2,"3",nullptr}, false, 2, "3", nullptr);
2202+
check_array({2,false,"3"}, 2, false, "3");
2203+
check_array({true,2,"3"}, true, 2, "3");
21542204
}
21552205

21562206
//------------------------------------------------------

0 commit comments

Comments
 (0)