@@ -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