1
0
mirror of https://gitlab.nic.cz/turris/reforis/foris-js.git synced 2025-04-19 08:06:40 +02:00
foris-js/src/form/__tests__/validation.test.js
2020-08-18 16:17:00 +02:00

91 lines
3.4 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 "utils/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);
});
});