UNPKG

rpg-calendar

Version:

Low level library for working with RPG/Fantasy dates

87 lines 5.55 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const leapYear_1 = require("./leapYear"); const daysInMonth_1 = require("./daysInMonth"); const isLeapYear4Years = (0, leapYear_1.isLeapYearBuilder)(4, true); describe('Days in month', () => { test('Simple days in month', () => { const months = [ { monthInYear: 1, name: 'Test Month 1', daysInMonth: 9 }, { monthInYear: 2, name: 'Test Month 2', daysInMonth: 11 } ]; const getDaysInMonth = (0, daysInMonth_1.getDaysInMonthBuilder)(months, isLeapYear4Years); expect(getDaysInMonth(1, 1999)).toBe(9); expect(getDaysInMonth(2, 1999)).toBe(11); }); test('Months with extra days', () => { const months = [ { monthInYear: 1, name: 'Test Month 1', daysInMonth: 9, extraDays: [ { name: 'extra 1' }, { name: 'extra 2' } ] }, { monthInYear: 2, name: 'Test Month 2', daysInMonth: 11, extraDays: [ { name: 'another extra day' } ] } ]; const getDaysInMonth = (0, daysInMonth_1.getDaysInMonthBuilder)(months, isLeapYear4Years); expect(getDaysInMonth(1, 1999)).toBe(11); expect(getDaysInMonth(2, 1999)).toBe(12); }); test('Months with extra days and leap day', () => { const months = [ { monthInYear: 1, name: 'Test Month 1', daysInMonth: 9, extraDays: [ { name: 'extra 1' }, { name: 'leap day', onlyInLeapYear: true } ] }, { monthInYear: 2, name: 'Test Month 2', daysInMonth: 11, extraDays: [ { name: 'another extra day' } ] } ]; const getDaysInMonth = (0, daysInMonth_1.getDaysInMonthBuilder)(months, isLeapYear4Years); expect(getDaysInMonth(1, 3)).toBe(10); expect(getDaysInMonth(1, 4)).toBe(11); expect(getDaysInMonth(2, 1999)).toBe(12); }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5c0luTW9udGgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZGF5c0luTW9udGgudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHlDQUErQztBQUUvQywrQ0FBc0Q7QUFFdEQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFBLDRCQUFpQixFQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUVwRCxRQUFRLENBQUMsZUFBZSxFQUFFLEdBQUcsRUFBRTtJQUM3QixJQUFJLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxFQUFFO1FBQ2hDLE1BQU0sTUFBTSxHQUF1QjtZQUNqQztnQkFDRSxXQUFXLEVBQUUsQ0FBQztnQkFDZCxJQUFJLEVBQUUsY0FBYztnQkFDcEIsV0FBVyxFQUFFLENBQUM7YUFDZjtZQUNEO2dCQUNFLFdBQVcsRUFBRSxDQUFDO2dCQUNkLElBQUksRUFBRSxjQUFjO2dCQUNwQixXQUFXLEVBQUUsRUFBRTthQUNoQjtTQUNGLENBQUM7UUFDRixNQUFNLGNBQWMsR0FBRyxJQUFBLG1DQUFxQixFQUFDLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXZFLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLHdCQUF3QixFQUFFLEdBQUcsRUFBRTtRQUNsQyxNQUFNLE1BQU0sR0FBdUI7WUFDakM7Z0JBQ0UsV0FBVyxFQUFFLENBQUM7Z0JBQ2QsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLFdBQVcsRUFBRSxDQUFDO2dCQUNkLFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxJQUFJLEVBQUUsU0FBUztxQkFDaEI7b0JBQ0Q7d0JBQ0UsSUFBSSxFQUFFLFNBQVM7cUJBQ2hCO2lCQUNGO2FBQ0Y7WUFDRDtnQkFDRSxXQUFXLEVBQUUsQ0FBQztnQkFDZCxJQUFJLEVBQUUsY0FBYztnQkFDcEIsV0FBVyxFQUFFLEVBQUU7Z0JBQ2YsU0FBUyxFQUFFO29CQUNUO3dCQUNFLElBQUksRUFBRSxtQkFBbUI7cUJBQzFCO2lCQUNGO2FBQ0Y7U0FDRixDQUFDO1FBQ0YsTUFBTSxjQUFjLEdBQUcsSUFBQSxtQ0FBcUIsRUFBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUV2RSxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN6QyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQyxxQ0FBcUMsRUFBRSxHQUFHLEVBQUU7UUFDL0MsTUFBTSxNQUFNLEdBQXVCO1lBQ2pDO2dCQUNFLFdBQVcsRUFBRSxDQUFDO2dCQUNkLElBQUksRUFBRSxjQUFjO2dCQUNwQixXQUFXLEVBQUUsQ0FBQztnQkFDZCxTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsSUFBSSxFQUFFLFNBQVM7cUJBQ2hCO29CQUNEO3dCQUNFLElBQUksRUFBRSxVQUFVO3dCQUNoQixjQUFjLEVBQUUsSUFBSTtxQkFDckI7aUJBQ0Y7YUFDRjtZQUNEO2dCQUNFLFdBQVcsRUFBRSxDQUFDO2dCQUNkLElBQUksRUFBRSxjQUFjO2dCQUNwQixXQUFXLEVBQUUsRUFBRTtnQkFDZixTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsSUFBSSxFQUFFLG1CQUFtQjtxQkFDMUI7aUJBQ0Y7YUFDRjtTQUNGLENBQUM7UUFDRixNQUFNLGNBQWMsR0FBRyxJQUFBLG1DQUFxQixFQUFDLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXZFLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMifQ==