fastman
Version:
快速api测试及文档生成
188 lines • 11.6 kB
JavaScript
"use strict";
/**
* @license
* Copyright 2017 Red Hat
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
var __extends = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
var validation_1 = require("../validation");
var common_rule_1 = require("./common.rule");
/**
* Implements the Invalid Property Format validation rule. This rule is responsible
* for reporting whenever the value of a property fails to conform to the required
* *format* for that property.
*/
var Oas30InvalidPropertyFormatValidationRule = /** @class */ (function (_super) {
__extends(Oas30InvalidPropertyFormatValidationRule, _super);
function Oas30InvalidPropertyFormatValidationRule() {
return _super !== null && _super.apply(this, arguments) || this;
}
Oas30InvalidPropertyFormatValidationRule.prototype.visitInfo = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("INF-3-003", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
if (this.hasValue(node.termsOfService)) {
this.reportIfInvalid("CTC-3-004", validation_1.OasValidationRuleUtil.isValidUrl(node.termsOfService), node, "The \"termsOfService\" property must be a valid URL.");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitResponseBase = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("RES-3-002", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitResponse = function (node) {
this.visitResponseBase(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitResponseDefinition = function (node) {
this.visitResponseBase(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitContact = function (node) {
if (this.hasValue(node.url)) {
this.reportIfInvalid("CTC-3-001", validation_1.OasValidationRuleUtil.isValidUrl(node.url), node, "The \"url\" property must be a valid URL.");
}
if (this.hasValue(node.email)) {
this.reportIfInvalid("CTC-3-002", validation_1.OasValidationRuleUtil.isValidEmailAddress(node.email), node, "The \"email\" property must be a valid email address.");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitExample = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("EX-3-001", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitExampleDefinition = function (node) {
this.visitExample(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitLink = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("LINK-3-004", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitLinkDefinition = function (node) {
this.visitLink(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitFlow = function (node) {
if (this.hasValue(node.authorizationUrl)) {
this.reportIfInvalid("FLOW-3-003", validation_1.OasValidationRuleUtil.isValidUrl(node.authorizationUrl), node, "The \"authorizationUrl\" property must be a valid URL.");
}
if (this.hasValue(node.tokenUrl)) {
this.reportIfInvalid("FLOW-3-004", validation_1.OasValidationRuleUtil.isValidUrl(node.tokenUrl), node, "The \"tokenUrl\" property must be a valid URL.");
}
if (this.hasValue(node.refreshUrl)) {
this.reportIfInvalid("FLOW-3-005", validation_1.OasValidationRuleUtil.isValidUrl(node.refreshUrl), node, "The \"refreshUrl\" property must be a valid URL.");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitImplicitOAuthFlow = function (node) {
this.visitFlow(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitPasswordOAuthFlow = function (node) {
this.visitFlow(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitClientCredentialsOAuthFlow = function (node) {
this.visitFlow(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitAuthorizationCodeOAuthFlow = function (node) {
this.visitFlow(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitPathItem = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("PATH-3-003", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitRequestBody = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("RB-3-001", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitRequestBodyDefinition = function (node) {
this.visitRequestBody(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitLicense = function (node) {
if (this.hasValue(node.url)) {
this.reportIfInvalid("LIC-3-002", validation_1.OasValidationRuleUtil.isValidUrl(node.url), node, "The \"url\" property must be a valid URL.");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitOperation = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("OP-3-001", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitExternalDocumentation = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("ED-3-001", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
if (this.hasValue(node.url)) {
this.reportIfInvalid("ED-3-003", validation_1.OasValidationRuleUtil.isValidUrl(node.url), node, "The \"url\" property must be a valid URL.");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitParameter = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("PAR-3-005", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitParameterDefinition = function (node) {
this.visitParameter(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitHeader = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("HEAD-3-002", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitHeaderDefinition = function (node) {
this.visitHeader(node);
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitTag = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("TAG-3-002", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitSecurityScheme = function (node) {
if (this.hasValue(node.openIdConnectUrl)) {
this.reportIfInvalid("SS-3-007", validation_1.OasValidationRuleUtil.isValidUrl(node.openIdConnectUrl), node, "The \"openIdConnectUrl\" property must be a valid URL.");
}
if (this.hasValue(node.description)) {
this.reportIfInvalid("SS-3-009", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitServer = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("SRV-3-003", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
if (this.hasValue(node.url)) {
this.reportIfInvalid("SRV-3-002", validation_1.OasValidationRuleUtil.isValidUrlTemplate(node.url), node, "The \"url\" property must be a valid URL.");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitServerVariable = function (node) {
if (this.hasValue(node.description)) {
this.reportIfInvalid("SVAR-3-002", validation_1.OasValidationRuleUtil.isValidCommonMark(node.description), node, "The \"description\" property must be valid CommonMark syntax (or plain text).");
}
};
Oas30InvalidPropertyFormatValidationRule.prototype.visitXML = function (node) {
if (this.hasValue(node.namespace)) {
this.reportIfInvalid("XML-3-002", validation_1.OasValidationRuleUtil.isValidUrl(node.namespace), node, "The \"namespace\" property must be a valid URL.");
}
};
return Oas30InvalidPropertyFormatValidationRule;
}(common_rule_1.Oas30ValidationRule));
exports.Oas30InvalidPropertyFormatValidationRule = Oas30InvalidPropertyFormatValidationRule;
//# sourceMappingURL=invalid-property-format.rule.js.map