aboutsummaryrefslogtreecommitdiff
path: root/tests/core/encoding
diff options
context:
space:
mode:
Diffstat (limited to 'tests/core/encoding')
-rw-r--r--tests/core/encoding/json/test_core_json.odin18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/core/encoding/json/test_core_json.odin b/tests/core/encoding/json/test_core_json.odin
index 10e09df3b..42ac9ce0f 100644
--- a/tests/core/encoding/json/test_core_json.odin
+++ b/tests/core/encoding/json/test_core_json.odin
@@ -350,6 +350,24 @@ unmarshal_json :: proc(t: ^testing.T) {
}
@test
+unmarshal_empty_struct :: proc(t: ^testing.T) {
+ TestStruct :: struct {}
+ test := make(map[string]TestStruct)
+ input: = `{
+ "test_1": {},
+ "test_2": {}
+ }`
+ err := json.unmarshal(transmute([]u8)input, &test)
+ defer {
+ for k in test {
+ delete(k)
+ }
+ delete(test)
+ }
+ testing.expect(t, err == nil, "Expected empty struct to unmarshal without error")
+}
+
+@test
surrogate :: proc(t: ^testing.T) {
input := `+ + * 😃 - /`