✅ add tests for binary serialization
This commit is contained in:
		
							parent
							
								
									3cd2a977ae
								
							
						
					
					
						commit
						cf4a6552f3
					
				
					 1 changed files with 7 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -212,13 +212,16 @@ TEST_CASE("dump with binary values")
 | 
			
		|||
    SECTION("serialize_binary = false")
 | 
			
		||||
    {
 | 
			
		||||
        auto binary = json::binary_array({1, 2, 3, 4});
 | 
			
		||||
        auto binary_empty = json::binary_array({});
 | 
			
		||||
        json object = {{"key", binary}};
 | 
			
		||||
        json array = {"value", 1, binary};
 | 
			
		||||
 | 
			
		||||
        CHECK_THROWS_AS(binary.dump(), json::type_error);
 | 
			
		||||
        CHECK_THROWS_AS(binary_empty.dump(), json::type_error);
 | 
			
		||||
        CHECK_THROWS_AS(object.dump(), json::type_error);
 | 
			
		||||
        CHECK_THROWS_AS(array.dump(), json::type_error);
 | 
			
		||||
        CHECK_THROWS_WITH(binary.dump(), "[json.exception.type_error.317] cannot serialize binary data to text JSON");
 | 
			
		||||
        CHECK_THROWS_WITH(binary_empty.dump(), "[json.exception.type_error.317] cannot serialize binary data to text JSON");
 | 
			
		||||
        CHECK_THROWS_WITH(object.dump(), "[json.exception.type_error.317] cannot serialize binary data to text JSON");
 | 
			
		||||
        CHECK_THROWS_WITH(array.dump(), "[json.exception.type_error.317] cannot serialize binary data to text JSON");
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			@ -226,10 +229,12 @@ TEST_CASE("dump with binary values")
 | 
			
		|||
    SECTION("serialize_binary = true")
 | 
			
		||||
    {
 | 
			
		||||
        auto binary = json::binary_array({1, 2, 3, 4});
 | 
			
		||||
        auto binary_empty = json::binary_array({});
 | 
			
		||||
        json object = {{"key", binary}};
 | 
			
		||||
        json array = {"value", 1, binary};
 | 
			
		||||
 | 
			
		||||
        CHECK(binary.dump(-1, ' ', false, json::error_handler_t::strict, true) == "b[1,2,3,4]");
 | 
			
		||||
        CHECK(binary_empty.dump(-1, ' ', false, json::error_handler_t::strict, true) == "b[]");
 | 
			
		||||
        CHECK(object.dump(-1, ' ', false, json::error_handler_t::strict, true) == "{\"key\":b[1,2,3,4]}");
 | 
			
		||||
        CHECK(array.dump(-1, ' ', false, json::error_handler_t::strict, true) == "[\"value\",1,b[1,2,3,4]]");
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			@ -237,10 +242,12 @@ TEST_CASE("dump with binary values")
 | 
			
		|||
    SECTION("serialize_binary = true, pretty-printed")
 | 
			
		||||
    {
 | 
			
		||||
        auto binary = json::binary_array({1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20});
 | 
			
		||||
        auto binary_empty = json::binary_array({});
 | 
			
		||||
        json object = {{"key", binary}};
 | 
			
		||||
        json array = {"value", 1, binary};
 | 
			
		||||
 | 
			
		||||
        CHECK(binary.dump(4, ' ', false, json::error_handler_t::strict, true) == "b[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]");
 | 
			
		||||
        CHECK(binary_empty.dump(4, ' ', false, json::error_handler_t::strict, true) == "b[]");
 | 
			
		||||
        CHECK(object.dump(4, ' ', false, json::error_handler_t::strict, true) == "{\n"
 | 
			
		||||
              "    \"key\": b[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]\n"
 | 
			
		||||
              "}");
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue