/
default.json
128 lines (128 loc) 路 4.49 KB
/
default.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
{
"rules" : [
{
"name": "parameter-description",
"object": "parameter",
"enabled": true,
"description": "parameter objects should have a description",
"truthy": "description"
},
{
"name": "parameter-name-regex",
"object": "parameter",
"enabled": false,
"description": "parameter names should match RFC6570",
"pattern": { "property": "name", "value": "" }
},
{
"name": "operation-operationId",
"object": "operation",
"enabled": true,
"description": "operation should have an operationId",
"truthy": "operationId"
},
{
"name": "operation-summary-or-description",
"object": "operation",
"enabled": true,
"description": "operation should have summary or description",
"or": ["summary", "description"]
},
{
"name": "operation-tags",
"object": "operation",
"enabled": true,
"description": "operation should have non-empty tags array",
"truthy": "tags",
"skip": "isCallback"
},
{
"name": "path-keys-no-trailing-slash",
"object": "pathInfo<--This doesnt exist so this whole rule is broke",
"enabled": false,
"description": "path item keys should not end with a slash",
"notEndWith": { "property": "$key", "value": "/" }
},
{
"name":"server-trailing-slash",
"object": "server",
"enabled": true,
"description": "server url should not have a trailing slash",
"notEndWith": { "property": "url", "value": "/" }
},
{
"name": "openapi-tags",
"object": "openapi",
"enabled": true,
"description": "openapi object should have non-empty tags array",
"truthy": "tags"
},
{
"name": "openapi-tags-alphabetical",
"object": "openapi",
"enabled": true,
"description": "openapi object should have alphabetical tags",
"alphabetical": {
"properties": "tags",
"keyedBy": "name"
}
},
{
"name": "reference-no-other-properties",
"object": "reference",
"enabled": true,
"description": "reference objects should only have a $ref property",
"truthy": "$ref",
"properties": 1
},
{
"name": "pathItem-summary-or-description",
"object": "pathItem",
"enabled": false,
"description": "pathItem should have summary or description",
"or": ["summary", "description"]
},
{
"name": "example-value-or-externalValue",
"object": "example",
"enabled": true,
"description": "example should have either value or externalValue",
"xor": ["value", "externalValue"]
},
{
"name": "reference-components-regex",
"object": "reference",
"enabled": true,
"description": "reference components should all match spec. regex",
"pattern": { "property": "$ref", "omit": "#", "split": "/", "value": "^[a-zA-Z0-9\\.\\-_]+$" }
},
{
"name":"no-script-tags-in-markdown",
"object": "*",
"enabled": true,
"description": "markdown descriptions should not contain <script> tags",
"notContain": { "properties": [ "description" ], "value": "<script" }
},
{
"name":"info-contact",
"object": "info",
"enabled": true,
"description": "info object should contain contact object",
"truthy": "contact"
},
{
"name":"license-apimatic-bug",
"object": "license",
"enabled": true,
"description": "license url should not point at gruntjs",
"notContain": { "properties": [ "url" ], "value": "gruntjs" }
},
{
"name":"no-eval-in-descriptions",
"object": "*",
"enabled": true,
"description": "markdown descriptions should not contain 'eval('",
"notContain": { "properties": [ "description","title" ], "value": "eval(" }
}
]
}