Skip to content

Commit

Permalink
improved: schemas testing
Browse files Browse the repository at this point in the history
  • Loading branch information
williamdes committed May 9, 2019
1 parent ed45a4d commit 97f6095
Show file tree
Hide file tree
Showing 11 changed files with 302 additions and 48 deletions.
8 changes: 8 additions & 0 deletions schemas/doc-url.json
@@ -0,0 +1,8 @@
{
"definitions": {},
"$id": "urn:williamdes:mariadb-mysql-kbs:doc-url",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "string",
"pattern": "^(https|http)://(mariadb.com|dev.mysql.com)",
"minLength": 20
}
15 changes: 15 additions & 0 deletions schemas/doc-version.json
@@ -0,0 +1,15 @@
{
"definitions": {},
"$id": "urn:williamdes:mariadb-mysql-kbs:doc-version",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "number",
"title": "The Version Schema ",
"description": "Version of file",
"default": 1,
"examples": [
1,
1.1,
2.9,
3
]
}
8 changes: 8 additions & 0 deletions schemas/linked-key-var-url.json
@@ -0,0 +1,8 @@
{
"definitions": {},
"$id": "urn:williamdes:mariadb-mysql-kbs:linked-key-var-url",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "string",
"additionalProperties": false,
"pattern": "^[0-9]+#[A-Za-z0-9]+"
}
12 changes: 12 additions & 0 deletions schemas/linked-key-var.json
@@ -0,0 +1,12 @@
{
"definitions": {},
"$id": "urn:williamdes:mariadb-mysql-kbs:linked-key-var",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^[0-9]+": {
"type": "string"
}
}
}
112 changes: 112 additions & 0 deletions schemas/merged-raw.json
@@ -0,0 +1,112 @@
{
"$id": "urn:williamdes:mariadb-mysql-kbs:rawdata",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"definitions": {},
"properties": {
"vars": {
"type": "object",
"patternProperties": {
"^([a-zA-Z_]+)": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 2
},
"scope": {
"type": "array",
"additionalItems": false,
"items": {
"type": "string",
"enum": [
"global",
"session",
"connection"
]
}
},
"type": {
"type": "string"
},
"ids": {
"type": "array",
"additionalItems": false,
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"anchor": {
"type": "string",
"minLength": 1
},
"url": {
"type": "string",
"format": "uri"
}
}
}
},
"cli": {
"type": "string",
"minLength": 2
},
"default": {
"type": "string",
"minLength": 0
},
"dynamic": {
"type": "boolean"
},
"range": {
"type": "object",
"additionalProperties": false,
"properties": {
"from": {
"type": "number"
},
"to": {
"oneOf": [
{
"type": "number"
},
{
"type": "string",
"enum": ["upwards"]
}
]
}
}
},
"validValues": {
"type": "array",
"additionalItems": false,
"items": {
"type": [ "string", "number"]
}
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"version": {
"$ref": "urn:williamdes:mariadb-mysql-kbs:doc-version"
},
"urls": {
"type": "array",
"additionalItems": false,
"items": {
"$ref": "urn:williamdes:mariadb-mysql-kbs:doc-url"
}
},
"types": {
"$ref": "urn:williamdes:mariadb-mysql-kbs:linked-key-var"
},
"varTypes": {
"$ref": "urn:williamdes:mariadb-mysql-kbs:linked-key-var"
}
},
"additionalProperties": false
}
101 changes: 101 additions & 0 deletions schemas/merged-slim.json
@@ -0,0 +1,101 @@
{
"$id": "urn:williamdes:mariadb-mysql-kbs:slimdata",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"definitions": {},
"properties": {
"vars": {
"type": "object",
"patternProperties": {
"^([a-zA-Z_]+)": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 2
},
"scope": {
"type": "array",
"additionalItems": false,
"items": {
"type": "string",
"enum": [
"global",
"session",
"connection"
]
}
},
"type": {
"type": "string"
},
"ids": {
"type": "array",
"additionalItems": false,
"items": {
"$ref": "urn:williamdes:mariadb-mysql-kbs:linked-key-var-url"
}
},
"cli": {
"type": "string",
"minLength": 2
},
"default": {
"type": "string",
"minLength": 0
},
"dynamic": {
"type": "boolean"
},
"range": {
"type": "object",
"additionalProperties": false,
"properties": {
"from": {
"type": "number"
},
"to": {
"oneOf": [
{
"type": "number"
},
{
"type": "string",
"enum": ["upwards"]
}
]
}
}
},
"validValues": {
"type": "array",
"additionalItems": false,
"items": {
"type": [ "string", "number"]
}
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"version": {
"$ref": "urn:williamdes:mariadb-mysql-kbs:doc-version"
},
"urls": {
"type": "array",
"additionalItems": false,
"items": {
"$ref": "urn:williamdes:mariadb-mysql-kbs:doc-url"
}
},
"types": {
"$ref": "urn:williamdes:mariadb-mysql-kbs:linked-key-var"
},
"varTypes": {
"$ref": "urn:williamdes:mariadb-mysql-kbs:linked-key-var"
}
},
"additionalProperties": false
}
40 changes: 8 additions & 32 deletions schemas/merged-ultraslim.json
@@ -1,24 +1,8 @@
{
"$id": "urn:williamdes:mariadb-mysql-kbs:slimdata",
"$id": "urn:williamdes:mariadb-mysql-kbs:ultraslimdata",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"definitions": {
"linkedKeyVar": {
"type": "object",
"properties": {
"patternProperties": {
"^([a-zA-Z_]+)": {
"type": "string"
}
},
"additionalProperties": false
}
},
"docURL": {
"type": "string",
"pattern": "^(https|http)://(mariadb.com|dev.mysql.com)"
}
},
"definitions": {},
"properties": {
"vars": {
"$id": "/properties/vars",
Expand All @@ -35,6 +19,7 @@
},
"a": {
"type": "array",
"additionalItems": false,
"items": {
"type": "object",
"properties": {
Expand All @@ -58,29 +43,20 @@
"additionalProperties": false
},
"version": {
"$id": "/properties/version",
"type": "number",
"title": "The Version Schema ",
"description": "Version of file",
"default": 1,
"examples": [
1,
1.1,
2.9,
3
]
"$ref": "urn:williamdes:mariadb-mysql-kbs:doc-version"
},
"urls": {
"type": "array",
"additionalItems": false,
"items": {
"$ref": "#/definitions/docURL"
"$ref": "urn:williamdes:mariadb-mysql-kbs:doc-url"
}
},
"types": {
"$ref": "#/definitions/linkedKeyVar"
"$ref": "urn:williamdes:mariadb-mysql-kbs:linked-key-var"
},
"varTypes": {
"$ref": "#/definitions/linkedKeyVar"
"$ref": "urn:williamdes:mariadb-mysql-kbs:linked-key-var"
}
},
"additionalProperties": false
Expand Down
1 change: 1 addition & 0 deletions test/.phpunit.result.cache
@@ -0,0 +1 @@
C:37:"PHPUnit\Runner\DefaultTestResultCache":787:{a:2:{s:7:"defects";a:4:{s:51:"Williamdes\MariaDBMySQLKBS\DataTest::testFileSample";i:4;s:49:"Williamdes\MariaDBMySQLKBS\DataTest::testFileSlim";i:4;s:54:"Williamdes\MariaDBMySQLKBS\DataTest::testFileUltraSlim";i:4;s:48:"Williamdes\MariaDBMySQLKBS\DataTest::testFileRaw";i:4;}s:5:"times";a:7:{s:51:"Williamdes\MariaDBMySQLKBS\DataTest::testFileSample";d:0.041;s:49:"Williamdes\MariaDBMySQLKBS\DataTest::testFileSlim";d:0.028;s:54:"Williamdes\MariaDBMySQLKBS\DataTest::testFileUltraSlim";d:0.007;s:48:"Williamdes\MariaDBMySQLKBS\DataTest::testFileRaw";d:0.015;s:59:"Williamdes\MariaDBMySQLKBS\SlimDataTest::testCreateInstance";d:0.004;s:56:"Williamdes\MariaDBMySQLKBS\SlimDataTest::testToJsonEmpty";d:0.004;s:64:"Williamdes\MariaDBMySQLKBS\SlimDataTest::testToJsonWithVariables";d:0.005;}}}

0 comments on commit 97f6095

Please sign in to comment.