Convert timeUtil to typescript
Signed-off-by: Oliver Sand <oliver.sand@sda-se.com>
This commit is contained in:
+15
-11
@@ -16,16 +16,20 @@
|
||||
|
||||
import { getTimeBasedGreeting } from './timeUtil';
|
||||
|
||||
it('has greeting and language', () => {
|
||||
const greeting = getTimeBasedGreeting();
|
||||
expect(greeting).toHaveProperty('greeting');
|
||||
expect(greeting).toHaveProperty('language');
|
||||
});
|
||||
describe('getTimeBasedGreeting', () => {
|
||||
afterEach(() => jest.resetAllMocks());
|
||||
|
||||
it('greets late at night', () => {
|
||||
jest
|
||||
.spyOn(global.Date, 'now')
|
||||
.mockImplementationOnce(() => new Date('1970-01-01T23:00:00').valueOf());
|
||||
const greeting = getTimeBasedGreeting();
|
||||
expect(greeting.greeting).toBe('Get some rest');
|
||||
it('has greeting and language', () => {
|
||||
const greeting = getTimeBasedGreeting();
|
||||
expect(greeting).toHaveProperty('greeting');
|
||||
expect(greeting).toHaveProperty('language');
|
||||
});
|
||||
|
||||
it('greets late at night', () => {
|
||||
jest
|
||||
.spyOn(global.Date, 'now')
|
||||
.mockImplementationOnce(() => new Date('1970-01-01T23:00:00').valueOf());
|
||||
const greeting = getTimeBasedGreeting();
|
||||
expect(greeting.greeting).toBe('Get some rest');
|
||||
});
|
||||
});
|
||||
+5
-5
@@ -18,12 +18,12 @@ import goodMorning from './locales/goodMorning.locales.json';
|
||||
import goodAfternoon from './locales/goodAfternoon.locales.json';
|
||||
import goodEvening from './locales/goodEvening.locales.json';
|
||||
|
||||
// Select a large random integer at startup, to prevent the greetings to change every time the user
|
||||
// navigates.
|
||||
// Select a large random integer at startup, to prevent the greetings to change
|
||||
// every time the user navigates.
|
||||
const greetingRandomSeed = Math.floor(Math.random() * 1000000);
|
||||
|
||||
export function getTimeBasedGreeting() {
|
||||
const random = array => array[greetingRandomSeed % array.length];
|
||||
export function getTimeBasedGreeting(): { language: string; greeting: string } {
|
||||
const random = (array: string[]) => array[greetingRandomSeed % array.length];
|
||||
|
||||
const currentHour = new Date(Date.now()).getHours();
|
||||
if (currentHour >= 23) {
|
||||
@@ -32,7 +32,7 @@ export function getTimeBasedGreeting() {
|
||||
greeting: 'Get some rest',
|
||||
};
|
||||
}
|
||||
const timeOfDay = hour => {
|
||||
const timeOfDay = (hour: number): { [language: string]: string } => {
|
||||
if (hour < 12) return goodMorning;
|
||||
if (hour < 17) return goodAfternoon;
|
||||
return goodEvening;
|
||||
Reference in New Issue
Block a user