UNPKG

playwright-fluent

Version:
80 lines (79 loc) 2.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const SUT = tslib_1.__importStar(require("./index")); function addDays(date, days) { const result = new Date(date); result.setDate(result.getDate() + days); return result; } describe('shouldUpdate', () => { let now = new Date(); beforeEach(() => { now = new Date(); }); [ { lastUpdate: () => now, policy: 'always' }, { lastUpdate: () => addDays(now, -100), policy: '1/d', }, { lastUpdate: () => addDays(now, -2), policy: '1/d', }, { lastUpdate: () => addDays(now, -1), policy: '1/d', }, { lastUpdate: () => addDays(now, -7), policy: '1/w', }, { lastUpdate: () => addDays(now, -8), policy: '1/w', }, { lastUpdate: () => addDays(now, -31), policy: '1/m', }, ].forEach(({ lastUpdate, policy }) => { test(`should update when lastUpdate is ${lastUpdate().toDateString()} and policy is '${policy}'`, async () => { // Given const updatePolicy = policy; // When const result = SUT.shouldUpdate(lastUpdate(), updatePolicy); // Then expect(result).toBe(true); }); }); [ { lastUpdate: () => now, policy: 'never' }, { lastUpdate: () => addDays(now, 0), policy: '1/d', }, { lastUpdate: () => addDays(now, -1), policy: '1/w', }, { lastUpdate: () => addDays(now, -5), policy: '1/w', }, { lastUpdate: () => addDays(now, -15), policy: '1/m', }, ].forEach(({ lastUpdate, policy }) => { test(`should not update when lastUpdate is ${lastUpdate().toDateString()} and policy is '${policy}'`, async () => { // Given const updatePolicy = policy; // When const result = SUT.shouldUpdate(lastUpdate(), updatePolicy); // Then expect(result).toBe(false); }); }); });