diff --git a/CHANGELOG.md b/CHANGELOG.md index 748d4a0a6c..96ad2a5964 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,11 +16,21 @@ _Note: Gaps between patch versions are faulty, broken or test releases._ #### :boom: Breaking Change * Removed `shouldPerformDataRequest` prop in `b-virtual-scroll-new` `base/b-virtual-scroll-new` +* `tests/helpers/network/interceptor` no longer has a named export, the `RequestInterceptor` class is now exported as the default export `tests/helpers/network/interceptor` #### :rocket: New Feature * Added `preloadAmount` prop in b`-virtual-scroll-new` `base/b-virtual-scroll-new` +#### :house: Internal + +* Added re-export of modules from `tests/helpers`: + - Request + - RequestInterceptor + - Mock + +* Removed bad import of async module from `tests/helpers/network/interceptor` + ## v3.65.1 (2024-02-13) #### :bug: Bug Fix diff --git a/src/base/b-virtual-scroll-new/test/api/helpers/index.ts b/src/base/b-virtual-scroll-new/test/api/helpers/index.ts index 5f90bb00e7..a9f6401e43 100644 --- a/src/base/b-virtual-scroll-new/test/api/helpers/index.ts +++ b/src/base/b-virtual-scroll-new/test/api/helpers/index.ts @@ -15,7 +15,7 @@ import type { MountedChild, ComponentItem, VirtualScrollState, MountedItem } fro import { componentEvents, componentObserverLocalEvents } from 'base/b-virtual-scroll-new/const'; import { paginationHandler } from 'tests/network-interceptors/pagination'; -import { RequestInterceptor } from 'tests/helpers/network/interceptor'; +import { RequestInterceptor } from 'tests/helpers'; import { VirtualScrollComponentObject } from 'base/b-virtual-scroll-new/test/api/component-object'; import type { DataConveyor, DataItemCtor, MountedItemCtor, StateApi, VirtualScrollTestHelpers, MountedSeparatorCtor, IndexedObj } from 'base/b-virtual-scroll-new/test/api/helpers/interface'; diff --git a/src/base/b-virtual-scroll-new/test/api/helpers/interface.ts b/src/base/b-virtual-scroll-new/test/api/helpers/interface.ts index 40b57f2eb0..2136150dc6 100644 --- a/src/base/b-virtual-scroll-new/test/api/helpers/interface.ts +++ b/src/base/b-virtual-scroll-new/test/api/helpers/interface.ts @@ -9,7 +9,7 @@ import type { ComponentItem, VirtualScrollState, MountedChild, MountedItem } from 'base/b-virtual-scroll-new/interface'; import type { SpyObject } from 'tests/helpers/mock/interface'; -import type { RequestInterceptor } from 'tests/helpers/network/interceptor'; +import type { RequestInterceptor } from 'tests/helpers'; import type { VirtualScrollComponentObject } from 'base/b-virtual-scroll-new/test/api/component-object'; /** diff --git a/tests/helpers/index.ts b/tests/helpers/index.ts index 6f7956044e..cc7ce055f1 100644 --- a/tests/helpers/index.ts +++ b/tests/helpers/index.ts @@ -15,6 +15,8 @@ import Scroll from 'tests/helpers/scroll'; import Router from 'tests/helpers/router'; import Request from 'tests/helpers/request'; import Gestures from 'tests/helpers/gestures'; +import RequestInterceptor from 'tests/helpers/network/interceptor'; +import * as Mock from 'tests/helpers/mock'; export { @@ -22,10 +24,13 @@ export { DOM, Utils, Component, + Request, ComponentObject, Scroll, Router, - Gestures + Gestures, + RequestInterceptor, + Mock }; diff --git a/tests/helpers/network/interceptor/index.ts b/tests/helpers/network/interceptor/index.ts index c9a833f39d..c47cdfbd2b 100644 --- a/tests/helpers/network/interceptor/index.ts +++ b/tests/helpers/network/interceptor/index.ts @@ -6,7 +6,6 @@ * https://github.com/V4Fire/Client/blob/master/LICENSE */ -import Async from '@v4fire/core/core/async'; import type { BrowserContext, Page, Request, Route } from 'playwright'; import delay from 'delay'; import { ModuleMocker } from 'jest-mock'; @@ -18,7 +17,7 @@ import type { InterceptedRequest, ResponseHandler, ResponseOptions, ResponsePayl /** * API that provides a simple way to intercept and respond to any request. */ -export class RequestInterceptor { +export default class RequestInterceptor { /** * The route context. */ @@ -39,11 +38,6 @@ export class RequestInterceptor { */ readonly mock: ReturnType; - /** - * {@link Async} - */ - protected readonly async: Async = new Async(); - /** * If true, intercepted requests are not automatically responded to, instead use the * {@link RequestInterceptor.respond} method. @@ -125,9 +119,10 @@ export class RequestInterceptor { throw new Error('Failed to call respond on an instance that is not a responder'); } - if (this.requestQueueLength === 0) { - await this.async.wait(() => this.requestQueueLength > 0); - } + do { + await delay(16); + + } while (this.requestQueueLength === 0) return this.respondQueue.shift()?.(); }