From 2dff1449fdb316680fde56e04fd6e7f5299264e6 Mon Sep 17 00:00:00 2001 From: bighappyface Date: Sun, 9 Oct 2016 15:43:06 -0500 Subject: [PATCH] feat(demo): add simple demo script --- demo/README.md | 14 ++++++++++++++ demo/data.json | 3 +++ demo/demo.php | 17 +++++++++++++++++ demo/schema.json | 3 +++ 4 files changed, 37 insertions(+) create mode 100644 demo/README.md create mode 100644 demo/data.json create mode 100644 demo/demo.php create mode 100644 demo/schema.json diff --git a/demo/README.md b/demo/README.md new file mode 100644 index 00000000..0309ee89 --- /dev/null +++ b/demo/README.md @@ -0,0 +1,14 @@ +## JsonSchema\Validator Demo + +This demo script uses the example from the root README.md and provides sample JSON files for testing `JsonSchema\Validator`. + +To change or replace the JSON schema document, please edit `/path/to/json-schema/demo/schema.json`. + +To change or replace the JSON document that is validated, please edit `/path/to/json-schema/demo/data.json`. + +To run the demo, change the path in the following example and run it in your terminal. + +``` +cd /path/to/json-schema/demo +php demo.php // The supplied JSON validates against the schema. +``` diff --git a/demo/data.json b/demo/data.json new file mode 100644 index 00000000..69591b71 --- /dev/null +++ b/demo/data.json @@ -0,0 +1,3 @@ +{ + "foo":"bar" +} diff --git a/demo/demo.php b/demo/demo.php new file mode 100644 index 00000000..e921df6f --- /dev/null +++ b/demo/demo.php @@ -0,0 +1,17 @@ +check($data, (object)['$ref' => 'file://' . realpath('schema.json')]); + +if ($validator->isValid()) { + echo "The supplied JSON validates against the schema.\n"; +} else { + echo "JSON does not validate. Violations:\n"; + foreach ($validator->getErrors() as $error) { + echo sprintf("[%s] %s\n", $error['property'], $error['message']); + } +} diff --git a/demo/schema.json b/demo/schema.json new file mode 100644 index 00000000..e6307dc1 --- /dev/null +++ b/demo/schema.json @@ -0,0 +1,3 @@ +{ + "type": "object" +}