mirror of
https://github.com/ysoftdevs/wapifuzz.git
synced 2026-03-18 23:43:58 +01:00
Folder removed
This commit is contained in:
68
fuzzer/unit_tests/json_schema_parser_tests.py
Normal file
68
fuzzer/unit_tests/json_schema_parser_tests.py
Normal file
@@ -0,0 +1,68 @@
|
||||
import unittest
|
||||
import json
|
||||
from json_schema_parser import generate_json_dict_from_schema
|
||||
|
||||
|
||||
class FuzzingJsonDecoderTests(unittest.TestCase):
|
||||
|
||||
def test_single_bool_primitive(self):
|
||||
# Prepare
|
||||
original_json_schema = '{"test": {"Title": null,"Type": "boolean","Format": null,"Example": null}}'
|
||||
loaded_json_schema = json.loads(original_json_schema)
|
||||
|
||||
# Action
|
||||
generated_json = generate_json_dict_from_schema(loaded_json_schema)
|
||||
|
||||
# Assert
|
||||
self.assertTrue("test" in generated_json)
|
||||
self.assertTrue(isinstance(generated_json["test"], bool))
|
||||
self.assertEqual(generated_json["test"], True)
|
||||
|
||||
def test_nested_string_primitive_with_example(self):
|
||||
# Prepare
|
||||
original_json_schema = '{"test": {"nested": {"Title": null,"Type": "string","Format": null,"Example": "example"}}}'
|
||||
loaded_json_schema = json.loads(original_json_schema)
|
||||
|
||||
# Action
|
||||
generated_json = generate_json_dict_from_schema(loaded_json_schema)
|
||||
|
||||
# Assert
|
||||
self.assertTrue("test" in generated_json)
|
||||
self.assertTrue("nested" in generated_json["test"])
|
||||
self.assertTrue(isinstance(generated_json["test"]["nested"], str))
|
||||
self.assertEqual(generated_json["test"]["nested"], "example")
|
||||
|
||||
def test_array_with_primitive(self):
|
||||
# Prepare
|
||||
original_json_schema = '{"test": {"Type": "array","ArrayItemSchema": {"Title": null,"Type": "number","Format": "double","Example": null}}}'
|
||||
loaded_json_schema = json.loads(original_json_schema)
|
||||
|
||||
# Action
|
||||
generated_json = generate_json_dict_from_schema(loaded_json_schema)
|
||||
|
||||
# Assert
|
||||
self.assertTrue("test" in generated_json)
|
||||
self.assertTrue(isinstance(generated_json["test"], list))
|
||||
self.assertTrue(isinstance(generated_json["test"][0], float))
|
||||
self.assertEqual(generated_json["test"][0], 0.0)
|
||||
|
||||
def test_array_with_complex_object(self):
|
||||
# Prepare
|
||||
original_json_schema = '{"test": {"Type": "array","ArrayItemSchema": {"nested1": {"Title": null,"Type": "string","Format": null,"Example": "example"},"nested2": {"Title": null,"Type": "integer","Format": null,"Example": null}}}}'
|
||||
loaded_json_schema = json.loads(original_json_schema)
|
||||
|
||||
# Action
|
||||
generated_json = generate_json_dict_from_schema(loaded_json_schema)
|
||||
|
||||
# Assert
|
||||
self.assertTrue("test" in generated_json)
|
||||
self.assertTrue(isinstance(generated_json["test"], list))
|
||||
self.assertTrue(isinstance(generated_json["test"][0], dict))
|
||||
self.assertTrue("nested1" in generated_json["test"][0])
|
||||
self.assertTrue("nested2" in generated_json["test"][0])
|
||||
self.assertEqual(generated_json["test"][0]["nested1"], "example")
|
||||
self.assertEqual(generated_json["test"][0]["nested2"], 0)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user