From 709644f644f70b069f3ff982b8dbf0797eaabaa3 Mon Sep 17 00:00:00 2001 From: Ankit Kanyal Date: Tue, 24 Sep 2024 01:14:54 +0530 Subject: [PATCH 1/8] Completed the datepicker feature in user standup and fixed the hover issue on standup dates --- standup/script.js | 48 ++++++++++++++++++++++++++++++++++++++++++++++- standup/style.css | 4 +++- 2 files changed, 50 insertions(+), 2 deletions(-) diff --git a/standup/script.js b/standup/script.js index 61973702..a765ed23 100644 --- a/standup/script.js +++ b/standup/script.js @@ -121,8 +121,21 @@ function createTableHeaderElement() { type: 'th', classList: ['user', 'date', 'table-head'], }); - headerCellElement.innerHTML = 'DATES ➡️
USERS ⬇️'; + headerCellElement.innerHTML = + 'DATES➡️


USERS ⬇️'; + headerRowElement.appendChild(headerCellElement); + + // My code Changes Start + + const dateInput = headerCellElement.querySelector('input'); + dateInput.addEventListener('change', (event) => { + scrollToSelectedDate(event.target.value); + }); + dateInput.max = endDate.toLocaleDateString('en-CA'); + + // my code changes end + for ( let date = new Date(endDate); date >= startDate; @@ -356,3 +369,36 @@ document.addEventListener('click', (event) => { if (getUsernames().length > 0) { searchButtonHandler(); } + +function countSundays(startDate, endDate) { + let start = new Date(startDate); + let end = new Date(endDate); + + let sundayCount = 0; + while (start.getDay() !== 0) { + start.setDate(start.getDate() + 1); + } + + while (start <= end) { + sundayCount++; + start.setDate(start.getDate() + 7); + } + + return sundayCount; +} + +function scrollToSelectedDate(date) { + const selectedDate = new Date(date); + selectedDate.setHours(0, 0, 0, 0); + const dates = document.querySelectorAll('.dates'); + const columnWidth = dates[0].offsetWidth; + const dateDifference = endDate.getTime() - selectedDate.getTime(); + const numberOfSundays = countSundays(selectedDate, endDate); + const numberOfDays = Math.floor(dateDifference / oneDay) - numberOfSundays; + + let scrollPosition = numberOfDays * columnWidth; + tableContainerElement.scrollTo({ + left: scrollPosition, + behavior: 'smooth', + }); +} diff --git a/standup/style.css b/standup/style.css index f2f20ed6..01476479 100644 --- a/standup/style.css +++ b/standup/style.css @@ -153,9 +153,11 @@ tr:nth-child(even) { } tr:hover { - background-color: var(--dark-gray-color); cursor: pointer; } +td:hover { + background-color: var(--dark-gray-color); +} .table-container { overflow-x: auto; From b3e9d0d5e33fbaa9c0b66cc1f4f347e7ffae579c Mon Sep 17 00:00:00 2001 From: Ankit Kanyal Date: Tue, 24 Sep 2024 01:14:54 +0530 Subject: [PATCH 2/8] Completed the datepicker feature in user standup and fixed the hover issue on standup dates --- standup/script.js | 48 ++++++++++++++++++++++++++++++++++++++++++++++- standup/style.css | 4 +++- 2 files changed, 50 insertions(+), 2 deletions(-) diff --git a/standup/script.js b/standup/script.js index 61973702..a765ed23 100644 --- a/standup/script.js +++ b/standup/script.js @@ -121,8 +121,21 @@ function createTableHeaderElement() { type: 'th', classList: ['user', 'date', 'table-head'], }); - headerCellElement.innerHTML = 'DATES ➡️
USERS ⬇️'; + headerCellElement.innerHTML = + 'DATES➡️


USERS ⬇️'; + headerRowElement.appendChild(headerCellElement); + + // My code Changes Start + + const dateInput = headerCellElement.querySelector('input'); + dateInput.addEventListener('change', (event) => { + scrollToSelectedDate(event.target.value); + }); + dateInput.max = endDate.toLocaleDateString('en-CA'); + + // my code changes end + for ( let date = new Date(endDate); date >= startDate; @@ -356,3 +369,36 @@ document.addEventListener('click', (event) => { if (getUsernames().length > 0) { searchButtonHandler(); } + +function countSundays(startDate, endDate) { + let start = new Date(startDate); + let end = new Date(endDate); + + let sundayCount = 0; + while (start.getDay() !== 0) { + start.setDate(start.getDate() + 1); + } + + while (start <= end) { + sundayCount++; + start.setDate(start.getDate() + 7); + } + + return sundayCount; +} + +function scrollToSelectedDate(date) { + const selectedDate = new Date(date); + selectedDate.setHours(0, 0, 0, 0); + const dates = document.querySelectorAll('.dates'); + const columnWidth = dates[0].offsetWidth; + const dateDifference = endDate.getTime() - selectedDate.getTime(); + const numberOfSundays = countSundays(selectedDate, endDate); + const numberOfDays = Math.floor(dateDifference / oneDay) - numberOfSundays; + + let scrollPosition = numberOfDays * columnWidth; + tableContainerElement.scrollTo({ + left: scrollPosition, + behavior: 'smooth', + }); +} diff --git a/standup/style.css b/standup/style.css index f2f20ed6..01476479 100644 --- a/standup/style.css +++ b/standup/style.css @@ -153,9 +153,11 @@ tr:nth-child(even) { } tr:hover { - background-color: var(--dark-gray-color); cursor: pointer; } +td:hover { + background-color: var(--dark-gray-color); +} .table-container { overflow-x: auto; From 6293200edef087dcbf83bad8994aaafdde4555ef Mon Sep 17 00:00:00 2001 From: Ankit Kanyal Date: Fri, 27 Sep 2024 13:30:48 +0530 Subject: [PATCH 3/8] Made requested changes and added test case --- __tests__/standup/standup.test.js | 103 ++++++++++++++++++++++++++++++ standup/script.js | 31 +++++++-- 2 files changed, 127 insertions(+), 7 deletions(-) diff --git a/__tests__/standup/standup.test.js b/__tests__/standup/standup.test.js index 1695af3b..0da0cd0f 100644 --- a/__tests__/standup/standup.test.js +++ b/__tests__/standup/standup.test.js @@ -19,6 +19,35 @@ function isSunday(date) { return date.getDay() === 0; } +function countSundays(startDate, endDate) { + let start = new Date(startDate); + let end = new Date(endDate); + + let sundayCount = 0; + while (start.getDay() !== 0) { + start.setDate(start.getDate() + 1); + } + + while (start <= end) { + sundayCount++; + start.setDate(start.getDate() + 7); + } + + return sundayCount; +} + +function calculateScrollPosition(date, width) { + const selectedDate = new Date(date); + const endDate = new Date(); + selectedDate.setHours(0, 0, 0, 0); + + const dateDifference = endDate.getTime() - selectedDate.getTime(); + const numberOfSundays = countSundays(selectedDate, endDate); + const oneDay = 24 * 60 * 60 * 1000; + const days = Math.floor(dateDifference / oneDay) - numberOfSundays; + return days * width; +} + function generateExpectedDateValues() { const expectedDateValues = []; for ( @@ -155,4 +184,78 @@ describe('Standup Page', () => { const expectedDateValues = generateExpectedDateValues(); expect(dateCellValues.length).toEqual(expectedDateValues.length); }); + + it('should scroll to the correct date column when a date is selected', async () => { + const dateInput = await page.$('#date'); + const testDate = '2024-09-25'; + + await page.evaluate(() => { + const datePicker = document.getElementById('date'); + datePicker.value = '2024-09-25'; + console.log('Date Value: ' + datePicker.value); + const event = new Event('change'); + datePicker.dispatchEvent(event); + }); + + await page.waitForTimeout(1000); + + let scrollPosition = await page.evaluate(() => { + return document.getElementById('table-container').scrollLeft; + }); + + const width = await page.evaluate(() => { + return document.getElementsByClassName('dates')[0].offsetWidth; + }); + + scrollPosition = Math.ceil(scrollPosition); + + const expectedScrollPosition = calculateScrollPosition(testDate, width); + + expect(scrollPosition).toEqual(expectedScrollPosition); + + await page.evaluate(() => { + const datePicker = document.getElementById('date'); + datePicker.value = new Date().toISOString().slice(0, 10); + console.log('Date Value: ' + datePicker.value); + const event = new Event('change'); + datePicker.dispatchEvent(event); + }); + }); + + it('shouldnot scroll if the date selected is not in range', async () => { + const dateInput = await page.$('#date'); + const testDate = '2025-09-26'; + + await page.evaluate(() => { + const datePicker = document.getElementById('date'); + datePicker.value = '2025-09-26'; + console.log('Date Value: ' + datePicker.value); + const event = new Event('change'); + datePicker.dispatchEvent(event); + }); + + await page.waitForTimeout(1000); + + let scrollPosition = await page.evaluate(() => { + return document.getElementById('table-container').scrollLeft; + }); + + const width = await page.evaluate(() => { + return document.getElementsByClassName('dates')[0].offsetWidth; + }); + + scrollPosition = Math.ceil(scrollPosition); + + const expectedScrollPosition = calculateScrollPosition(testDate, width); + + expect(scrollPosition).toEqual(0); + + await page.evaluate(() => { + const datePicker = document.getElementById('date'); + datePicker.value = new Date().toISOString().slice(0, 10); + console.log('Date Value: ' + datePicker.value); + const event = new Event('change'); + datePicker.dispatchEvent(event); + }); + }); }); diff --git a/standup/script.js b/standup/script.js index a765ed23..e292b8ad 100644 --- a/standup/script.js +++ b/standup/script.js @@ -121,20 +121,33 @@ function createTableHeaderElement() { type: 'th', classList: ['user', 'date', 'table-head'], }); - headerCellElement.innerHTML = - 'DATES➡️


USERS ⬇️'; - headerRowElement.appendChild(headerCellElement); + const dateTextNode = document.createTextNode('DATES➡️'); + const breakTag = document.createElement('br'); + const breakTag2 = document.createElement('br'); + const hrTag = document.createElement('hr'); + const datePicker = document.createElement('input'); + const usersTextNode = document.createTextNode('USERS ⬇️'); + + datePicker.type = 'date'; + datePicker.id = 'date'; + datePicker.name = 'DATES'; + datePicker.max = endDate.toLocaleDateString('en-CA'); + datePicker.min = startDate.toLocaleDateString('en-CA'); + + headerCellElement.appendChild(dateTextNode); + headerCellElement.appendChild(breakTag); + headerCellElement.appendChild(breakTag2); + headerCellElement.appendChild(datePicker); + headerCellElement.appendChild(hrTag); + headerCellElement.appendChild(usersTextNode); - // My code Changes Start + headerRowElement.appendChild(headerCellElement); const dateInput = headerCellElement.querySelector('input'); dateInput.addEventListener('change', (event) => { scrollToSelectedDate(event.target.value); }); - dateInput.max = endDate.toLocaleDateString('en-CA'); - - // my code changes end for ( let date = new Date(endDate); @@ -390,6 +403,10 @@ function countSundays(startDate, endDate) { function scrollToSelectedDate(date) { const selectedDate = new Date(date); selectedDate.setHours(0, 0, 0, 0); + + if (selectedDate < startDate || selectedDate > endDate) { + return; + } const dates = document.querySelectorAll('.dates'); const columnWidth = dates[0].offsetWidth; const dateDifference = endDate.getTime() - selectedDate.getTime(); From e52cb7002abb6bfaf9f5f2468a8bbcffaa11e402 Mon Sep 17 00:00:00 2001 From: Ankit Kanyal Date: Tue, 24 Sep 2024 01:14:54 +0530 Subject: [PATCH 4/8] Completed the datepicker feature in user standup and fixed the hover issue on standup dates --- standup/script.js | 48 ++++++++++++++++++++++++++++++++++++++++++++++- standup/style.css | 4 +++- 2 files changed, 50 insertions(+), 2 deletions(-) diff --git a/standup/script.js b/standup/script.js index 61973702..a765ed23 100644 --- a/standup/script.js +++ b/standup/script.js @@ -121,8 +121,21 @@ function createTableHeaderElement() { type: 'th', classList: ['user', 'date', 'table-head'], }); - headerCellElement.innerHTML = 'DATES ➡️
USERS ⬇️'; + headerCellElement.innerHTML = + 'DATES➡️


USERS ⬇️'; + headerRowElement.appendChild(headerCellElement); + + // My code Changes Start + + const dateInput = headerCellElement.querySelector('input'); + dateInput.addEventListener('change', (event) => { + scrollToSelectedDate(event.target.value); + }); + dateInput.max = endDate.toLocaleDateString('en-CA'); + + // my code changes end + for ( let date = new Date(endDate); date >= startDate; @@ -356,3 +369,36 @@ document.addEventListener('click', (event) => { if (getUsernames().length > 0) { searchButtonHandler(); } + +function countSundays(startDate, endDate) { + let start = new Date(startDate); + let end = new Date(endDate); + + let sundayCount = 0; + while (start.getDay() !== 0) { + start.setDate(start.getDate() + 1); + } + + while (start <= end) { + sundayCount++; + start.setDate(start.getDate() + 7); + } + + return sundayCount; +} + +function scrollToSelectedDate(date) { + const selectedDate = new Date(date); + selectedDate.setHours(0, 0, 0, 0); + const dates = document.querySelectorAll('.dates'); + const columnWidth = dates[0].offsetWidth; + const dateDifference = endDate.getTime() - selectedDate.getTime(); + const numberOfSundays = countSundays(selectedDate, endDate); + const numberOfDays = Math.floor(dateDifference / oneDay) - numberOfSundays; + + let scrollPosition = numberOfDays * columnWidth; + tableContainerElement.scrollTo({ + left: scrollPosition, + behavior: 'smooth', + }); +} diff --git a/standup/style.css b/standup/style.css index f2f20ed6..01476479 100644 --- a/standup/style.css +++ b/standup/style.css @@ -153,9 +153,11 @@ tr:nth-child(even) { } tr:hover { - background-color: var(--dark-gray-color); cursor: pointer; } +td:hover { + background-color: var(--dark-gray-color); +} .table-container { overflow-x: auto; From 311b179701f8f15d49ed04c9868da195d1c8a217 Mon Sep 17 00:00:00 2001 From: Ankit Kanyal Date: Fri, 27 Sep 2024 13:30:48 +0530 Subject: [PATCH 5/8] Made requested changes and added test case --- __tests__/standup/standup.test.js | 103 ++++++++++++++++++++++++++++++ standup/script.js | 31 +++++++-- 2 files changed, 127 insertions(+), 7 deletions(-) diff --git a/__tests__/standup/standup.test.js b/__tests__/standup/standup.test.js index 1695af3b..0da0cd0f 100644 --- a/__tests__/standup/standup.test.js +++ b/__tests__/standup/standup.test.js @@ -19,6 +19,35 @@ function isSunday(date) { return date.getDay() === 0; } +function countSundays(startDate, endDate) { + let start = new Date(startDate); + let end = new Date(endDate); + + let sundayCount = 0; + while (start.getDay() !== 0) { + start.setDate(start.getDate() + 1); + } + + while (start <= end) { + sundayCount++; + start.setDate(start.getDate() + 7); + } + + return sundayCount; +} + +function calculateScrollPosition(date, width) { + const selectedDate = new Date(date); + const endDate = new Date(); + selectedDate.setHours(0, 0, 0, 0); + + const dateDifference = endDate.getTime() - selectedDate.getTime(); + const numberOfSundays = countSundays(selectedDate, endDate); + const oneDay = 24 * 60 * 60 * 1000; + const days = Math.floor(dateDifference / oneDay) - numberOfSundays; + return days * width; +} + function generateExpectedDateValues() { const expectedDateValues = []; for ( @@ -155,4 +184,78 @@ describe('Standup Page', () => { const expectedDateValues = generateExpectedDateValues(); expect(dateCellValues.length).toEqual(expectedDateValues.length); }); + + it('should scroll to the correct date column when a date is selected', async () => { + const dateInput = await page.$('#date'); + const testDate = '2024-09-25'; + + await page.evaluate(() => { + const datePicker = document.getElementById('date'); + datePicker.value = '2024-09-25'; + console.log('Date Value: ' + datePicker.value); + const event = new Event('change'); + datePicker.dispatchEvent(event); + }); + + await page.waitForTimeout(1000); + + let scrollPosition = await page.evaluate(() => { + return document.getElementById('table-container').scrollLeft; + }); + + const width = await page.evaluate(() => { + return document.getElementsByClassName('dates')[0].offsetWidth; + }); + + scrollPosition = Math.ceil(scrollPosition); + + const expectedScrollPosition = calculateScrollPosition(testDate, width); + + expect(scrollPosition).toEqual(expectedScrollPosition); + + await page.evaluate(() => { + const datePicker = document.getElementById('date'); + datePicker.value = new Date().toISOString().slice(0, 10); + console.log('Date Value: ' + datePicker.value); + const event = new Event('change'); + datePicker.dispatchEvent(event); + }); + }); + + it('shouldnot scroll if the date selected is not in range', async () => { + const dateInput = await page.$('#date'); + const testDate = '2025-09-26'; + + await page.evaluate(() => { + const datePicker = document.getElementById('date'); + datePicker.value = '2025-09-26'; + console.log('Date Value: ' + datePicker.value); + const event = new Event('change'); + datePicker.dispatchEvent(event); + }); + + await page.waitForTimeout(1000); + + let scrollPosition = await page.evaluate(() => { + return document.getElementById('table-container').scrollLeft; + }); + + const width = await page.evaluate(() => { + return document.getElementsByClassName('dates')[0].offsetWidth; + }); + + scrollPosition = Math.ceil(scrollPosition); + + const expectedScrollPosition = calculateScrollPosition(testDate, width); + + expect(scrollPosition).toEqual(0); + + await page.evaluate(() => { + const datePicker = document.getElementById('date'); + datePicker.value = new Date().toISOString().slice(0, 10); + console.log('Date Value: ' + datePicker.value); + const event = new Event('change'); + datePicker.dispatchEvent(event); + }); + }); }); diff --git a/standup/script.js b/standup/script.js index a765ed23..e292b8ad 100644 --- a/standup/script.js +++ b/standup/script.js @@ -121,20 +121,33 @@ function createTableHeaderElement() { type: 'th', classList: ['user', 'date', 'table-head'], }); - headerCellElement.innerHTML = - 'DATES➡️


USERS ⬇️'; - headerRowElement.appendChild(headerCellElement); + const dateTextNode = document.createTextNode('DATES➡️'); + const breakTag = document.createElement('br'); + const breakTag2 = document.createElement('br'); + const hrTag = document.createElement('hr'); + const datePicker = document.createElement('input'); + const usersTextNode = document.createTextNode('USERS ⬇️'); + + datePicker.type = 'date'; + datePicker.id = 'date'; + datePicker.name = 'DATES'; + datePicker.max = endDate.toLocaleDateString('en-CA'); + datePicker.min = startDate.toLocaleDateString('en-CA'); + + headerCellElement.appendChild(dateTextNode); + headerCellElement.appendChild(breakTag); + headerCellElement.appendChild(breakTag2); + headerCellElement.appendChild(datePicker); + headerCellElement.appendChild(hrTag); + headerCellElement.appendChild(usersTextNode); - // My code Changes Start + headerRowElement.appendChild(headerCellElement); const dateInput = headerCellElement.querySelector('input'); dateInput.addEventListener('change', (event) => { scrollToSelectedDate(event.target.value); }); - dateInput.max = endDate.toLocaleDateString('en-CA'); - - // my code changes end for ( let date = new Date(endDate); @@ -390,6 +403,10 @@ function countSundays(startDate, endDate) { function scrollToSelectedDate(date) { const selectedDate = new Date(date); selectedDate.setHours(0, 0, 0, 0); + + if (selectedDate < startDate || selectedDate > endDate) { + return; + } const dates = document.querySelectorAll('.dates'); const columnWidth = dates[0].offsetWidth; const dateDifference = endDate.getTime() - selectedDate.getTime(); From 1bf6968a08007eddfc408ab5e6b40bebf1e26719 Mon Sep 17 00:00:00 2001 From: Ankit Kanyal Date: Sat, 28 Sep 2024 00:11:09 +0530 Subject: [PATCH 6/8] Removed logs and made requested changes --- __tests__/standup/standup.test.js | 4 ---- standup/script.js | 11 ++++++----- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/__tests__/standup/standup.test.js b/__tests__/standup/standup.test.js index 0da0cd0f..e93d5d25 100644 --- a/__tests__/standup/standup.test.js +++ b/__tests__/standup/standup.test.js @@ -192,7 +192,6 @@ describe('Standup Page', () => { await page.evaluate(() => { const datePicker = document.getElementById('date'); datePicker.value = '2024-09-25'; - console.log('Date Value: ' + datePicker.value); const event = new Event('change'); datePicker.dispatchEvent(event); }); @@ -216,7 +215,6 @@ describe('Standup Page', () => { await page.evaluate(() => { const datePicker = document.getElementById('date'); datePicker.value = new Date().toISOString().slice(0, 10); - console.log('Date Value: ' + datePicker.value); const event = new Event('change'); datePicker.dispatchEvent(event); }); @@ -229,7 +227,6 @@ describe('Standup Page', () => { await page.evaluate(() => { const datePicker = document.getElementById('date'); datePicker.value = '2025-09-26'; - console.log('Date Value: ' + datePicker.value); const event = new Event('change'); datePicker.dispatchEvent(event); }); @@ -253,7 +250,6 @@ describe('Standup Page', () => { await page.evaluate(() => { const datePicker = document.getElementById('date'); datePicker.value = new Date().toISOString().slice(0, 10); - console.log('Date Value: ' + datePicker.value); const event = new Event('change'); datePicker.dispatchEvent(event); }); diff --git a/standup/script.js b/standup/script.js index e292b8ad..68e6322a 100644 --- a/standup/script.js +++ b/standup/script.js @@ -122,9 +122,10 @@ function createTableHeaderElement() { classList: ['user', 'date', 'table-head'], }); - const dateTextNode = document.createTextNode('DATES➡️'); - const breakTag = document.createElement('br'); - const breakTag2 = document.createElement('br'); + const dateTextNode = document.createElement('p'); + dateTextNode.style.marginTop = '0px'; + dateTextNode.innerText = 'DATES➡️'; + const hrTag = document.createElement('hr'); const datePicker = document.createElement('input'); const usersTextNode = document.createTextNode('USERS ⬇️'); @@ -136,8 +137,8 @@ function createTableHeaderElement() { datePicker.min = startDate.toLocaleDateString('en-CA'); headerCellElement.appendChild(dateTextNode); - headerCellElement.appendChild(breakTag); - headerCellElement.appendChild(breakTag2); + // headerCellElement.appendChild(breakTag); + // headerCellElement.appendChild(breakTag2); headerCellElement.appendChild(datePicker); headerCellElement.appendChild(hrTag); headerCellElement.appendChild(usersTextNode); From 5d9b58b868f91313ff9e7cfcb9b40c77f1c2d2c0 Mon Sep 17 00:00:00 2001 From: Ankit Kanyal Date: Sat, 28 Sep 2024 00:51:45 +0530 Subject: [PATCH 7/8] Removed unnecessary comments --- standup/script.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/standup/script.js b/standup/script.js index 68e6322a..4f6a841f 100644 --- a/standup/script.js +++ b/standup/script.js @@ -137,8 +137,6 @@ function createTableHeaderElement() { datePicker.min = startDate.toLocaleDateString('en-CA'); headerCellElement.appendChild(dateTextNode); - // headerCellElement.appendChild(breakTag); - // headerCellElement.appendChild(breakTag2); headerCellElement.appendChild(datePicker); headerCellElement.appendChild(hrTag); headerCellElement.appendChild(usersTextNode); From 0530906e7e83163e227b7779b860a6719bd0a5b4 Mon Sep 17 00:00:00 2001 From: Ankit Kanyal Date: Sat, 28 Sep 2024 01:42:44 +0530 Subject: [PATCH 8/8] Fix:Fixed breaking test cases --- __tests__/standup/standup.test.js | 33 ++----------------------------- 1 file changed, 2 insertions(+), 31 deletions(-) diff --git a/__tests__/standup/standup.test.js b/__tests__/standup/standup.test.js index 0f77f0cf..02fadd43 100644 --- a/__tests__/standup/standup.test.js +++ b/__tests__/standup/standup.test.js @@ -48,35 +48,6 @@ function calculateScrollPosition(date, width) { return days * width; } -function countSundays(startDate, endDate) { - let start = new Date(startDate); - let end = new Date(endDate); - - let sundayCount = 0; - while (start.getDay() !== 0) { - start.setDate(start.getDate() + 1); - } - - while (start <= end) { - sundayCount++; - start.setDate(start.getDate() + 7); - } - - return sundayCount; -} - -function calculateScrollPosition(date, width) { - const selectedDate = new Date(date); - const endDate = new Date(); - selectedDate.setHours(0, 0, 0, 0); - - const dateDifference = endDate.getTime() - selectedDate.getTime(); - const numberOfSundays = countSundays(selectedDate, endDate); - const oneDay = 24 * 60 * 60 * 1000; - const days = Math.floor(dateDifference / oneDay) - numberOfSundays; - return days * width; -} - function generateExpectedDateValues() { const expectedDateValues = []; for ( @@ -243,7 +214,7 @@ describe('Standup Page', () => { await page.evaluate(() => { const datePicker = document.getElementById('date'); - datePicker.value = new Date().toISOString().slice(0, 10); + datePicker.value = new Date().toLocaleDateString('en-CA'); const event = new Event('change'); datePicker.dispatchEvent(event); }); @@ -278,7 +249,7 @@ describe('Standup Page', () => { await page.evaluate(() => { const datePicker = document.getElementById('date'); - datePicker.value = new Date().toISOString().slice(0, 10); + datePicker.value = new Date().toLocaleDateString('en-CA'); const event = new Event('change'); datePicker.dispatchEvent(event); });