test(team): cover advisory snapshot timeout
This commit is contained in:
parent
44f609ab6a
commit
db4a73bda7
1 changed files with 10 additions and 17 deletions
|
|
@ -4521,27 +4521,20 @@ describe('TeamDataService', () => {
|
|||
});
|
||||
|
||||
it('does not block the team snapshot on slow runtime advisories', async () => {
|
||||
vi.useFakeTimers();
|
||||
const deferred = createDeferred<Map<string, unknown>>();
|
||||
try {
|
||||
const harness = createGetTeamDataHarness({
|
||||
resolveMembers: () => [buildResolvedMember('alice')],
|
||||
getMemberAdvisories: async () => deferred.promise,
|
||||
});
|
||||
const harness = createGetTeamDataHarness({
|
||||
resolveMembers: () => [buildResolvedMember('alice')],
|
||||
getMemberAdvisories: async () => deferred.promise,
|
||||
});
|
||||
|
||||
const pending = harness.service.getTeamData('my-team');
|
||||
await vi.advanceTimersByTimeAsync(751);
|
||||
const data = await pending;
|
||||
const data = await harness.service.getTeamData('my-team');
|
||||
|
||||
expect(harness.advisoryService.getMemberAdvisories).toHaveBeenCalledTimes(1);
|
||||
expect(data.members).toEqual([expect.objectContaining({ name: 'alice' })]);
|
||||
expect(data.members[0]?.runtimeAdvisory).toBeUndefined();
|
||||
expect(harness.advisoryService.getMemberAdvisories).toHaveBeenCalledTimes(1);
|
||||
expect(data.members).toEqual([expect.objectContaining({ name: 'alice' })]);
|
||||
expect(data.members[0]?.runtimeAdvisory).toBeUndefined();
|
||||
|
||||
deferred.resolve(new Map());
|
||||
await Promise.resolve();
|
||||
} finally {
|
||||
vi.useRealTimers();
|
||||
}
|
||||
deferred.resolve(new Map());
|
||||
await Promise.resolve();
|
||||
});
|
||||
|
||||
it('synthesizes a team lead from team meta when config and members meta have no lead entry', async () => {
|
||||
|
|
|
|||
Loading…
Reference in a new issue