summaryrefslogtreecommitdiffstats
path: root/web_src/js/utils/time.test.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--web_src/js/utils/time.test.js40
1 files changed, 40 insertions, 0 deletions
diff --git a/web_src/js/utils/time.test.js b/web_src/js/utils/time.test.js
new file mode 100644
index 0000000..dbe5d7d
--- /dev/null
+++ b/web_src/js/utils/time.test.js
@@ -0,0 +1,40 @@
+import {firstStartDateAfterDate, startDaysBetween, fillEmptyStartDaysWithZeroes} from './time.js';
+
+test('startDaysBetween', () => {
+ expect(startDaysBetween(new Date('2024-02-15'), new Date('2024-04-18'))).toEqual([
+ 1708214400000,
+ 1708819200000,
+ 1709424000000,
+ 1710028800000,
+ 1710633600000,
+ 1711238400000,
+ 1711843200000,
+ 1712448000000,
+ 1713052800000,
+ ]);
+});
+
+test('firstStartDateAfterDate', () => {
+ const expectedDate = new Date('2024-02-18').getTime();
+ expect(firstStartDateAfterDate(new Date('2024-02-15'))).toEqual(expectedDate);
+
+ expect(() => firstStartDateAfterDate('2024-02-15')).toThrowError('Invalid date');
+});
+test('fillEmptyStartDaysWithZeroes with data', () => {
+ expect(fillEmptyStartDaysWithZeroes([1708214400000, 1708819200000, 1708819300000], {
+ 1708214400000: {'week': 1708214400000, 'additions': 1, 'deletions': 2, 'commits': 3},
+ 1708819200000: {'week': 1708819200000, 'additions': 4, 'deletions': 5, 'commits': 6},
+ })).toEqual([
+ {'week': 1708214400000, 'additions': 1, 'deletions': 2, 'commits': 3},
+ {'week': 1708819200000, 'additions': 4, 'deletions': 5, 'commits': 6},
+ {
+ 'additions': 0,
+ 'commits': 0,
+ 'deletions': 0,
+ 'week': 1708819300000,
+ }]);
+});
+
+test('fillEmptyStartDaysWithZeroes with empty array', () => {
+ expect(fillEmptyStartDaysWithZeroes([], {})).toEqual([]);
+});