Merge branch 'master' into bug/validation-messages

This commit is contained in:
kyle
2017-11-03 17:17:21 -07:00
committed by GitHub
29 changed files with 523 additions and 266 deletions

View File

@@ -3,6 +3,7 @@ import expect from "expect"
import { fromJS, OrderedMap } from "immutable"
import {
mapToList,
validatePattern,
validateMinLength,
validateMaxLength,
validateDateTime,
@@ -216,9 +217,9 @@ describe("utils", function() {
expect(validateFile(1)).toEqual(errorMessage)
expect(validateFile("string")).toEqual(errorMessage)
})
})
})
describe("validateDateTime", function() {
describe("validateDateTime", function() {
let errorMessage = "Value must be a DateTime"
it("doesn't return for valid dates", function() {
@@ -229,7 +230,7 @@ describe("utils", function() {
expect(validateDateTime(null)).toEqual(errorMessage)
expect(validateDateTime("string")).toEqual(errorMessage)
})
})
})
describe("validateGuid", function() {
let errorMessage = "Value must be a Guid"
@@ -243,9 +244,9 @@ describe("utils", function() {
expect(validateGuid(1)).toEqual(errorMessage)
expect(validateGuid("string")).toEqual(errorMessage)
})
})
})
describe("validateMaxLength", function() {
describe("validateMaxLength", function() {
let errorMessage = "Value must be less than MaxLength"
it("doesn't return for valid guid", function() {
@@ -258,9 +259,9 @@ describe("utils", function() {
expect(validateMaxLength("abc", 1)).toEqual(errorMessage)
expect(validateMaxLength("abc", 2)).toEqual(errorMessage)
})
})
})
describe("validateMinLength", function() {
describe("validateMinLength", function() {
let errorMessage = "Value must be greater than MinLength"
it("doesn't return for valid guid", function() {
@@ -272,7 +273,29 @@ describe("utils", function() {
expect(validateMinLength("abc", 5)).toEqual(errorMessage)
expect(validateMinLength("abc", 8)).toEqual(errorMessage)
})
})
})
describe("validatePattern", function() {
let rxPattern = "^(red|blue)"
let errorMessage = "Value must follow pattern " + rxPattern
it("doesn't return for a match", function() {
expect(validatePattern("red", rxPattern)).toBeFalsy()
expect(validatePattern("blue", rxPattern)).toBeFalsy()
})
it("returns a message for invalid pattern", function() {
expect(validatePattern("pink", rxPattern)).toEqual(errorMessage)
expect(validatePattern("123", rxPattern)).toEqual(errorMessage)
})
it("fails gracefully when an invalid regex value is passed", function() {
expect(() => validatePattern("aValue", "---")).toNotThrow()
expect(() => validatePattern("aValue", 1234)).toNotThrow()
expect(() => validatePattern("aValue", null)).toNotThrow()
expect(() => validatePattern("aValue", [])).toNotThrow()
})
})
describe("validateParam", function() {
let param = null
@@ -925,4 +948,5 @@ sbG8iKTs8L3NjcmlwdD4=`)
expect(sanitizeUrl({})).toEqual("")
})
})
})