UNPKG

devextreme

Version:

JavaScript/TypeScript Component Suite for Responsive Web Development

83 lines (82 loc) 4.04 kB
/** * DevExtreme (cjs/__internal/scheduler/recurrence/validate_rule.test.js) * Version: 25.2.5 * Build date: Fri Feb 20 2026 * * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ "use strict"; var _globals = require("@jest/globals"); var _base = require("./base"); var _validate_rule = require("./validate_rule"); (0, _globals.describe)("validateRRule", (() => { (0, _globals.it)("should return true for valid rule", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=MONTHLY"); (0, _globals.expect)(isValid).toBe(true) })); (0, _globals.it)("should return false for undefined rule", (() => { const isValid = (0, _validate_rule.validateRRule)(void 0); (0, _globals.expect)(isValid).toBe(false) })); (0, _globals.it)("should return false for incorrect freq", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=WRONG"); (0, _globals.expect)(isValid).toBe(false) })); (0, _globals.it)("should return false for wrong rule name", (() => { const isValid = (0, _validate_rule.validateRRule)("FRE=DAILY"); (0, _globals.expect)(isValid).toBe(false) })); (0, _globals.it)("should return true and correct parsed rule for wrong count", (() => { const rule = "FREQ=DAILY;COUNT=wrong"; const parsed = (0, _base.parseRecurrenceRule)(rule); const isValid = (0, _validate_rule.validateRRuleObject)(parsed, rule); (0, _globals.expect)(parsed).toEqual({ freq: "DAILY", interval: 1 }); (0, _globals.expect)(isValid).toBe(true) })); (0, _globals.it)("should return true and correct parsed rule for wrong interval", (() => { const rule = "FREQ=DAILY;INTERVAL=wrong"; const parsed = (0, _base.parseRecurrenceRule)(rule); const isValid = (0, _validate_rule.validateRRuleObject)(parsed, rule); (0, _globals.expect)(parsed).toEqual({ freq: "DAILY", interval: 1 }); (0, _globals.expect)(isValid).toBe(true) })); (0, _globals.it)("should return false for wrong byDay", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=DAILY;BYDAY=wrong"); (0, _globals.expect)(isValid).toBe(false) })); (0, _globals.it)("should return false for empty byDay", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=DAILY;BYDAY="); (0, _globals.expect)(isValid).toBe(false) })); (0, _globals.it)("should return false for wrong byDay, several value", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=DAILY;BYDAY=MO,wrong"); (0, _globals.expect)(isValid).toBe(false) })); (0, _globals.it)("should return false for wrong byMonthDay", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=MONTHLY;BYMONTHDAY=wrong"); (0, _globals.expect)(isValid).toBe(false) })); (0, _globals.it)("should return false for wrong byMonth", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=YEARLY;BYMONTH=wrong;BYMONTHDAY=12"); (0, _globals.expect)(isValid).toBe(false) })); (0, _globals.it)("should return false for wrong until date", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=DAILY;UNTIL=wrong"); (0, _globals.expect)(isValid).toBe(false) })); (0, _globals.it)("should return true if byDay has frequence for day", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=MONTHLY;BYDAY=1TU"); (0, _globals.expect)(isValid).toBe(true) })); (0, _globals.it)("should return true if byDay has frequence for day", (() => { const isValid = (0, _validate_rule.validateRRule)("FREQ=MONTHLY;BYDAY=1TU,3FR"); (0, _globals.expect)(isValid).toBe(true) })) }));