From 3f00dddab19d866ea8698eb50eddad84ce227448 Mon Sep 17 00:00:00 2001 From: Anjan Kaur <ankaur@anjansmacbook.corp.adobe.com> Date: Mon, 25 Mar 2019 20:24:48 +0530 Subject: [PATCH] Fixing failing tests and examples --- examples/docs/README.md | 1 + examples/docs/nestedobj.schema.md | 93 +++++++++++++++++++ .../generated-schemas/nestedobj.schema.json | 29 ++++++ examples/schemas/nestedobj.schema.json | 4 +- spec/examples/README.md | 1 + spec/examples/nestedobj.schema.md | 93 +++++++++++++++++++ spec/lib/integrationTest.spec.js | 2 +- templates/md/nested-property.ejs | 3 +- 8 files changed, 222 insertions(+), 4 deletions(-) create mode 100644 examples/docs/nestedobj.schema.md create mode 100644 examples/generated-schemas/nestedobj.schema.json create mode 100644 spec/examples/nestedobj.schema.md diff --git a/examples/docs/README.md b/examples/docs/README.md index 0502d30..7a6a424 100644 --- a/examples/docs/README.md +++ b/examples/docs/README.md @@ -20,6 +20,7 @@ * [Extensible](./extensible.schema.md) – `https://example.com/schemas/extensible` (Unknown) * [Identifiable](./identifiable.schema.md) – `https://example.com/schemas/identifiable` (Unknown) * [Join Types](./join.schema.md) – `https://example.com/schemas/join` (Unknown) +* [Nested Object](./nestedobj.schema.md) – `https://example.com/schemas/nestedobject` (Unknown) * [Pattern Properties](./pattern.schema.md) – `https://example.com/schemas/pattern` (Unknown) * [Simple](./simple.schema.md) – `https://example.com/schemas/simple` (Unknown) * [Simple Types](./simpletypes.schema.md) – `https://example.com/schemas/simpletypes` (Unknown) diff --git a/examples/docs/nestedobj.schema.md b/examples/docs/nestedobj.schema.md new file mode 100644 index 0000000..f3459ef --- /dev/null +++ b/examples/docs/nestedobj.schema.md @@ -0,0 +1,93 @@ +--- +template: reference +foo: bar +--- + +# Nested Object Schema + +``` +https://example.com/schemas/nestedobject +``` + + +| [Abstract](../abstract.md) | Extensible | [Status](../status.md) | Identifiable | Custom Properties | Additional Properties | Defined In | +|----------------------------|------------|------------------------|--------------|-------------------|-----------------------|------------| +| Can be instantiated | No | Experimental | No | Forbidden | Forbidden | [nestedobj.schema.json](nestedobj.schema.json) | + +# Nested Object Properties + +| Property | Type | Required | Nullable | Defined by | +|----------|------|----------|----------|------------| +| [settings](#settings) | `object` | Optional | No | Nested Object (this schema) | + +## settings + +settings + +`settings` + +* is optional +* type: `object` +* defined in this schema + +### settings Type + + +`object` with following properties: + + +| Property | Type | Required | +|----------|------|----------| +| `collaborators`| object | Optional | + + + +#### collaborators + +collaborators + +`collaborators` + +* is optional +* type: `object` + +##### collaborators Type + + +`object` with following properties: + + +| Property | Type | Required | +|----------|------|----------| +| `id`| string | Optional | + + + +#### id + + +`id` + +* is optional +* type: `string` + +##### id Type + + +`string` + + + + + + + + + + + + + + + + diff --git a/examples/generated-schemas/nestedobj.schema.json b/examples/generated-schemas/nestedobj.schema.json new file mode 100644 index 0000000..62f814d --- /dev/null +++ b/examples/generated-schemas/nestedobj.schema.json @@ -0,0 +1,29 @@ +{ + "$id": "https://example.com/schemas/nestedobject", + "$schema": "http://json-schema.org/draft-07/schema", + "title": "Nested Object", + "type": "object", + "properties": { + "settings": { + "description": "settings", + "type": "object", + "properties": { + "collaborators": { + "description": "collaborators", + "type": "object", + "patternProperties": { + ".*": { + "type": "string" + } + }, + "properties": { + "id": { + "type": "string" + } + } + } + } + } + }, + "additionalProperties": false +} \ No newline at end of file diff --git a/examples/schemas/nestedobj.schema.json b/examples/schemas/nestedobj.schema.json index fffda3b..f068d4e 100644 --- a/examples/schemas/nestedobj.schema.json +++ b/examples/schemas/nestedobj.schema.json @@ -1,7 +1,7 @@ { - "$id": "test.json", + "$id": "https://example.com/schemas/nestedobject", "$schema": "http://json-schema.org/draft-07/schema", - "title": "test", + "title": "Nested Object", "type": "object", "properties": { "settings": { diff --git a/spec/examples/README.md b/spec/examples/README.md index 0502d30..7a6a424 100644 --- a/spec/examples/README.md +++ b/spec/examples/README.md @@ -20,6 +20,7 @@ * [Extensible](./extensible.schema.md) – `https://example.com/schemas/extensible` (Unknown) * [Identifiable](./identifiable.schema.md) – `https://example.com/schemas/identifiable` (Unknown) * [Join Types](./join.schema.md) – `https://example.com/schemas/join` (Unknown) +* [Nested Object](./nestedobj.schema.md) – `https://example.com/schemas/nestedobject` (Unknown) * [Pattern Properties](./pattern.schema.md) – `https://example.com/schemas/pattern` (Unknown) * [Simple](./simple.schema.md) – `https://example.com/schemas/simple` (Unknown) * [Simple Types](./simpletypes.schema.md) – `https://example.com/schemas/simpletypes` (Unknown) diff --git a/spec/examples/nestedobj.schema.md b/spec/examples/nestedobj.schema.md new file mode 100644 index 0000000..f3459ef --- /dev/null +++ b/spec/examples/nestedobj.schema.md @@ -0,0 +1,93 @@ +--- +template: reference +foo: bar +--- + +# Nested Object Schema + +``` +https://example.com/schemas/nestedobject +``` + + +| [Abstract](../abstract.md) | Extensible | [Status](../status.md) | Identifiable | Custom Properties | Additional Properties | Defined In | +|----------------------------|------------|------------------------|--------------|-------------------|-----------------------|------------| +| Can be instantiated | No | Experimental | No | Forbidden | Forbidden | [nestedobj.schema.json](nestedobj.schema.json) | + +# Nested Object Properties + +| Property | Type | Required | Nullable | Defined by | +|----------|------|----------|----------|------------| +| [settings](#settings) | `object` | Optional | No | Nested Object (this schema) | + +## settings + +settings + +`settings` + +* is optional +* type: `object` +* defined in this schema + +### settings Type + + +`object` with following properties: + + +| Property | Type | Required | +|----------|------|----------| +| `collaborators`| object | Optional | + + + +#### collaborators + +collaborators + +`collaborators` + +* is optional +* type: `object` + +##### collaborators Type + + +`object` with following properties: + + +| Property | Type | Required | +|----------|------|----------| +| `id`| string | Optional | + + + +#### id + + +`id` + +* is optional +* type: `string` + +##### id Type + + +`string` + + + + + + + + + + + + + + + + diff --git a/spec/lib/integrationTest.spec.js b/spec/lib/integrationTest.spec.js index 061d7de..8ed4797 100644 --- a/spec/lib/integrationTest.spec.js +++ b/spec/lib/integrationTest.spec.js @@ -55,7 +55,7 @@ describe('Compare results', () => { ls.on('close', code => { expect(code).toEqual(0); const files = readdirSync('./spec/examples').filter(item => !(/(^|\/)\.[^\/\.]/g).test(item)); - expect(files.length).toEqual(21); + expect(files.length).toEqual(22); files.forEach(file => { if (statSync('./spec/examples/' + file).isFile()) { diff --git a/templates/md/nested-property.ejs b/templates/md/nested-property.ejs index 2bd24d2..5f1b6cb 100644 --- a/templates/md/nested-property.ejs +++ b/templates/md/nested-property.ejs @@ -8,8 +8,9 @@ #### <%=name %> <% if (schema.title) { %>##### <%= schema.title %><% } %> - +<% if (schema.description) { %> <%- (""+schema.description).replace(/\n/g, '\n\n') %> +<% } %> `<%=name %>` -- GitLab