@dossierhq/integration-test
Version:
Integration test to ensure that different Dossier database adapters work as expected.
13 lines (12 loc) • 2.59 kB
TypeScript
import { EntityQueryOrder, EntityStatus, PublishedEntityQueryOrder, type Connection, type Edge, type ErrorType, type OkResult, type PromiseResult, type Result } from '@dossierhq/core';
import type { AppDossierClient, AppEntity, AppPublishedDossierClient, AppPublishedEntity } from '../SchemaTypes.js';
export declare function assertAdminEntityConnectionToMatchSlice(allEntities: AppEntity[], connectionResult: Result<Connection<Edge<AppEntity, ErrorType>> | null, ErrorType>, sliceStart: number, sliceEnd: number | undefined, order?: EntityQueryOrder, reverse?: boolean): void;
export declare function assertPublishedEntityConnectionToMatchSlice(allEntities: AppPublishedEntity[], connectionResult: Result<Connection<Edge<AppPublishedEntity, ErrorType>> | null, ErrorType>, sliceStart: number, sliceEnd: number | undefined, order?: PublishedEntityQueryOrder, reverse?: boolean): void;
export declare function assertSearchResultEntities<TItem extends AppEntity | AppPublishedEntity>(result: Result<Connection<Edge<TItem, ErrorType>> | null, typeof ErrorType.BadRequest | typeof ErrorType.NotAuthorized | typeof ErrorType.Generic>, actualEntities: TItem[]): asserts result is OkResult<Connection<Edge<TItem, ErrorType>> | null, typeof ErrorType.BadRequest | typeof ErrorType.NotAuthorized | typeof ErrorType.Generic>;
export declare function assertPageInfoEquals<TEntity extends AppEntity | AppPublishedEntity>(connectionResult: Result<Connection<Edge<TEntity, ErrorType>> | null, ErrorType>, { hasNextPage, hasPreviousPage }: {
hasNextPage: boolean;
hasPreviousPage: boolean;
}): void;
export declare function countSearchResultWithEntity<TClient extends AppDossierClient | AppPublishedDossierClient>(client: TClient, query: Parameters<TClient['getEntities']>[0], entityId: string): PromiseResult<number, typeof ErrorType.BadRequest | typeof ErrorType.NotAuthorized | typeof ErrorType.Generic>;
export declare function collectMatchingSearchResultNodes<TClient extends AppDossierClient | AppPublishedDossierClient>(client: TClient, query: Parameters<TClient['getEntities']>[0], matcher: (node: Awaited<ReturnType<TClient['getEntity']>>) => boolean): PromiseResult<Awaited<ReturnType<TClient['getEntity']>>[], typeof ErrorType.BadRequest | typeof ErrorType.NotAuthorized | typeof ErrorType.Generic>;
export declare function countSearchResultStatuses(client: AppDossierClient, query: Parameters<AppDossierClient['getEntities']>[0]): PromiseResult<Record<EntityStatus | 'valid' | 'invalid', number>, typeof ErrorType.BadRequest | typeof ErrorType.NotAuthorized | typeof ErrorType.Generic>;