PromucFlow_constructor/app/client/src/widgets/DatePickerWidget2/widget/derived.test.js

84 lines
2.4 KiB
JavaScript
Raw Normal View History

import derivedProperty from "./derived";
import moment from "moment";
import _ from "lodash";
describe("Validates Derived Properties", () => {
it("selectedDate is between min and max dates", () => {
const { isValidDate } = derivedProperty;
const input = {
isRequired: true,
maxDate: "2121-12-31T18:29:00.000Z",
minDate: "1920-12-31T18:30:00.000Z",
selectedDate: "2021-12-01T05:49:24.753Z",
};
let result = isValidDate(input, moment, _);
expect(result).toStrictEqual(true);
});
it("selectedDate is out of bounds", () => {
const { isValidDate } = derivedProperty;
const input = {
isRequired: true,
maxDate: "2021-12-31T18:29:00.000Z",
minDate: "1920-12-31T18:30:00.000Z",
selectedDate: "2022-12-01T05:49:24.753Z",
};
let result = isValidDate(input, moment, _);
expect(result).toStrictEqual(false);
});
it("isRequired is enabled and date is not selected", () => {
const { isValidDate } = derivedProperty;
const input = {
isRequired: true,
maxDate: "2121-12-31T18:29:00.000Z",
minDate: "1920-12-31T18:30:00.000Z",
selectedDate: "",
};
let result = isValidDate(input, moment, _);
expect(result).toStrictEqual(false);
});
it("isRequired is disabled and date is selected", () => {
const { isValidDate } = derivedProperty;
const input = {
isRequired: false,
maxDate: "2121-12-31T18:29:00.000Z",
minDate: "1920-12-31T18:30:00.000Z",
selectedDate: "2021-12-01T05:49:24.753Z",
};
let result = isValidDate(input, moment, _);
expect(result).toStrictEqual(true);
});
it("isRequired is disabled and date is not selected", () => {
const { isValidDate } = derivedProperty;
const input = {
isRequired: false,
maxDate: "2121-12-31T18:29:00.000Z",
minDate: "1920-12-31T18:30:00.000Z",
selectedDate: "",
};
let result = isValidDate(input, moment, _);
expect(result).toStrictEqual(true);
});
it("isRequired is disabled and date is not between min and max", () => {
const { isValidDate } = derivedProperty;
const input = {
isRequired: false,
maxDate: "2121-12-31T18:29:00.000Z",
minDate: "1920-12-31T18:30:00.000Z",
selectedDate: "2122-12-31T18:29:00.000Z",
};
let result = isValidDate(input, moment, _);
expect(result).toStrictEqual(false);
});
});