import {Duration} from '@/'; import {describe, it, assert} from 'vitest'; describe('Duration', () => { describe('#add', () => { it('basic', function () { let duration = Duration.from({minutes: 10}); let result = duration.add({minutes: 12}); assert.equal(result.toJSON(), 'PT22M'); }); it('basic', function () { let duration = Duration.from({days: 1}); let result = duration.add({days: 2}); assert.equal(result.toJSON(), 'P3D'); }); it('balances time', function () { let duration = Duration.from({hours: 1, minutes: 44, seconds: 30}); let result = duration.add({minutes: 15, seconds: 30}); assert.equal(result.toJSON(), 'PT2H'); }); it('balances time with day', function () { let duration = Duration.from({days: 1, hours: 23, minutes: 59}); let result = duration.add({minutes: 1}); assert.equal(result.toJSON(), 'P2D'); }); it('adds days, more than one month', function () { let duration = Duration.from({days: 20}); let result = duration.add({days: 12}); assert.equal(result.toJSON(), 'P32D'); }); }); });