diff options
author | Tim Reichen <timreichen@users.noreply.github.com> | 2020-09-25 00:06:22 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-24 18:06:22 -0400 |
commit | 9c75e4876f68b36cb8a79bfe5a734d2783c527ce (patch) | |
tree | 849f775356d72b0578fce4ed09a5ac5017220e78 /std/datetime/test.ts | |
parent | 82db91372f597a0de834937dbb5edabeb68b0138 (diff) |
fix(std/datetime):: 12 and 24 support (#7661)
Diffstat (limited to 'std/datetime/test.ts')
-rw-r--r-- | std/datetime/test.ts | 91 |
1 files changed, 69 insertions, 22 deletions
diff --git a/std/datetime/test.ts b/std/datetime/test.ts index 10de786b6..9d4e58121 100644 --- a/std/datetime/test.ts +++ b/std/datetime/test.ts @@ -6,39 +6,43 @@ Deno.test({ name: "[std/datetime] parse", fn: () => { assertEquals( - datetime.parse("01-03-2019 16:30", "MM-dd-yyyy hh:mm"), + datetime.parse("01-03-2019 16:30", "MM-dd-yyyy HH:mm"), new Date(2019, 0, 3, 16, 30), ); assertEquals( - datetime.parse("01.03.2019 16:30", "MM.dd.yyyy hh:mm"), + datetime.parse("01.03.2019 16:30", "MM.dd.yyyy HH:mm"), new Date(2019, 0, 3, 16, 30), ); assertEquals( - datetime.parse("03-01-2019 16:31", "dd-MM-yyyy hh:mm"), + datetime.parse("01.03.2019 16:30", "MM.dd.yyyy HH:mm"), + new Date(2019, 0, 3, 16, 30), + ); + assertEquals( + datetime.parse("03-01-2019 16:31", "dd-MM-yyyy HH:mm"), new Date(2019, 0, 3, 16, 31), ); assertEquals( - datetime.parse("2019-01-03 16:32", "yyyy-MM-dd hh:mm"), + datetime.parse("2019-01-03 16:32", "yyyy-MM-dd HH:mm"), new Date(2019, 0, 3, 16, 32), ); assertEquals( - datetime.parse("16:33 01-03-2019", "hh:mm MM-dd-yyyy"), + datetime.parse("16:33 01-03-2019", "HH:mm MM-dd-yyyy"), new Date(2019, 0, 3, 16, 33), ); assertEquals( - datetime.parse("01-03-2019 16:33:23.123", "MM-dd-yyyy hh:mm:ss.SSS"), + datetime.parse("01-03-2019 16:33:23.123", "MM-dd-yyyy HH:mm:ss.SSS"), new Date(2019, 0, 3, 16, 33, 23, 123), ); assertEquals( - datetime.parse("01-03-2019 09:33 PM", "MM-dd-yyyy hh:mm a"), + datetime.parse("01-03-2019 09:33 PM", "MM-dd-yyyy HH:mm a"), new Date(2019, 0, 3, 21, 33), ); assertEquals( - datetime.parse("16:34 03-01-2019", "hh:mm dd-MM-yyyy"), + datetime.parse("16:34 03-01-2019", "HH:mm dd-MM-yyyy"), new Date(2019, 0, 3, 16, 34), ); assertEquals( - datetime.parse("16:35 2019-01-03", "hh:mm yyyy-MM-dd"), + datetime.parse("16:35 2019-01-03", "HH:mm yyyy-MM-dd"), new Date(2019, 0, 3, 16, 35), ); assertEquals( @@ -73,31 +77,74 @@ Deno.test({ Deno.test({ name: "[std/datetime] format", fn: () => { + // Date assertEquals( "2019-01-01", - datetime.format(new Date("2019-01-01T03:24:00"), "yyyy-MM-dd"), + datetime.format(new Date("2019-01-01"), "yyyy-MM-dd"), ); assertEquals( "01.01.2019", - datetime.format(new Date("2019-01-01T03:24:00"), "dd.MM.yyyy"), + datetime.format(new Date("2019-01-01"), "dd.MM.yyyy"), + ); + + // 00 hours + assertEquals( + "01:00:00", + datetime.format(new Date("2019-01-01T01:00:00"), "HH:mm:ss"), + ); + assertEquals( + "13:00:00", + datetime.format(new Date("2019-01-01T13:00:00"), "HH:mm:ss"), + ); + + // 12 hours + assertEquals( + "01:00:00", + datetime.format(new Date("2019-01-01T01:00:00"), "hh:mm:ss"), + ); + assertEquals( + "01:00:00", + datetime.format(new Date("2019-01-01T13:00:00"), "hh:mm:ss"), + ); + + // milliseconds + assertEquals( + "13:00:00.000", + datetime.format(new Date("2019-01-01T13:00:00"), "HH:mm:ss.SSS"), + ); + assertEquals( + "13:00:00.000", + datetime.format(new Date("2019-01-01T13:00:00.000"), "HH:mm:ss.SSS"), ); assertEquals( - "03:24:00", - datetime.format(new Date("2019-01-01T03:24:00"), "hh:mm:ss"), + "13:00:00.123", + datetime.format(new Date("2019-01-01T13:00:00.123"), "HH:mm:ss.SSS"), + ); + + // day period + assertEquals( + "01:00:00 AM", + datetime.format(new Date("2019-01-01T01:00:00"), "HH:mm:ss a"), ); assertEquals( - "03:24:00.532", - datetime.format(new Date("2019-01-01T03:24:00.532"), "hh:mm:ss.SSS"), + "01:00:00 AM", + datetime.format(new Date("2019-01-01T01:00:00"), "hh:mm:ss a"), ); assertEquals( - "03:24:00 AM", - datetime.format(new Date("2019-01-01T03:24:00"), "hh:mm:ss a"), + "01:00:00 PM", + datetime.format(new Date("2019-01-01T13:00:00"), "hh:mm:ss a"), ); assertEquals( - "09:24:00 PM", - datetime.format(new Date("2019-01-01T21:24:00"), "hh:mm:ss a"), + "21:00:00 PM", + datetime.format(new Date("2019-01-01T21:00:00"), "HH:mm:ss a"), ); assertEquals( + "09:00:00 PM", + datetime.format(new Date("2019-01-01T21:00:00"), "hh:mm:ss a"), + ); + + // quoted literal + assertEquals( datetime.format(new Date(2019, 0, 20), "'today:' yyyy-MM-dd"), "today: 2019-01-20", ); @@ -181,9 +228,9 @@ Deno.test({ Deno.test({ name: "[std/datetime] weekOfYear", fn: () => { - assertEquals(datetime.weekOfYear(new Date("2020-01-05T03:24:00")), 1); - assertEquals(datetime.weekOfYear(new Date("2020-12-28T03:24:00")), 53); // 53 weeks in 2020 - assertEquals(datetime.weekOfYear(new Date("2020-06-28T03:24:00")), 26); + assertEquals(datetime.weekOfYear(new Date("2020-01-05T03:00:00")), 1); + assertEquals(datetime.weekOfYear(new Date("2020-12-28T03:00:00")), 53); // 53 weeks in 2020 + assertEquals(datetime.weekOfYear(new Date("2020-06-28T03:00:00")), 26); // iso weeks year starting sunday assertEquals(datetime.weekOfYear(new Date(2012, 0, 1)), 52); |