Files
azuredatastudio/extensions/arc/src/test/common/date.test.ts
Charles Gagnon a1f600657a Add more arc tests (#11145)
* Add more arc tests

* Update comment
2020-06-30 14:05:27 -07:00

86 lines
3.3 KiB
TypeScript

/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import * as should from 'should';
import 'mocha';
import { fromNow } from '../../common/date';
describe('fromNow Method Tests', function () {
it('Future date', function (): void {
should(fromNow(new Date().getTime() + 60000)).startWith('in');
});
it('Now', function (): void {
should(fromNow(new Date())).equal('now');
});
it('< 1 min ago', function (): void {
// 30 sec
should(fromNow(new Date().getTime() - 30000)).endWith('secs');
should(fromNow(new Date().getTime() - 30000, true)).endWith('secs ago');
});
it('< 1 hr ago', function (): void {
// 1.5 min
should(fromNow(new Date().getTime() - 90 * 1000)).endWith('min');
should(fromNow(new Date().getTime() - 90 * 1000, true)).endWith('min ago');
// 5 min
should(fromNow(new Date().getTime() - 5 * 60 * 1000)).endWith('mins');
should(fromNow(new Date().getTime() - 5 * 60 * 1000, true)).endWith('mins ago');
});
it('< 1 day ago', function (): void {
// 1.5 hrs
should(fromNow(new Date().getTime() - 90 * 60 * 1000)).endWith('hr');
should(fromNow(new Date().getTime() - 90 * 60 * 1000, true)).endWith('hr ago');
// 5 hrs
should(fromNow(new Date().getTime() - 5 * 60 * 60 * 1000)).endWith('hrs');
should(fromNow(new Date().getTime() - 5 * 60 * 60 * 1000, true)).endWith('hrs ago');
});
it('< 1 week ago', function (): void {
// 30 hours
should(fromNow(new Date().getTime() - 30 * 60 * 60 * 1000)).endWith('day');
should(fromNow(new Date().getTime() - 30 * 60 * 60 * 1000, true)).endWith('day ago');
// 3 days
should(fromNow(new Date().getTime() - 3 * 24 * 60 * 60 * 1000)).endWith('days');
should(fromNow(new Date().getTime() - 3 * 24 * 60 * 60 * 1000, true)).endWith('days ago');
});
it('< 1 month ago', function (): void {
// 10 days
should(fromNow(new Date().getTime() - 10 * 24 * 60 * 60 * 1000)).endWith('wk');
should(fromNow(new Date().getTime() - 10 * 24 * 60 * 60 * 1000, true)).endWith('wk ago');
// 20 days
should(fromNow(new Date().getTime() - 20 * 24 * 60 * 60 * 1000)).endWith('wks');
should(fromNow(new Date().getTime() - 20 * 24 * 60 * 60 * 1000, true)).endWith('wks ago');
});
it('< 1 year ago', function (): void {
// 45 days
should(fromNow(new Date().getTime() - 45 * 24 * 60 * 60 * 1000)).endWith('mo');
should(fromNow(new Date().getTime() - 45 * 24 * 60 * 60 * 1000, true)).endWith('mo ago');
// 90 days
should(fromNow(new Date().getTime() - 90 * 24 * 60 * 60 * 1000)).endWith('mos');
should(fromNow(new Date().getTime() - 90 * 24 * 60 * 60 * 1000, true)).endWith('mos ago');
});
it('> 1 year ago', function (): void {
// 400 days
should(fromNow(new Date().getTime() - 400 * 24 * 60 * 60 * 1000)).endWith('yr');
should(fromNow(new Date().getTime() - 400 * 24 * 60 * 60 * 1000, true)).endWith('yr ago');
// 1000
should(fromNow(new Date().getTime() - 1000 * 24 * 60 * 60 * 1000)).endWith('yrs');
should(fromNow(new Date().getTime() - 1000 * 24 * 60 * 60 * 1000, true)).endWith('yrs ago');
});
});