Merge pull request #3852 from swagger-api/bug/3851-validatorurl-sanitization-type

Check for input type and string length before sanitizing a URL
This commit is contained in:
kyle
2017-10-31 12:45:13 -07:00
committed by GitHub
2 changed files with 16 additions and 0 deletions

View File

@@ -723,6 +723,10 @@ export const shallowEqualKeys = (a,b, keys) => {
} }
export function sanitizeUrl(url) { export function sanitizeUrl(url) {
if(typeof url !== "string" || url === "") {
return ""
}
return braintreeSanitizeUrl(url) return braintreeSanitizeUrl(url)
} }

View File

@@ -912,5 +912,17 @@ sbG8iKTs8L3NjcmlwdD4=`)
expect(res).toEqual("https://swagger.io/") expect(res).toEqual("https://swagger.io/")
}) })
it("should gracefully handle empty strings", function() {
expect(sanitizeUrl("")).toEqual("")
})
it("should gracefully handle non-string values", function() {
expect(sanitizeUrl(123)).toEqual("")
expect(sanitizeUrl(null)).toEqual("")
expect(sanitizeUrl(undefined)).toEqual("")
expect(sanitizeUrl([])).toEqual("")
expect(sanitizeUrl({})).toEqual("")
})
}) })
}) })