Skip to content

Commit eea0290

Browse files
committed
[manager] Reuse testRunId on repeat
1 parent cf141fc commit eea0290

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

src/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -405,6 +405,7 @@ export const createManager: typeof createManagerDecl = (): Manager => {
405405
taskRun[TaskRunPositions.Arg],
406406
repeatDelay,
407407
taskRun[TaskRunPositions.Config],
408+
taskRunId,
408409
),
409410
);
410411
}
@@ -628,6 +629,7 @@ export const createManager: typeof createManagerDecl = (): Manager => {
628629
arg?: string,
629630
startAfter: TimestampMs | DurationMs = 0,
630631
config: TaskRunConfig = {},
632+
repeatTestRunId?: Id,
631633
): Id | undefined => {
632634
if (status == ManagerStatusValues.Stopping) {
633635
return undefined;
@@ -640,7 +642,7 @@ export const createManager: typeof createManagerDecl = (): Manager => {
640642
taskIdOrArgs.config,
641643
);
642644
}
643-
const taskRunId = getUniqueId();
645+
const taskRunId = repeatTestRunId ?? getUniqueId();
644646
const startTimestamp = normalizeTimestamp(startAfter);
645647
mapSet(taskRunMap, taskRunId, [
646648
id(taskIdOrArgs),

test/unit/core/running.test.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,16 +152,18 @@ describe('ticks', () => {
152152
expect(manager.getScheduledTaskRunIds().length).toEqual(0);
153153
expect(manager.getRunningTaskRunIds()).toEqual([taskRunId]);
154154
await pause(10);
155-
expect(manager.getTaskRunInfo(taskRunId!)).toBeUndefined();
155+
expect(manager.getTaskRunInfo(taskRunId!)?.running).toEqual(false);
156156
expect(manager.getScheduledTaskRunIds().length).toEqual(1);
157157
expect(manager.getRunningTaskRunIds().length).toEqual(0);
158158
await pause(10);
159159
expect(manager.getScheduledTaskRunIds().length).toEqual(1);
160160
expect(manager.getRunningTaskRunIds().length).toEqual(0);
161161
await pause(20);
162+
expect(manager.getTaskRunInfo(taskRunId!)?.running).toEqual(true);
162163
expect(manager.getScheduledTaskRunIds().length).toEqual(0);
163164
expect(manager.getRunningTaskRunIds().length).toEqual(1);
164165
await pause(30);
166+
expect(manager.getTaskRunInfo(taskRunId!)?.running).toEqual(false);
165167
expect(manager.getScheduledTaskRunIds().length).toEqual(1);
166168
expect(manager.getRunningTaskRunIds().length).toEqual(0);
167169
manager.stop();

0 commit comments

Comments
 (0)