VulpesOS/gaia/apps/search/test/unit/utilities_test.js
OverSu b38dea0597 Publish Vulpes Preview 15 sources for desktop, Android and Tundra
Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
2026-09-30 23:13:03 +02:00

78 lines
2.6 KiB
JavaScript
Executable file

/* globals DateHelper */
'use strict';
requireApp('search/shared/js/utilities.js');
suite('Date Helper', function() {
function assertMidnight(date) {
assert.equal(date.getHours(), 0);
assert.equal(date.getMinutes(), 0);
assert.equal(date.getSeconds(), 0);
assert.equal(date.getMilliseconds(), 0);
}
suite('started', function() {
test('todayStarted', function() {
var now = new Date();
var todayStartedTimestamp = DateHelper.todayStarted();
var todayStarted = new Date(todayStartedTimestamp);
assert.equal(todayStarted.getFullYear(), now.getFullYear());
assert.equal(todayStarted.getMonth(), now.getMonth());
assert.equal(todayStarted.getDate(), now.getDate());
assertMidnight(todayStarted);
});
test('yesterdayStarted', function() {
var now = new Date();
var yesterdayStartedTimestamp = DateHelper.yesterdayStarted();
var yesterdayStarted = new Date(yesterdayStartedTimestamp);
assert.equal(true, yesterdayStartedTimestamp <= now.valueOf());
assertMidnight(yesterdayStarted);
});
test('thisWeekStarted', function() {
var now = new Date();
var weekStartedTimestamp = DateHelper.thisWeekStarted();
var weekStarted = new Date(weekStartedTimestamp);
assert.equal(true, weekStartedTimestamp <= now.valueOf());
assert.equal(weekStarted.getDay(), 0);
assertMidnight(weekStarted);
});
test('thisMonthStarted', function() {
var now = new Date();
var monthStartedTimestamp = DateHelper.thisMonthStarted();
var monthStarted = new Date(monthStartedTimestamp);
assert.equal(true, monthStartedTimestamp <= now.valueOf());
assert.equal(monthStarted.getFullYear(), now.getFullYear());
assert.equal(monthStarted.getMonth(), now.getMonth());
assert.equal(monthStarted.getDate(), 1);
assertMidnight(monthStarted);
});
test('lastSixMonthsStarted', function() {
var sixMonthsStarted = DateHelper.lastSixMonthsStarted();
var now = new Date().valueOf();
var delta = now - sixMonthsStarted;
assert.equal(true, delta >= 2629743830 * 6);
assert.equal(true, delta < 2629743830 * 7);
});
test('thisYearStarted', function() {
var now = new Date();
var yearStartedTimestamp = DateHelper.thisYearStarted();
var yearStarted = new Date(yearStartedTimestamp);
assert.equal(true, yearStartedTimestamp <= now.valueOf());
assert.equal(yearStarted.getFullYear(), now.getFullYear());
assert.equal(yearStarted.getMonth(), 0);
assert.equal(yearStarted.getDate(), 1);
assertMidnight(yearStarted);
});
});
});