fix(core): Ensure waiting executions account for workflow timezone (#8340)

This commit is contained in:
Iván Ovejero
2024-01-16 18:28:19 +01:00
committed by GitHub
parent d4c93b1607
commit 3734c89cf6
5 changed files with 51 additions and 1 deletions

View File

@@ -0,0 +1,35 @@
import { toUtcDate } from '@/utils';
describe('utils', () => {
describe('toUtcDate()', () => {
test('should convert to UTC date by adding', () => {
const originalDate = new Date('2020-01-01T00:00:00.000Z');
const timezone = 'America/New_York'; // +5 to reach Z
const utcDate = toUtcDate(originalDate, timezone);
expect(utcDate).toBeInstanceOf(Date);
expect(utcDate.toISOString()).toBe('2020-01-01T05:00:00.000Z');
});
test('should convert to UTC date by subtracting', () => {
const originalDate = new Date('2020-01-01T00:00:00.000Z');
const timezone = 'Europe/Paris'; // -1 to reach Z
const utcDate = toUtcDate(originalDate, timezone);
expect(utcDate).toBeInstanceOf(Date);
expect(utcDate.toISOString()).toBe('2019-12-31T23:00:00.000Z');
});
test('should convert to UTC date when already UTC', () => {
const originalDate = new Date('2020-01-01T00:00:00.000Z');
const timezone = 'UTC'; // already at Z
const utcDate = toUtcDate(originalDate, timezone);
expect(utcDate).toBeInstanceOf(Date);
expect(utcDate.toISOString()).toBe('2020-01-01T00:00:00.000Z');
});
});
});