in packages/azure-openapi-validator/autorest/src/spectral-plugin-utils.ts [53:76]
export function printRuleNames(
initiator: IAutoRestPluginInitiator,
ruleset: Ruleset,
resolvedOpenapiType: OpenApiTypes,
description: string
) {
const ruleNames: string[] = Object.keys(ruleset.rules)
// Case-insensitive sort.
// Source: https://stackoverflow.com/a/60922998/986533
.sort(Intl.Collator().compare)
initiator.Message({
Channel: "information",
Text: `Loaded ${ruleNames.length} spectral rules, for OpenAPI type '${OpenApiTypes[resolvedOpenapiType]}' for ${description}:`,
})
for (const ruleName of ruleNames) {
const severity: DiagnosticSeverity = ruleset.rules[ruleName].severity
const sevStr: string = Number(severity) == -1 ? "DISABLED" : DiagnosticSeverity[severity]
initiator.Message({
Channel: "information",
Text: (sevStr == "DISABLED" ? "DISABLED " : "").concat(`Spectral rule for ${description}, severity '${sevStr}': '${ruleName}'`),
})
}
}