Compare commits
3
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
027c2187f1 | ||
|
|
157027b833 | ||
|
|
21b0037529 |
@@ -52,3 +52,4 @@ after_success:
|
||||
docker push $DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG;
|
||||
fi;
|
||||
fi;
|
||||
- npm run build-bundle && python node_modules/travis-weigh-in/weigh_in.py dist/swagger-ui-bundle.js
|
||||
|
||||
Generated
+7
-36
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "swagger-ui",
|
||||
"version": "3.17.1",
|
||||
"version": "3.17.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
@@ -4416,36 +4416,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"eslint-plugin-import": {
|
||||
"version": "2.11.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.11.0.tgz",
|
||||
"integrity": "sha1-Fa7qN6Z0mdhI6OmBgG1GJ7VQOBY=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"contains-path": "^0.1.0",
|
||||
"debug": "^2.6.8",
|
||||
"doctrine": "1.5.0",
|
||||
"eslint-import-resolver-node": "^0.3.1",
|
||||
"eslint-module-utils": "^2.2.0",
|
||||
"has": "^1.0.1",
|
||||
"lodash": "^4.17.4",
|
||||
"minimatch": "^3.0.3",
|
||||
"read-pkg-up": "^2.0.0",
|
||||
"resolve": "^1.6.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"doctrine": {
|
||||
"version": "1.5.0",
|
||||
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz",
|
||||
"integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"esutils": "^2.0.2",
|
||||
"isarray": "^1.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"eslint-plugin-mocha": {
|
||||
"version": "4.12.1",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-4.12.1.tgz",
|
||||
@@ -16247,11 +16217,6 @@
|
||||
"resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
|
||||
"integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8="
|
||||
},
|
||||
"reselect": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/reselect/-/reselect-3.0.1.tgz",
|
||||
"integrity": "sha1-79qpjqdFEyTQkrKyFjpqHXqaIUc="
|
||||
},
|
||||
"resolve": {
|
||||
"version": "1.7.1",
|
||||
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.7.1.tgz",
|
||||
@@ -18102,6 +18067,12 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"travis-weigh-in": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/travis-weigh-in/-/travis-weigh-in-1.0.2.tgz",
|
||||
"integrity": "sha1-4bHiFhrg+Wf6aqlx5nLaHSQpyA4=",
|
||||
"dev": true
|
||||
},
|
||||
"treeify": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz",
|
||||
|
||||
+2
-1
@@ -30,7 +30,7 @@
|
||||
"lint-fix": "eslint --cache --ext '.js,.jsx' src test --fix",
|
||||
"test": "run-s just-test-in-node lint-errors",
|
||||
"test-in-node": "run-s lint-errors just-test-in-node",
|
||||
"just-test-in-node": "mocha --require test/setup.js --recursive --compilers js:babel-core/register test/core test/components test/bugs test/swagger-ui-dist-package test/xss",
|
||||
"just-test-in-node": "mocha --require test/setup.js --recursive --compilers js:babel-core/register --require source-map-support test/core test/components test/bugs test/swagger-ui-dist-package test/xss",
|
||||
"just-check-coverage": "nyc npm run just-test-in-node",
|
||||
"test-e2e": "sleep 3 && nightwatch test/e2e/scenarios/ --config test/e2e/nightwatch.json",
|
||||
"e2e-initial-render": "nightwatch test/e2e/scenarios/ --config test/e2e/nightwatch.json --group initial-render",
|
||||
@@ -130,6 +130,7 @@
|
||||
"standard-loader": "^6.0.1",
|
||||
"style-loader": "^0.21.0",
|
||||
"tachyons-sass": "^4.9.2",
|
||||
"travis-weigh-in": "^1.0.2",
|
||||
"uglifyjs-webpack-plugin": "^1.2.5",
|
||||
"url-loader": "^1.0.1",
|
||||
"webpack": "^3.1.0",
|
||||
|
||||
@@ -2,16 +2,20 @@ import React from "react"
|
||||
|
||||
export function isOAS3(jsSpec) {
|
||||
const oasVersion = jsSpec.get("openapi")
|
||||
if(!oasVersion) {
|
||||
if(typeof oasVersion !== "string") {
|
||||
return false
|
||||
}
|
||||
|
||||
return oasVersion.startsWith("3.0.")
|
||||
// we gate against `3.1` becasue we want to explicitly opt into supporting it
|
||||
// at some point in the future -- KS, 7/2018
|
||||
|
||||
// starts with, but is not `3.0.` exactly
|
||||
return oasVersion.startsWith("3.0.") && oasVersion.length > 4
|
||||
}
|
||||
|
||||
export function isSwagger2(jsSpec) {
|
||||
const swaggerVersion = jsSpec.get("swagger")
|
||||
if(!swaggerVersion) {
|
||||
if(typeof swaggerVersion !== "string") {
|
||||
return false
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
import { fromJS } from "immutable"
|
||||
import { isOAS3, isSwagger2 } from "corePlugins/oas3/helpers"
|
||||
import expect from "expect"
|
||||
|
||||
const isOAS3Shorthand = (version) => isOAS3(fromJS({
|
||||
openapi: version
|
||||
}))
|
||||
|
||||
const isSwagger2Shorthand = (version) => isSwagger2(fromJS({
|
||||
swagger: version
|
||||
}))
|
||||
|
||||
describe("isOAS3", function () {
|
||||
it("should recognize valid OAS3 version values", function () {
|
||||
expect(isOAS3Shorthand("3.0.0")).toEqual(true)
|
||||
expect(isOAS3Shorthand("3.0.1")).toEqual(true)
|
||||
expect(isOAS3Shorthand("3.0.11111")).toEqual(true)
|
||||
expect(isOAS3Shorthand("3.0.0-rc0")).toEqual(true)
|
||||
})
|
||||
|
||||
it("should fail for invalid OAS3 version values", function () {
|
||||
expect(isOAS3Shorthand("3.0")).toEqual(false)
|
||||
expect(isOAS3Shorthand("3.0.")).toEqual(false)
|
||||
expect(isOAS3Shorthand("2.0")).toEqual(false)
|
||||
})
|
||||
|
||||
it("should gracefully fail for non-string values", function () {
|
||||
expect(isOAS3Shorthand(3.0)).toEqual(false)
|
||||
expect(isOAS3Shorthand(3)).toEqual(false)
|
||||
expect(isOAS3Shorthand({})).toEqual(false)
|
||||
expect(isOAS3Shorthand(null)).toEqual(false)
|
||||
})
|
||||
|
||||
it("should gracefully fail when `openapi` field is missing", function () {
|
||||
expect(isOAS3(fromJS({
|
||||
openApi: "3.0.0"
|
||||
}))).toEqual(false)
|
||||
expect(isOAS3Shorthand(null)).toEqual(false)
|
||||
})
|
||||
})
|
||||
|
||||
describe("isSwagger2", function () {
|
||||
it("should recognize valid Swagger 2.0 version values", function () {
|
||||
expect(isSwagger2Shorthand("2.0")).toEqual(true)
|
||||
expect(isSwagger2Shorthand("2.0-rc0")).toEqual(true)
|
||||
})
|
||||
|
||||
it("should fail for invalid Swagger 2.0 version values", function () {
|
||||
expect(isSwagger2Shorthand("3.0")).toEqual(false)
|
||||
expect(isSwagger2Shorthand("3.0.")).toEqual(false)
|
||||
expect(isSwagger2Shorthand("2.1")).toEqual(false)
|
||||
expect(isSwagger2Shorthand("1.2")).toEqual(false)
|
||||
expect(isSwagger2Shorthand("2")).toEqual(false)
|
||||
})
|
||||
|
||||
it("should gracefully fail for non-string values", function () {
|
||||
expect(isSwagger2Shorthand(2.0)).toEqual(false)
|
||||
expect(isSwagger2Shorthand(2)).toEqual(false)
|
||||
expect(isSwagger2Shorthand({})).toEqual(false)
|
||||
expect(isSwagger2Shorthand(null)).toEqual(false)
|
||||
})
|
||||
|
||||
it("should gracefully fail when `swagger` field is missing", function () {
|
||||
expect(isSwagger2(fromJS({
|
||||
Swagger: "2.0"
|
||||
}))).toEqual(false)
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user