@@ -3346,6 +3346,10 @@ static void test_ext(void **state) {
33463346 assert_int_equal (esize32 , 0x10000 );
33473347 assert_memory_equal (outbuf32 , buf32 , 16 );
33483348
3349+ M_BufferSeek (& buf , 0 );
3350+ assert_true (cmp_read_object (& cmp , & obj ));
3351+ assert_true (cmp_object_as_ext (& obj , & etype , & esize32 ));
3352+
33493353 M_BufferSeek (& buf , 0 );
33503354
33513355 assert_true (cmp_write_ext_marker (& cmp , 2 , 1 ));
@@ -4193,31 +4197,33 @@ void test_skipping(void **state) {
41934197 assert_true (cmp_write_nil (& cmp ));
41944198 assert_true (cmp_write_integer (& cmp , -8 ));
41954199 assert_true (cmp_write_array (& cmp , 10 ));
4196- assert_true (cmp_write_uinteger (& cmp , 8 ));
4197- assert_true (cmp_write_integer (& cmp , -120 ));
4198- assert_true (cmp_write_uinteger (& cmp , 200 ));
4199- assert_true (cmp_write_integer (& cmp , -32000 ));
4200- assert_true (cmp_write_uinteger (& cmp , 64000 ));
4201- assert_true (cmp_write_integer (& cmp , -33000 ));
4202- assert_true (cmp_write_uinteger (& cmp , 66000 ));
4203- assert_true (cmp_write_integer (& cmp , -2150000000 ));
4204- assert_true (cmp_write_uinteger (& cmp , 4300000000 ));
4205- assert_true (cmp_write_map (& cmp , 3 ));
4206- assert_true (cmp_write_str (& cmp , "a" , 1 ));
4207- assert_true (cmp_write_str (& cmp , "apple" , 5 ));
4208- assert_true (cmp_write_str (& cmp , "b" , 1 ));
4209- assert_true (cmp_write_array (& cmp , 2 ));
4210- assert_true (cmp_write_str (& cmp , "banana" , 6 ));
4211- assert_true (cmp_write_str (& cmp , "blackberry" , 10 ));
4212- assert_true (cmp_write_str (& cmp , "c" , 1 ));
4213- assert_true (cmp_write_str (& cmp , "coconut" , 7 ));
4200+ assert_true (cmp_write_uinteger (& cmp , 8 ));
4201+ assert_true (cmp_write_integer (& cmp , -120 ));
4202+ assert_true (cmp_write_uinteger (& cmp , 200 ));
4203+ assert_true (cmp_write_integer (& cmp , -32000 ));
4204+ assert_true (cmp_write_uinteger (& cmp , 64000 ));
4205+ assert_true (cmp_write_integer (& cmp , -33000 ));
4206+ assert_true (cmp_write_uinteger (& cmp , 66000 ));
4207+ assert_true (cmp_write_integer (& cmp , -2150000000 ));
4208+ assert_true (cmp_write_uinteger (& cmp , 4300000000 ));
4209+ assert_true (cmp_write_map (& cmp , 3 ));
4210+ assert_true (cmp_write_str (& cmp , "a" , 1 ));
4211+ assert_true (cmp_write_str (& cmp , "apple" , 5 ));
4212+ assert_true (cmp_write_str (& cmp , "b" , 1 ));
4213+ assert_true (cmp_write_array (& cmp , 2 ));
4214+ assert_true (cmp_write_str (& cmp , "banana" , 6 ));
4215+ assert_true (cmp_write_str (& cmp , "blackberry" , 10 ));
4216+ assert_true (cmp_write_str (& cmp , "c" , 1 ));
4217+ assert_true (cmp_write_str (& cmp , "coconut" , 7 ));
42144218 assert_true (cmp_write_map (& cmp , 66000 ));
42154219
42164220 for (uint32_t i = 0 ; i < 66000 ; i ++ ) {
4217- cmp_write_integer (& cmp , 1 );
4218- cmp_write_integer (& cmp , 1 );
4221+ assert_true ( cmp_write_integer (& cmp , 1 ) );
4222+ assert_true ( cmp_write_integer (& cmp , 1 ) );
42194223 }
42204224
4225+ assert_true (cmp_write_nil (& cmp ));
4226+
42214227 M_BufferSeek (& buf , 0 );
42224228 assert_true (cmp_skip_object (& cmp , & obj ));
42234229
@@ -4228,15 +4234,41 @@ void test_skipping(void **state) {
42284234 assert_true (cmp_skip_object_no_limit (& cmp ));
42294235 assert_true (cmp_skip_object_no_limit (& cmp ));
42304236 assert_true (cmp_skip_object_no_limit (& cmp ));
4231- assert_false (cmp_skip_object_no_limit (& cmp ));
4237+ assert_true (cmp_skip_object_no_limit (& cmp ));
42324238 cmp .skip = skip ;
42334239
4240+ M_BufferSeek (& buf , 0 );
4241+ assert_true (cmp_skip_object_no_limit (& cmp ));
4242+ assert_true (cmp_skip_object_no_limit (& cmp ));
4243+ assert_true (cmp_skip_object_no_limit (& cmp ));
4244+ assert_true (cmp_skip_object_no_limit (& cmp ));
4245+ assert_true (cmp_skip_object_no_limit (& cmp ));
4246+ assert_true (cmp_skip_object_no_limit (& cmp ));
4247+
4248+ M_BufferSeek (& buf , 0 );
4249+ assert_true (cmp_skip_object_no_limit (& cmp ));
4250+ assert_true (cmp_skip_object_no_limit (& cmp ));
4251+ assert_true (cmp_skip_object_no_limit (& cmp ));
4252+ assert_false (cmp_skip_object (& cmp , & obj ));
4253+
42344254 M_BufferSeek (& buf , 0 );
42354255 assert_true (cmp_skip_object_no_limit (& cmp ));
42364256 assert_true (cmp_skip_object_no_limit (& cmp ));
42374257 assert_true (cmp_skip_object_no_limit (& cmp ));
42384258 assert_false (cmp_skip_object_limit (& cmp , & obj , 1 ));
42394259
4260+ M_BufferSeek (& buf , 0 );
4261+ assert_true (cmp_skip_object_no_limit (& cmp ));
4262+ assert_true (cmp_skip_object_no_limit (& cmp ));
4263+ assert_true (cmp_skip_object_no_limit (& cmp ));
4264+ assert_false (cmp_skip_object_limit (& cmp , & obj , 2 ));
4265+
4266+ M_BufferSeek (& buf , 0 );
4267+ assert_true (cmp_skip_object_no_limit (& cmp ));
4268+ assert_true (cmp_skip_object_no_limit (& cmp ));
4269+ assert_true (cmp_skip_object_no_limit (& cmp ));
4270+ assert_true (cmp_skip_object_limit (& cmp , & obj , 3 ));
4271+
42404272 M_BufferSeek (& buf , 0 );
42414273 assert_true (cmp_read_object (& cmp , & obj ));
42424274 assert_int_equal (obj .type , CMP_TYPE_BOOLEAN );
@@ -4292,14 +4324,6 @@ void test_skipping(void **state) {
42924324 assert_true (cmp_read_object (& cmp , & obj ));
42934325 assert_int_equal (obj .type , CMP_TYPE_MAP32 );
42944326
4295- M_BufferSeek (& buf , 0 );
4296- assert_true (cmp_skip_object_no_limit (& cmp ));
4297- assert_true (cmp_skip_object_no_limit (& cmp ));
4298- assert_true (cmp_skip_object_no_limit (& cmp ));
4299- assert_true (cmp_skip_object_no_limit (& cmp ));
4300- assert_true (cmp_skip_object_no_limit (& cmp ));
4301- assert_false (cmp_skip_object_no_limit (& cmp ));
4302-
43034327 M_BufferClear (& buf );
43044328 assert_true (cmp_write_float (& cmp , 1.1f ));
43054329 assert_true (cmp_write_double (& cmp , 1.1 ));
0 commit comments