Files
SCM-Manager/scm-ui/ui-components/src/validation.test.ts

117 lines
2.8 KiB
TypeScript
Raw Normal View History

import * as validator from './validation';
describe('test name validation', () => {
2019-09-12 11:29:42 +02:00
// invalid names taken from ValidationUtilTest.java
const invalidNames = [
'@test',
' test 123',
' test 123 ',
'test 123 ',
'test/123',
'test%123',
'test:123',
't ',
' t',
' t ',
'',
' invalid_name',
'another%one',
'!!!',
'!_!',
2019-09-12 11:29:42 +02:00
];
for (let name of invalidNames) {
it(`should return false for '${name}'`, () => {
expect(validator.isNameValid(name)).toBe(false);
2019-09-12 11:29:42 +02:00
});
}
2019-09-12 11:29:42 +02:00
// valid names taken from ValidationUtilTest.java
const validNames = [
'test',
'test.git',
'Test123.git',
'Test123-git',
'Test_user-123.git',
'test@scm-manager.de',
'test123',
'tt',
't',
'valid_name',
'another1',
'stillValid',
'this.one_as-well',
'and@this',
2019-09-12 11:29:42 +02:00
];
for (let name of validNames) {
it(`should return true for '${name}'`, () => {
expect(validator.isNameValid(name)).toBe(true);
2019-09-12 11:29:42 +02:00
});
}
});
describe('test mail validation', () => {
2019-09-12 11:29:42 +02:00
// invalid taken from ValidationUtilTest.java
const invalid = [
'ostfalia.de',
'@ostfalia.de',
's.sdorra@',
's.sdorra@ostfalia',
's.sdorra@ ostfalia.de',
's.sdorra@[ostfalia.de',
2019-09-12 11:29:42 +02:00
];
for (let mail of invalid) {
it(`should return false for '${mail}'`, () => {
expect(validator.isMailValid(mail)).toBe(false);
2019-09-12 11:29:42 +02:00
});
}
2019-09-12 11:29:42 +02:00
// valid taken from ValidationUtilTest.java
const valid = [
's.sdorra@ostfalia.de',
'sdorra@ostfalia.de',
's.sdorra@hbk-bs.de',
's.sdorra@gmail.com',
's.sdorra@t.co',
's.sdorra@ucla.college',
's.sdorra@example.xn--p1ai',
's.sdorra@scm.solutions',
2019-09-12 11:29:42 +02:00
"s'sdorra@scm.solutions",
'"S Sdorra"@scm.solutions',
2019-09-12 11:29:42 +02:00
];
for (let mail of valid) {
it(`should return true for '${mail}'`, () => {
expect(validator.isMailValid(mail)).toBe(true);
2019-09-12 11:29:42 +02:00
});
}
});
describe('test number validation', () => {
const invalid = ['1a', '35gu', 'dj6', '45,5', 'test'];
2019-09-12 11:29:42 +02:00
for (let number of invalid) {
it(`should return false for '${number}'`, () => {
expect(validator.isNumberValid(number)).toBe(false);
2019-09-12 11:29:42 +02:00
});
}
const valid = ['1', '35', '2', '235', '34.4'];
2019-09-12 11:29:42 +02:00
for (let number of valid) {
it(`should return true for '${number}'`, () => {
expect(validator.isNumberValid(number)).toBe(true);
2019-09-12 11:29:42 +02:00
});
}
});
describe('test path validation', () => {
const invalid = ['//', 'some//path', 'end//'];
2019-09-12 11:29:42 +02:00
for (let path of invalid) {
it(`should return false for '${path}'`, () => {
2019-09-12 11:39:04 +02:00
expect(validator.isPathValid(path)).toBe(false);
2019-09-12 11:29:42 +02:00
});
}
const valid = ['', '/', 'dir', 'some/path', 'end/'];
2019-09-12 11:29:42 +02:00
for (let path of valid) {
it(`should return true for '${path}'`, () => {
2019-09-12 11:39:04 +02:00
expect(validator.isPathValid(path)).toBe(true);
2019-09-12 11:29:42 +02:00
});
}
});