summaryrefslogtreecommitdiff
path: root/std/datetime/test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'std/datetime/test.ts')
-rw-r--r--std/datetime/test.ts58
1 files changed, 56 insertions, 2 deletions
diff --git a/std/datetime/test.ts b/std/datetime/test.ts
index ef4b5dd58..a223abce2 100644
--- a/std/datetime/test.ts
+++ b/std/datetime/test.ts
@@ -79,7 +79,7 @@ Deno.test({
});
Deno.test({
- name: "[std/datetime] DayOfYear",
+ name: "[std/datetime] dayOfYear",
fn: () => {
assertEquals(datetime.dayOfYear(new Date("2019-01-01T03:24:00")), 1);
assertEquals(datetime.dayOfYear(new Date("2019-03-11T03:24:00")), 70);
@@ -95,11 +95,65 @@ Deno.test({
});
Deno.test({
- name: "[std/datetime] WeekOfYear",
+ 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);
+
+ // iso weeks year starting sunday
+ assertEquals(datetime.weekOfYear(new Date(2012, 0, 1)), 52);
+ assertEquals(datetime.weekOfYear(new Date(2012, 0, 2)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2012, 0, 8)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2012, 0, 9)), 2);
+ assertEquals(datetime.weekOfYear(new Date(2012, 0, 15)), 2);
+
+ // iso weeks year starting monday
+ assertEquals(datetime.weekOfYear(new Date(2007, 0, 1)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2007, 0, 7)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2007, 0, 8)), 2);
+ assertEquals(datetime.weekOfYear(new Date(2007, 0, 14)), 2);
+ assertEquals(datetime.weekOfYear(new Date(2007, 0, 15)), 3);
+
+ // iso weeks year starting tuesday
+ assertEquals(datetime.weekOfYear(new Date(2007, 11, 31)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2008, 0, 1)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2008, 0, 6)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2008, 0, 7)), 2);
+ assertEquals(datetime.weekOfYear(new Date(2008, 0, 13)), 2);
+ assertEquals(datetime.weekOfYear(new Date(2008, 0, 14)), 3);
+
+ // iso weeks year starting wednesday
+ assertEquals(datetime.weekOfYear(new Date(2002, 11, 30)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2003, 0, 1)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2003, 0, 5)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2003, 0, 6)), 2);
+ assertEquals(datetime.weekOfYear(new Date(2003, 0, 12)), 2);
+ assertEquals(datetime.weekOfYear(new Date(2003, 0, 13)), 3);
+
+ // iso weeks year starting thursday
+ assertEquals(datetime.weekOfYear(new Date(2008, 11, 29)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2009, 0, 1)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2009, 0, 4)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2009, 0, 5)), 2);
+ assertEquals(datetime.weekOfYear(new Date(2009, 0, 11)), 2);
+ assertEquals(datetime.weekOfYear(new Date(2009, 0, 13)), 3);
+
+ // iso weeks year starting friday
+ assertEquals(datetime.weekOfYear(new Date(2009, 11, 28)), 53);
+ assertEquals(datetime.weekOfYear(new Date(2010, 0, 1)), 53);
+ assertEquals(datetime.weekOfYear(new Date(2010, 0, 3)), 53);
+ assertEquals(datetime.weekOfYear(new Date(2010, 0, 4)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2010, 0, 10)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2010, 0, 11)), 2);
+
+ // iso weeks year starting saturday
+ assertEquals(datetime.weekOfYear(new Date(2010, 11, 27)), 52);
+ assertEquals(datetime.weekOfYear(new Date(2011, 0, 1)), 52);
+ assertEquals(datetime.weekOfYear(new Date(2011, 0, 2)), 52);
+ assertEquals(datetime.weekOfYear(new Date(2011, 0, 3)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2011, 0, 9)), 1);
+ assertEquals(datetime.weekOfYear(new Date(2011, 0, 10)), 2);
},
});