- Rename fixtures/items.json to fixtures/array.json to better reflect array testing constraints. - Update reference paths in src/tests/fixtures.rs and across other fixture JSON files. - Remove unused HashMap import in src/validator/rules/dict.rs to resolve the compiler warning.
191 lines
4.0 KiB
JSON
191 lines
4.0 KiB
JSON
[
|
|
{
|
|
"description": "by int",
|
|
"database": {
|
|
"types": [
|
|
{
|
|
"name": "multipleOf_0_0",
|
|
"schemas": {
|
|
"multipleOf_0_0": {
|
|
"multipleOf": 2
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"tests": [
|
|
{
|
|
"description": "int by int",
|
|
"data": 10,
|
|
"schema_id": "multipleOf_0_0",
|
|
"action": "validate",
|
|
"expect": {
|
|
"success": true
|
|
}
|
|
},
|
|
{
|
|
"description": "int by int fail",
|
|
"data": 7,
|
|
"schema_id": "multipleOf_0_0",
|
|
"action": "validate",
|
|
"expect": {
|
|
"success": false,
|
|
"errors": [
|
|
{
|
|
"code": "MULTIPLE_OF_VIOLATED",
|
|
"values": {
|
|
"value": "7",
|
|
"multiple_of": "2"
|
|
},
|
|
"details": {
|
|
"path": "",
|
|
"schema": "multipleOf_0_0"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"description": "ignores non-numbers",
|
|
"data": "foo",
|
|
"schema_id": "multipleOf_0_0",
|
|
"action": "validate",
|
|
"expect": {
|
|
"success": true
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"description": "by number",
|
|
"database": {
|
|
"types": [
|
|
{
|
|
"name": "multipleOf_1_0",
|
|
"schemas": {
|
|
"multipleOf_1_0": {
|
|
"multipleOf": 1.5
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"tests": [
|
|
{
|
|
"description": "zero is multiple of anything",
|
|
"data": 0,
|
|
"schema_id": "multipleOf_1_0",
|
|
"action": "validate",
|
|
"expect": {
|
|
"success": true
|
|
}
|
|
},
|
|
{
|
|
"description": "4.5 is multiple of 1.5",
|
|
"data": 4.5,
|
|
"schema_id": "multipleOf_1_0",
|
|
"action": "validate",
|
|
"expect": {
|
|
"success": true
|
|
}
|
|
},
|
|
{
|
|
"description": "35 is not multiple of 1.5",
|
|
"data": 35,
|
|
"schema_id": "multipleOf_1_0",
|
|
"action": "validate",
|
|
"expect": {
|
|
"success": false,
|
|
"errors": [
|
|
{
|
|
"code": "MULTIPLE_OF_VIOLATED",
|
|
"values": {
|
|
"multiple_of": "1.5",
|
|
"value": "35"
|
|
},
|
|
"details": {
|
|
"path": "",
|
|
"schema": "multipleOf_1_0"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"description": "by small number",
|
|
"database": {
|
|
"types": [
|
|
{
|
|
"name": "multipleOf_2_0",
|
|
"schemas": {
|
|
"multipleOf_2_0": {
|
|
"multipleOf": 0.0001
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"tests": [
|
|
{
|
|
"description": "0.0075 is multiple of 0.0001",
|
|
"data": 0.0075,
|
|
"schema_id": "multipleOf_2_0",
|
|
"action": "validate",
|
|
"expect": {
|
|
"success": true
|
|
}
|
|
},
|
|
{
|
|
"description": "0.00751 is not multiple of 0.0001",
|
|
"data": 0.00751,
|
|
"schema_id": "multipleOf_2_0",
|
|
"action": "validate",
|
|
"expect": {
|
|
"success": false,
|
|
"errors": [
|
|
{
|
|
"code": "MULTIPLE_OF_VIOLATED",
|
|
"values": {
|
|
"value": "0.00751",
|
|
"multiple_of": "0.0001"
|
|
},
|
|
"details": {
|
|
"path": "",
|
|
"schema": "multipleOf_2_0"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"description": "small multiple of large integer",
|
|
"database": {
|
|
"types": [
|
|
{
|
|
"name": "multipleOf_3_0",
|
|
"schemas": {
|
|
"multipleOf_3_0": {
|
|
"type": "integer",
|
|
"multipleOf": 1e-8
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"tests": [
|
|
{
|
|
"description": "any integer is a multiple of 1e-8",
|
|
"data": 12391239123,
|
|
"schema_id": "multipleOf_3_0",
|
|
"action": "validate",
|
|
"expect": {
|
|
"success": true
|
|
}
|
|
}
|
|
]
|
|
}
|
|
] |