mirror of
https://github.com/youzan/vant.git
synced 2025-10-15 23:55:08 +00:00
51 lines
1.0 KiB
JavaScript
51 lines
1.0 KiB
JavaScript
import { later } from '../../../test';
|
|
import { callInterceptor } from '../interceptor';
|
|
|
|
test('#callInterceptor', async () => {
|
|
const done = jest.fn();
|
|
callInterceptor({ done });
|
|
expect(done).toHaveBeenCalledTimes(1);
|
|
|
|
callInterceptor({
|
|
interceptor: () => false,
|
|
done,
|
|
});
|
|
expect(done).toHaveBeenCalledTimes(1);
|
|
|
|
callInterceptor({
|
|
interceptor: () => true,
|
|
done,
|
|
});
|
|
expect(done).toHaveBeenCalledTimes(2);
|
|
|
|
callInterceptor({
|
|
interceptor: () => Promise.resolve(false),
|
|
done,
|
|
});
|
|
await later();
|
|
expect(done).toHaveBeenCalledTimes(2);
|
|
|
|
callInterceptor({
|
|
interceptor: () => Promise.resolve(true),
|
|
done,
|
|
});
|
|
await later();
|
|
expect(done).toHaveBeenCalledTimes(3);
|
|
|
|
callInterceptor({
|
|
interceptor: () => Promise.reject(),
|
|
done,
|
|
});
|
|
await later();
|
|
expect(done).toHaveBeenCalledTimes(3);
|
|
|
|
callInterceptor({
|
|
interceptor: (...args) => {
|
|
expect(args).toEqual(['foo']);
|
|
},
|
|
args: ['foo'],
|
|
done,
|
|
});
|
|
expect(done).toHaveBeenCalledTimes(3);
|
|
});
|