|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- import date_utils from '../src/date_utils';
-
- test('Parse: parses string date', () => {
- const date = date_utils.parse('2017-09-09');
-
- expect(date.getDate()).toBe(9);
- expect(date.getMonth()).toBe(8);
- expect(date.getFullYear()).toBe(2017);
- });
-
- test('Parse: parses string datetime', () => {
- const date = date_utils.parse('2017-08-27 16:08:34');
-
- expect(date.getFullYear()).toBe(2017);
- expect(date.getMonth()).toBe(7);
- expect(date.getDate()).toBe(27);
- expect(date.getHours()).toBe(16);
- expect(date.getMinutes()).toBe(8);
- expect(date.getSeconds()).toBe(34);
- });
-
- test('Parse: parses string datetime', () => {
- const date = date_utils.parse('2016-02-29 16:08:34.3');
-
- expect(date.getFullYear()).toBe(2016);
- expect(date.getMonth()).toBe(1);
- expect(date.getDate()).toBe(29);
- expect(date.getHours()).toBe(16);
- expect(date.getMinutes()).toBe(8);
- expect(date.getSeconds()).toBe(34);
- expect(date.getMilliseconds()).toBe(300);
- });
-
- test('Parse: parses string datetime', () => {
- const date = date_utils.parse('2015-07-01 00:00:59.200');
-
- expect(date.getFullYear()).toBe(2015);
- expect(date.getMonth()).toBe(6);
- expect(date.getDate()).toBe(1);
- expect(date.getHours()).toBe(0);
- expect(date.getMinutes()).toBe(0);
- expect(date.getSeconds()).toBe(59);
- expect(date.getMilliseconds()).toBe(200);
- });
-
- test('Format: converts date object to string', () => {
- const date = new Date('2017-09-18');
- expect(date_utils.to_string(date)).toBe('2017-09-18');
- });
-
- test('Format: converts date object to string', () => {
- const date = new Date('2016-02-29 16:08:34.3');
- expect(date_utils.to_string(date, true)).toBe('2016-02-29 16:08:34.300');
- });
-
- test('Format: converts date object to string', () => {
- const date = new Date('2016-02-29 16:08:34.3');
- expect(date_utils.to_string(date, true)).toBe('2016-02-29 16:08:34.300');
- });
-
- test('Parse: returns Date Object as is', () => {
- const d = new Date();
- const date = date_utils.parse(d);
-
- expect(d).toBe(date);
- });
-
- test('Diff: returns diff between 2 date objects', () => {
- const a = date_utils.parse('2017-09-08');
- const b = date_utils.parse('2017-06-07');
-
- expect(date_utils.diff(a, b, 'day')).toBe(93);
- expect(date_utils.diff(a, b, 'month')).toBe(3);
- expect(date_utils.diff(a, b, 'year')).toBe(0);
- });
-
- test('StartOf', () => {
- const date = date_utils.parse('2017-08-12 15:07:34.012');
-
- const start_of_millisecond = date_utils.start_of(date, 'millisecond');
- expect(date_utils.to_string(start_of_millisecond, true)).toBe(
- '2017-08-12 15:07:34.012'
- );
-
- const start_of_second = date_utils.start_of(date, 'second');
- expect(date_utils.to_string(start_of_second, true)).toBe(
- '2017-08-12 15:07:34.000'
- );
-
- const start_of_minute = date_utils.start_of(date, 'minute');
- expect(date_utils.to_string(start_of_minute, true)).toBe(
- '2017-08-12 15:07:00.000'
- );
-
- const start_of_hour = date_utils.start_of(date, 'hour');
- expect(date_utils.to_string(start_of_hour, true)).toBe(
- '2017-08-12 15:00:00.000'
- );
-
- const start_of_day = date_utils.start_of(date, 'day');
- expect(date_utils.to_string(start_of_day, true)).toBe(
- '2017-08-12 00:00:00.000'
- );
-
- const start_of_month = date_utils.start_of(date, 'month');
- expect(date_utils.to_string(start_of_month, true)).toBe(
- '2017-08-01 00:00:00.000'
- );
-
- const start_of_year = date_utils.start_of(date, 'year');
- expect(date_utils.to_string(start_of_year, true)).toBe(
- '2017-01-01 00:00:00.000'
- );
- });
-
- test('format', () => {
- const date = date_utils.parse('2017-08-12 15:07:23');
- expect(date_utils.format(date, 'YYYY-MM-DD')).toBe('2017-08-12');
- });
-
- test('format', () => {
- const date = date_utils.parse('2016-02-29 16:08:34.3');
- expect(date_utils.format(date)).toBe('2016-02-29 16:08:34.300');
- });
|