diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 ## Upcoming
 
+## 1.0.2
+
+Bundle test data files in release tarball
+
 ## 1.0.1
 
 Add support with `first-class-families-0.6.0.0`
diff --git a/aeson-schemas.cabal b/aeson-schemas.cabal
--- a/aeson-schemas.cabal
+++ b/aeson-schemas.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 268ce311efa5b339b40dbab7b1b84b4d779ec54bbeda8756b9de810c636745fb
+-- hash: 492943d0169b4a3f5457ebaf335ee3b3630cfbfa520d699dd098450a55875d1a
 
 name:           aeson-schemas
-version:        1.0.1
+version:        1.0.2
 synopsis:       Easily consume JSON data on-demand with type-safety
 description:    Parse JSON data easily and safely without defining new data types. Useful
                 for deeply nested JSON data, which is difficult to parse using the default
@@ -23,6 +23,74 @@
 extra-source-files:
     README.md
     CHANGELOG.md
+    test/all_types.json
+    test/nested.json
+    test/goldens/bool.golden
+    test/goldens/bool_int_double.golden
+    test/goldens/double.golden
+    test/goldens/enum.golden
+    test/goldens/from_object_all_types.golden
+    test/goldens/from_object_namespaced.golden
+    test/goldens/from_object_nested.golden
+    test/goldens/get_empty.golden
+    test/goldens/get_just_start.golden
+    test/goldens/get_ops_after_list.golden
+    test/goldens/get_ops_after_tuple.golden
+    test/goldens/getter_all_types_list.golden
+    test/goldens/getter_all_types_list_item.golden
+    test/goldens/int.golden
+    test/goldens/int_int2.golden
+    test/goldens/lambda_bool.golden
+    test/goldens/list.golden
+    test/goldens/list_explicit.golden
+    test/goldens/list_maybeBool.golden
+    test/goldens/list_maybeInt.golden
+    test/goldens/list_type.golden
+    test/goldens/maybeList.golden
+    test/goldens/maybeList_bang.golden
+    test/goldens/maybeList_bang_list.golden
+    test/goldens/maybeList_bang_list_text.golden
+    test/goldens/maybeList_list.golden
+    test/goldens/maybeList_list_text.golden
+    test/goldens/maybeListNull.golden
+    test/goldens/maybeListNull_bang.golden
+    test/goldens/maybeListNull_list.golden
+    test/goldens/maybeListNull_list_text.golden
+    test/goldens/maybeObj.golden
+    test/goldens/maybeObj_bang.golden
+    test/goldens/maybeObj_bang_text.golden
+    test/goldens/maybeObj_text.golden
+    test/goldens/maybeObjNull.golden
+    test/goldens/maybeObjNull_text.golden
+    test/goldens/nonexistent.golden
+    test/goldens/README_Quickstart.golden
+    test/goldens/scalar.golden
+    test/goldens/schema_def_bool.golden
+    test/goldens/schema_def_custom.golden
+    test/goldens/schema_def_double.golden
+    test/goldens/schema_def_duplicate.golden
+    test/goldens/schema_def_duplicate_extend.golden
+    test/goldens/schema_def_extend.golden
+    test/goldens/schema_def_import_user.golden
+    test/goldens/schema_def_int.golden
+    test/goldens/schema_def_invalid_extend.golden
+    test/goldens/schema_def_list.golden
+    test/goldens/schema_def_list_obj.golden
+    test/goldens/schema_def_maybe.golden
+    test/goldens/schema_def_maybe_obj.golden
+    test/goldens/schema_def_not_object.golden
+    test/goldens/schema_def_obj.golden
+    test/goldens/schema_def_shadow.golden
+    test/goldens/schema_def_text.golden
+    test/goldens/schema_def_unknown_type.golden
+    test/goldens/text.golden
+    test/goldens/unwrap_schema.golden
+    test/goldens/unwrap_schema_bad_bang.golden
+    test/goldens/unwrap_schema_bad_key.golden
+    test/goldens/unwrap_schema_bad_list.golden
+    test/goldens/unwrap_schema_bad_question.golden
+    test/goldens/unwrap_schema_nested_list.golden
+    test/goldens/unwrap_schema_nested_object.golden
 
 source-repository head
   type: git
diff --git a/test/all_types.json b/test/all_types.json
new file mode 100644
--- /dev/null
+++ b/test/all_types.json
@@ -0,0 +1,36 @@
+{
+    "bool": true,
+    "int": 1,
+    "int2": 2,
+    "double": 2.5,
+    "text": "asdf",
+    "scalar": "12,34",
+    "enum": "HELLO",
+    "maybeObject": {
+        "text": "foo"
+    },
+    "maybeObjectNull": null,
+    "maybeList": [
+        {
+            "text": "foo"
+        },
+        {
+            "text": "bar"
+        }
+    ],
+    "maybeListNull": null,
+    "list": [
+        {
+            "type": "bool",
+            "maybeBool": true
+        },
+        {
+            "type": "int",
+            "maybeInt": 2
+        },
+        {
+            "type": "null",
+            "maybeNull": null
+        }
+    ]
+}
diff --git a/test/goldens/README_Quickstart.golden b/test/goldens/README_Quickstart.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/README_Quickstart.golden
@@ -0,0 +1,17 @@
+[1,2,3,4]
+Details for user #1:
+* Name: Alice
+* Age: 30
+* Groups: [{"id": 1, "name": "admin"}]
+Details for user #2:
+* Name: Bob
+* Age: N/A
+* No groups
+Details for user #3:
+* Name: Charlie
+* Age: 25
+* Groups: []
+Details for user #4:
+* Name: Darlene
+* Age: 40
+* Groups: [{"id": 2, "name": "groupA"},{"id": 3, "name": "groupB"}]
diff --git a/test/goldens/bool.golden b/test/goldens/bool.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/bool.golden
@@ -0,0 +1,1 @@
+True
diff --git a/test/goldens/bool_int_double.golden b/test/goldens/bool_int_double.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/bool_int_double.golden
@@ -0,0 +1,1 @@
+(True,1,2.5)
diff --git a/test/goldens/double.golden b/test/goldens/double.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/double.golden
@@ -0,0 +1,1 @@
+2.5
diff --git a/test/goldens/enum.golden b/test/goldens/enum.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/enum.golden
@@ -0,0 +1,1 @@
+HELLO
diff --git a/test/goldens/from_object_all_types.golden b/test/goldens/from_object_all_types.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/from_object_all_types.golden
@@ -0,0 +1,1 @@
+["True","2","Nothing"]
diff --git a/test/goldens/from_object_namespaced.golden b/test/goldens/from_object_namespaced.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/from_object_namespaced.golden
@@ -0,0 +1,1 @@
+["bool","int","null","1","3"]
diff --git a/test/goldens/from_object_nested.golden b/test/goldens/from_object_nested.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/from_object_nested.golden
@@ -0,0 +1,1 @@
+[1,2]
diff --git a/test/goldens/get_empty.golden b/test/goldens/get_empty.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/get_empty.golden
@@ -0,0 +1,6 @@
+1:1:
+  |
+1 | <empty line>
+  | ^
+unexpected end of input
+expecting "[]", '!', '(', '.', '?', '[', lowercase letter, or white space
diff --git a/test/goldens/get_just_start.golden b/test/goldens/get_just_start.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/get_just_start.golden
@@ -0,0 +1,6 @@
+allTypes:1:9:
+  |
+1 | allTypes
+  |         ^
+unexpected end of input
+expecting "[]", '!', ''', '(', '.', '?', '[', or alphanumeric character
diff --git a/test/goldens/get_ops_after_list.golden b/test/goldens/get_ops_after_list.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/get_ops_after_list.golden
@@ -0,0 +1,1 @@
+.[*] operation MUST be last.
diff --git a/test/goldens/get_ops_after_tuple.golden b/test/goldens/get_ops_after_tuple.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/get_ops_after_tuple.golden
@@ -0,0 +1,1 @@
+.(*) operation MUST be last.
diff --git a/test/goldens/getter_all_types_list.golden b/test/goldens/getter_all_types_list.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/getter_all_types_list.golden
@@ -0,0 +1,1 @@
+[{"type": "bool", "maybeBool": Just True, "maybeInt": Nothing, "maybeNull": Nothing},{"type": "int", "maybeBool": Nothing, "maybeInt": Just 2, "maybeNull": Nothing},{"type": "null", "maybeBool": Nothing, "maybeInt": Nothing, "maybeNull": Nothing}]
diff --git a/test/goldens/getter_all_types_list_item.golden b/test/goldens/getter_all_types_list_item.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/getter_all_types_list_item.golden
@@ -0,0 +1,1 @@
+["bool","int","null"]
diff --git a/test/goldens/int.golden b/test/goldens/int.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/int.golden
@@ -0,0 +1,1 @@
+1
diff --git a/test/goldens/int_int2.golden b/test/goldens/int_int2.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/int_int2.golden
@@ -0,0 +1,1 @@
+[1,2]
diff --git a/test/goldens/lambda_bool.golden b/test/goldens/lambda_bool.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/lambda_bool.golden
@@ -0,0 +1,1 @@
+True
diff --git a/test/goldens/list.golden b/test/goldens/list.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/list.golden
@@ -0,0 +1,1 @@
+[{"type": "bool", "maybeBool": Just True, "maybeInt": Nothing, "maybeNull": Nothing},{"type": "int", "maybeBool": Nothing, "maybeInt": Just 2, "maybeNull": Nothing},{"type": "null", "maybeBool": Nothing, "maybeInt": Nothing, "maybeNull": Nothing}]
diff --git a/test/goldens/list_explicit.golden b/test/goldens/list_explicit.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/list_explicit.golden
@@ -0,0 +1,1 @@
+[{"type": "bool", "maybeBool": Just True, "maybeInt": Nothing, "maybeNull": Nothing},{"type": "int", "maybeBool": Nothing, "maybeInt": Just 2, "maybeNull": Nothing},{"type": "null", "maybeBool": Nothing, "maybeInt": Nothing, "maybeNull": Nothing}]
diff --git a/test/goldens/list_maybeBool.golden b/test/goldens/list_maybeBool.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/list_maybeBool.golden
@@ -0,0 +1,1 @@
+[Just True,Nothing,Nothing]
diff --git a/test/goldens/list_maybeInt.golden b/test/goldens/list_maybeInt.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/list_maybeInt.golden
@@ -0,0 +1,1 @@
+[Nothing,Just 2,Nothing]
diff --git a/test/goldens/list_type.golden b/test/goldens/list_type.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/list_type.golden
@@ -0,0 +1,1 @@
+["bool","int","null"]
diff --git a/test/goldens/maybeList.golden b/test/goldens/maybeList.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeList.golden
@@ -0,0 +1,1 @@
+Just [{"text": "foo"},{"text": "bar"}]
diff --git a/test/goldens/maybeListNull.golden b/test/goldens/maybeListNull.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeListNull.golden
@@ -0,0 +1,1 @@
+Nothing
diff --git a/test/goldens/maybeListNull_bang.golden b/test/goldens/maybeListNull_bang.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeListNull_bang.golden
@@ -0,0 +1,1 @@
+Called 'fromJust' on null expression: (AllTypes.result).maybeListNull
diff --git a/test/goldens/maybeListNull_list.golden b/test/goldens/maybeListNull_list.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeListNull_list.golden
@@ -0,0 +1,1 @@
+Nothing
diff --git a/test/goldens/maybeListNull_list_text.golden b/test/goldens/maybeListNull_list_text.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeListNull_list_text.golden
@@ -0,0 +1,1 @@
+Nothing
diff --git a/test/goldens/maybeList_bang.golden b/test/goldens/maybeList_bang.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeList_bang.golden
@@ -0,0 +1,1 @@
+[{"text": "foo"},{"text": "bar"}]
diff --git a/test/goldens/maybeList_bang_list.golden b/test/goldens/maybeList_bang_list.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeList_bang_list.golden
@@ -0,0 +1,1 @@
+[{"text": "foo"},{"text": "bar"}]
diff --git a/test/goldens/maybeList_bang_list_text.golden b/test/goldens/maybeList_bang_list_text.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeList_bang_list_text.golden
@@ -0,0 +1,1 @@
+["foo","bar"]
diff --git a/test/goldens/maybeList_list.golden b/test/goldens/maybeList_list.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeList_list.golden
@@ -0,0 +1,1 @@
+Just [{"text": "foo"},{"text": "bar"}]
diff --git a/test/goldens/maybeList_list_text.golden b/test/goldens/maybeList_list_text.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeList_list_text.golden
@@ -0,0 +1,1 @@
+Just ["foo","bar"]
diff --git a/test/goldens/maybeObj.golden b/test/goldens/maybeObj.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeObj.golden
@@ -0,0 +1,1 @@
+Just {"text": "foo"}
diff --git a/test/goldens/maybeObjNull.golden b/test/goldens/maybeObjNull.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeObjNull.golden
@@ -0,0 +1,1 @@
+Nothing
diff --git a/test/goldens/maybeObjNull_text.golden b/test/goldens/maybeObjNull_text.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeObjNull_text.golden
@@ -0,0 +1,1 @@
+Nothing
diff --git a/test/goldens/maybeObj_bang.golden b/test/goldens/maybeObj_bang.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeObj_bang.golden
@@ -0,0 +1,1 @@
+{"text": "foo"}
diff --git a/test/goldens/maybeObj_bang_text.golden b/test/goldens/maybeObj_bang_text.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeObj_bang_text.golden
@@ -0,0 +1,1 @@
+"foo"
diff --git a/test/goldens/maybeObj_text.golden b/test/goldens/maybeObj_text.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/maybeObj_text.golden
@@ -0,0 +1,1 @@
+Just "foo"
diff --git a/test/goldens/nonexistent.golden b/test/goldens/nonexistent.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/nonexistent.golden
@@ -0,0 +1,1 @@
+Nothing
diff --git a/test/goldens/scalar.golden b/test/goldens/scalar.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/scalar.golden
@@ -0,0 +1,1 @@
+Coordinate (12,34)
diff --git a/test/goldens/schema_def_bool.golden b/test/goldens/schema_def_bool.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_bool.golden
@@ -0,0 +1,1 @@
+SchemaObject {"a": Bool}
diff --git a/test/goldens/schema_def_custom.golden b/test/goldens/schema_def_custom.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_custom.golden
@@ -0,0 +1,1 @@
+SchemaObject {"status": Status}
diff --git a/test/goldens/schema_def_double.golden b/test/goldens/schema_def_double.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_double.golden
@@ -0,0 +1,1 @@
+SchemaObject {"foo123": Double}
diff --git a/test/goldens/schema_def_duplicate.golden b/test/goldens/schema_def_duplicate.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_duplicate.golden
@@ -0,0 +1,1 @@
+Key 'a' specified multiple times
diff --git a/test/goldens/schema_def_duplicate_extend.golden b/test/goldens/schema_def_duplicate_extend.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_duplicate_extend.golden
@@ -0,0 +1,1 @@
+Key 'extra' declared in multiple imported schemas
diff --git a/test/goldens/schema_def_extend.golden b/test/goldens/schema_def_extend.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_extend.golden
@@ -0,0 +1,1 @@
+SchemaObject {"a": Int, "extra": Text}
diff --git a/test/goldens/schema_def_import_user.golden b/test/goldens/schema_def_import_user.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_import_user.golden
@@ -0,0 +1,1 @@
+SchemaObject {"user": {"name": Text}}
diff --git a/test/goldens/schema_def_int.golden b/test/goldens/schema_def_int.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_int.golden
@@ -0,0 +1,1 @@
+SchemaObject {"a": Int}
diff --git a/test/goldens/schema_def_invalid_extend.golden b/test/goldens/schema_def_invalid_extend.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_invalid_extend.golden
@@ -0,0 +1,1 @@
+'GHC.Types.Int' is not a SchemaObject
diff --git a/test/goldens/schema_def_list.golden b/test/goldens/schema_def_list.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_list.golden
@@ -0,0 +1,1 @@
+SchemaObject {"a": List Int}
diff --git a/test/goldens/schema_def_list_obj.golden b/test/goldens/schema_def_list_obj.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_list_obj.golden
@@ -0,0 +1,1 @@
+SchemaObject {"a": List {"b": Int}}
diff --git a/test/goldens/schema_def_maybe.golden b/test/goldens/schema_def_maybe.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_maybe.golden
@@ -0,0 +1,1 @@
+SchemaObject {"a": Maybe Int}
diff --git a/test/goldens/schema_def_maybe_obj.golden b/test/goldens/schema_def_maybe_obj.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_maybe_obj.golden
@@ -0,0 +1,1 @@
+SchemaObject {"a": Maybe {"b": Int}}
diff --git a/test/goldens/schema_def_not_object.golden b/test/goldens/schema_def_not_object.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_not_object.golden
@@ -0,0 +1,1 @@
+`schema` definition must be an object
diff --git a/test/goldens/schema_def_obj.golden b/test/goldens/schema_def_obj.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_obj.golden
@@ -0,0 +1,1 @@
+SchemaObject {"a": {"b": Int}}
diff --git a/test/goldens/schema_def_shadow.golden b/test/goldens/schema_def_shadow.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_shadow.golden
@@ -0,0 +1,1 @@
+SchemaObject {"extra": Bool}
diff --git a/test/goldens/schema_def_text.golden b/test/goldens/schema_def_text.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_text.golden
@@ -0,0 +1,1 @@
+SchemaObject {"some_text": Text}
diff --git a/test/goldens/schema_def_unknown_type.golden b/test/goldens/schema_def_unknown_type.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/schema_def_unknown_type.golden
@@ -0,0 +1,1 @@
+`schema` definition must be an object
diff --git a/test/goldens/text.golden b/test/goldens/text.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/text.golden
@@ -0,0 +1,1 @@
+"asdf"
diff --git a/test/goldens/unwrap_schema.golden b/test/goldens/unwrap_schema.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/unwrap_schema.golden
@@ -0,0 +1,1 @@
+Object (SchemaObject {"a": Maybe {"b": Int}, "b": Int})
diff --git a/test/goldens/unwrap_schema_bad_bang.golden b/test/goldens/unwrap_schema_bad_bang.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/unwrap_schema_bad_bang.golden
@@ -0,0 +1,1 @@
+Cannot use `!` operator on schema: SchemaObject {"type": Text, "maybeBool": Maybe Bool, "maybeInt": Maybe Int, "maybeNull": Maybe Bool}
diff --git a/test/goldens/unwrap_schema_bad_key.golden b/test/goldens/unwrap_schema_bad_key.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/unwrap_schema_bad_key.golden
@@ -0,0 +1,1 @@
+Cannot get key 'a' in schema: SchemaList {"type": Text, "maybeBool": Maybe Bool, "maybeInt": Maybe Int, "maybeNull": Maybe Bool}
diff --git a/test/goldens/unwrap_schema_bad_list.golden b/test/goldens/unwrap_schema_bad_list.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/unwrap_schema_bad_list.golden
@@ -0,0 +1,1 @@
+Cannot use `[]` operator on schema: SchemaObject {"type": Text, "maybeBool": Maybe Bool, "maybeInt": Maybe Int, "maybeNull": Maybe Bool}
diff --git a/test/goldens/unwrap_schema_bad_question.golden b/test/goldens/unwrap_schema_bad_question.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/unwrap_schema_bad_question.golden
@@ -0,0 +1,1 @@
+Cannot use `?` operator on schema: SchemaObject {"type": Text, "maybeBool": Maybe Bool, "maybeInt": Maybe Int, "maybeNull": Maybe Bool}
diff --git a/test/goldens/unwrap_schema_nested_list.golden b/test/goldens/unwrap_schema_nested_list.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/unwrap_schema_nested_list.golden
@@ -0,0 +1,1 @@
+[{"a": Nothing, "b": 1},{"a": Just {"b": 2}, "b": 3}]
diff --git a/test/goldens/unwrap_schema_nested_object.golden b/test/goldens/unwrap_schema_nested_object.golden
new file mode 100644
--- /dev/null
+++ b/test/goldens/unwrap_schema_nested_object.golden
@@ -0,0 +1,1 @@
+[1,2]
diff --git a/test/nested.json b/test/nested.json
new file mode 100644
--- /dev/null
+++ b/test/nested.json
@@ -0,0 +1,14 @@
+{
+    "list": [
+        {
+            "a": null,
+            "b": 1
+        },
+        {
+            "a": {
+                "b": 2
+            },
+            "b": 3
+        }
+    ]
+}
