DigitalConsumer.FixMyGlass/playwright-tests/impl/utils/DateUtils.ts
maguire-arman f29937700c Adds Automated Regression Pipeline&Jira writeback reporter to playwright
Implements a custom Playwright reporter to integrate with Jira.

This reporter automatically creates/updates test case and bug subtasks in Jira based on Playwright test results. It also uploads the ortoni HTML report to the parent Jira card.

Key features:
- Creates a regression card if none are found
- Transitions test subtasks based on test results.
- Creates bug subtasks for failed tests.
- Uploads the Ortoni HTML report as an attachment to the Jira card.
- Configurable through environment variables (Jira server, username, API key, project key, etc.).

Also adds axios-retry to handle rate limiting errors from Jira API
2025-05-09 14:51:29 -04:00

35 lines
No EOL
1 KiB
TypeScript

export function formatDate(date: Date) {
const isoString = date.toISOString();
return isoString.slice(0, 10);
}
export function formatDateForFilename(date: Date) {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
const hour = String(date.getHours()).padStart(2, '0');
const minute = String(date.getMinutes()).padStart(2, '0');
return `${year}${month}${day}_${hour}${minute}`;
}
export function formatTime(date: Date) {
return date.toLocaleTimeString('en-US', {
hour: 'numeric',
minute: '2-digit',
hour12: true
});
}
export function getNextWeekday(date?: Date) {
if (!date) {
date = new Date();
date.setHours(8,0,0,0);
}
const dayOfWeek = date.getDay();
const daysToAdd = dayOfWeek === 5? 3: 1; // Add 3 days if today is friday. Otherwise add 1.
const nextDay = new Date(date);
nextDay.setDate(date.getDate() + daysToAdd);
return nextDay;
}