Skip to content

Commit c3f4319

Browse files
authored
Merge pull request #384 from ChALkeR/chalker/unique
Improve uniqueItems validation
2 parents 7555d41 + 7766f48 commit c3f4319

File tree

4 files changed

+44
-4
lines changed

4 files changed

+44
-4
lines changed

tests/draft2019-09/uniqueItems.json

+11-1
Original file line numberDiff line numberDiff line change
@@ -96,13 +96,23 @@
9696
},
9797
{
9898
"description": "unique heterogeneous types are valid",
99-
"data": [{}, [1], true, null, 1],
99+
"data": [{}, [1], true, null, 1, "{}"],
100100
"valid": true
101101
},
102102
{
103103
"description": "non-unique heterogeneous types are invalid",
104104
"data": [{}, [1], true, null, {}, 1],
105105
"valid": false
106+
},
107+
{
108+
"description": "different objects are unique",
109+
"data": [{"a": 1, "b": 2}, {"a": 2, "b": 1}],
110+
"valid": true
111+
},
112+
{
113+
"description": "objects are non-unique despite key order",
114+
"data": [{"a": 1, "b": 2}, {"b": 2, "a": 1}],
115+
"valid": false
106116
}
107117
]
108118
},

tests/draft4/uniqueItems.json

+11-1
Original file line numberDiff line numberDiff line change
@@ -96,13 +96,23 @@
9696
},
9797
{
9898
"description": "unique heterogeneous types are valid",
99-
"data": [{}, [1], true, null, 1],
99+
"data": [{}, [1], true, null, 1, "{}"],
100100
"valid": true
101101
},
102102
{
103103
"description": "non-unique heterogeneous types are invalid",
104104
"data": [{}, [1], true, null, {}, 1],
105105
"valid": false
106+
},
107+
{
108+
"description": "different objects are unique",
109+
"data": [{"a": 1, "b": 2}, {"a": 2, "b": 1}],
110+
"valid": true
111+
},
112+
{
113+
"description": "objects are non-unique despite key order",
114+
"data": [{"a": 1, "b": 2}, {"b": 2, "a": 1}],
115+
"valid": false
106116
}
107117
]
108118
},

tests/draft6/uniqueItems.json

+11-1
Original file line numberDiff line numberDiff line change
@@ -96,13 +96,23 @@
9696
},
9797
{
9898
"description": "unique heterogeneous types are valid",
99-
"data": [{}, [1], true, null, 1],
99+
"data": [{}, [1], true, null, 1, "{}"],
100100
"valid": true
101101
},
102102
{
103103
"description": "non-unique heterogeneous types are invalid",
104104
"data": [{}, [1], true, null, {}, 1],
105105
"valid": false
106+
},
107+
{
108+
"description": "different objects are unique",
109+
"data": [{"a": 1, "b": 2}, {"a": 2, "b": 1}],
110+
"valid": true
111+
},
112+
{
113+
"description": "objects are non-unique despite key order",
114+
"data": [{"a": 1, "b": 2}, {"b": 2, "a": 1}],
115+
"valid": false
106116
}
107117
]
108118
},

tests/draft7/uniqueItems.json

+11-1
Original file line numberDiff line numberDiff line change
@@ -96,13 +96,23 @@
9696
},
9797
{
9898
"description": "unique heterogeneous types are valid",
99-
"data": [{}, [1], true, null, 1],
99+
"data": [{}, [1], true, null, 1, "{}"],
100100
"valid": true
101101
},
102102
{
103103
"description": "non-unique heterogeneous types are invalid",
104104
"data": [{}, [1], true, null, {}, 1],
105105
"valid": false
106+
},
107+
{
108+
"description": "different objects are unique",
109+
"data": [{"a": 1, "b": 2}, {"a": 2, "b": 1}],
110+
"valid": true
111+
},
112+
{
113+
"description": "objects are non-unique despite key order",
114+
"data": [{"a": 1, "b": 2}, {"b": 2, "a": 1}],
115+
"valid": false
106116
}
107117
]
108118
},

0 commit comments

Comments
 (0)