1
0
mirror of https://gitlab.nic.cz/turris/reforis/foris-js.git synced 2025-04-18 07:56:39 +02:00
foris-js/src/form/__tests__/validation.test.js
2020-01-09 11:25:29 +01:00

136 lines
4.0 KiB
JavaScript

/*
* Copyright (C) 2019 CZ.NIC z.s.p.o. (http://www.nic.cz/)
*
* This is free software, licensed under the GNU General Public License v3.
* See /LICENSE for more information.
*/
import {
validateDomain,
validateDUID,
validateIPv4Address,
validateIPv6Address,
validateIPv6Prefix,
validateMAC,
} from "validations";
describe("Validation functions", () => {
it("validateIPv4Address valid", () => {
expect(validateIPv4Address("192.168.1.1"))
.toBe(undefined);
expect(validateIPv4Address("1.1.1.1"))
.toBe(undefined);
expect(validateIPv4Address("0.0.0.0"))
.toBe(undefined);
});
it("validateIPv4Address invalid", () => {
expect(validateIPv4Address("invalid"))
.not
.toBe(undefined);
expect(validateIPv4Address("192.256.1.1"))
.not
.toBe(undefined);
expect(validateIPv4Address("192.168.256.1"))
.not
.toBe(undefined);
expect(validateIPv4Address("192.168.1.256"))
.not
.toBe(undefined);
expect(validateIPv4Address("192.168.1.256"))
.not
.toBe(undefined);
});
it("validateIPv6Address valid", () => {
expect(validateIPv6Address("2001:0db8:85a3:0000:0000:8a2e:0370:7334"))
.toBe(undefined);
expect(validateIPv6Address("0:0:0:0:0:0:0:1"))
.toBe(undefined);
expect(validateIPv6Address("::1"))
.toBe(undefined);
expect(validateIPv6Address("::"))
.toBe(undefined);
});
it("validateIPv6Address invalid", () => {
expect(validateIPv6Address("invalid"))
.not
.toBe(undefined);
expect(validateIPv6Address("1.1.1.1"))
.not
.toBe(undefined);
expect(validateIPv6Address("1200::AB00:1234::2552:7777:1313"))
.not
.toBe(undefined);
expect(validateIPv6Address("1200:0000:AB00:1234:O000:2552:7777:1313"))
.not
.toBe(undefined);
});
it("validateIPv6Prefix valid", () => {
expect(validateIPv6Prefix("2002:0000::/16"))
.toBe(undefined);
expect(validateIPv6Prefix("0::/0"))
.toBe(undefined);
});
it("validateIPv6Prefix invalid", () => {
expect(validateIPv6Prefix("2001:0db8:85a3:0000:0000:8a2e:0370:7334"))
.not
.toBe(undefined);
expect(validateIPv6Prefix("::1"))
.not
.toBe(undefined);
expect(validateIPv6Prefix("2002:0000::/999"))
.not
.toBe(undefined);
});
it("validateDomain valid", () => {
expect(validateDomain("example.com"))
.toBe(undefined);
expect(validateDomain("one.two.three"))
.toBe(undefined);
});
it("validateDomain invalid", () => {
expect(validateDomain("test/"))
.not
.toBe(undefined);
expect(validateDomain("."))
.not
.toBe(undefined);
});
it("validateDUID valid", () => {
expect(validateDUID("abcdefAB"))
.toBe(undefined);
expect(validateDUID("ABCDEF12"))
.toBe(undefined);
expect(validateDUID("ABCDEF12AB"))
.toBe(undefined);
});
it("validateDUID invalid", () => {
expect(validateDUID("gggggggg"))
.not
.toBe(undefined);
expect(validateDUID("abcdefABa"))
.not
.toBe(undefined);
});
it("validateMAC valid", () => {
expect(validateMAC("00:D0:56:F2:B5:12"))
.toBe(undefined);
expect(validateMAC("00:26:DD:14:C4:EE"))
.toBe(undefined);
expect(validateMAC("06:00:00:00:00:00"))
.toBe(undefined);
});
it("validateMAC invalid", () => {
expect(validateMAC("00:00:00:00:00:0G"))
.not
.toBe(undefined);
expect(validateMAC("06:00:00:00:00:00:00"))
.not
.toBe(undefined);
});
});