mirror of
				https://github.com/RetroDECK/ES-DE.git
				synced 2025-04-10 19:15:13 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			95 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
[
 | 
						|
    {
 | 
						|
        "description": "extends",
 | 
						|
        "schema": {
 | 
						|
            "properties": {"bar": {"type": "integer", "required": true}},
 | 
						|
            "extends": {
 | 
						|
                "properties": {
 | 
						|
                    "foo": {"type": "string", "required": true}
 | 
						|
                }
 | 
						|
            }
 | 
						|
        },
 | 
						|
        "tests": [
 | 
						|
            {
 | 
						|
                "description": "extends",
 | 
						|
                "data": {"foo": "baz", "bar": 2},
 | 
						|
                "valid": true
 | 
						|
            },
 | 
						|
            {
 | 
						|
                "description": "mismatch extends",
 | 
						|
                "data": {"foo": "baz"},
 | 
						|
                "valid": false
 | 
						|
            },
 | 
						|
            {
 | 
						|
                "description": "mismatch extended",
 | 
						|
                "data": {"bar": 2},
 | 
						|
                "valid": false
 | 
						|
            },
 | 
						|
            {
 | 
						|
                "description": "wrong type",
 | 
						|
                "data": {"foo": "baz", "bar": "quux"},
 | 
						|
                "valid": false
 | 
						|
            }
 | 
						|
        ]
 | 
						|
    },
 | 
						|
    {
 | 
						|
        "description": "multiple extends",
 | 
						|
        "schema": {
 | 
						|
            "properties": {"bar": {"type": "integer", "required": true}},
 | 
						|
            "extends" : [
 | 
						|
                {
 | 
						|
                    "properties": {
 | 
						|
                        "foo": {"type": "string", "required": true}
 | 
						|
                    }
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    "properties": {
 | 
						|
                        "baz": {"type": "null", "required": true}
 | 
						|
                    }
 | 
						|
                }
 | 
						|
            ]
 | 
						|
        },
 | 
						|
        "tests": [
 | 
						|
            {
 | 
						|
                "description": "valid",
 | 
						|
                "data": {"foo": "quux", "bar": 2, "baz": null},
 | 
						|
                "valid": true
 | 
						|
            },
 | 
						|
            {
 | 
						|
                "description": "mismatch first extends",
 | 
						|
                "data": {"bar": 2, "baz": null},
 | 
						|
                "valid": false
 | 
						|
            },
 | 
						|
            {
 | 
						|
                "description": "mismatch second extends",
 | 
						|
                "data": {"foo": "quux", "bar": 2},
 | 
						|
                "valid": false
 | 
						|
            },
 | 
						|
            {
 | 
						|
                "description": "mismatch both",
 | 
						|
                "data": {"bar": 2},
 | 
						|
                "valid": false
 | 
						|
            }
 | 
						|
        ]
 | 
						|
    },
 | 
						|
    {
 | 
						|
        "description": "extends simple types",
 | 
						|
        "schema": {
 | 
						|
            "minimum": 20,
 | 
						|
            "extends": {"maximum": 30}
 | 
						|
        },
 | 
						|
        "tests": [
 | 
						|
            {
 | 
						|
                "description": "valid",
 | 
						|
                "data": 25,
 | 
						|
                "valid": true
 | 
						|
            },
 | 
						|
            {
 | 
						|
                "description": "mismatch extends",
 | 
						|
                "data": 35,
 | 
						|
                "valid": false
 | 
						|
            }
 | 
						|
        ]
 | 
						|
    }
 | 
						|
]
 |