Skip to content

Commit d5ad576

Browse files
test: create defer util
1 parent c8c63dd commit d5ad576

File tree

5 files changed

+9
-18
lines changed

5 files changed

+9
-18
lines changed

packages/autocomplete-core/src/__tests__/concurrency.test.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,8 @@
11
import userEvent from '@testing-library/user-event';
22

3+
import { defer } from '../../../../test/utils';
34
import { createAutocomplete } from '../createAutocomplete';
45

5-
function defer<TValue>(fn: () => TValue, timeout: number) {
6-
return new Promise<TValue>((resolve) => {
7-
setTimeout(() => resolve(fn()), timeout);
8-
});
9-
}
10-
116
describe.skip('concurrency', () => {
127
test('resolves the responses in order from getSources', async () => {
138
// These delays make the second query come back after the third one.

packages/autocomplete-core/src/__tests__/stallThreshold.test.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,8 @@
11
import userEvent from '@testing-library/user-event';
22

3+
import { defer } from '../../../../test/utils';
34
import { createAutocomplete } from '../createAutocomplete';
45

5-
function defer<TValue>(fn: () => TValue, timeout: number) {
6-
return new Promise<TValue>((resolve) => {
7-
setTimeout(() => resolve(fn()), timeout);
8-
});
9-
}
10-
116
describe('stallThreshold', () => {
127
test('sets the experience to stalled after 300ms', async () => {
138
const onStateChange = jest.fn();

packages/autocomplete-core/src/utils/__tests__/createConcurrentSafePromise.test.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
1+
import { defer } from '../../../../../test/utils';
12
import { createConcurrentSafePromise } from '../createConcurrentSafePromise';
23

3-
function defer<TValue>(fn: () => TValue, timeout: number) {
4-
return new Promise<TValue>((resolve) => {
5-
setTimeout(() => resolve(fn()), timeout);
6-
});
7-
}
8-
94
describe('createConcurrentSafePromise', () => {
105
test('resolves the non-promise values in order', async () => {
116
type PromiseValue = { value: number };

test/utils/defer.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
export function defer<TValue>(fn: () => TValue, timeout: number) {
2+
return new Promise<TValue>((resolve) => {
3+
setTimeout(() => resolve(fn()), timeout);
4+
});
5+
}

test/utils/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
export * from './createCollection';
22
export * from './createPlayground';
33
export * from './createSource';
4+
export * from './defer';
45
export * from './runAllMicroTasks';

0 commit comments

Comments
 (0)