coveo-search-ui-tests
Version:
Testing framework for the Coveo JavaScript Search Framework
517 lines (496 loc) • 17.5 kB
TypeScript
// Generated by dts-bundle v0.7.3
// Dependencies for this module:
// ../../coveo-search-ui
declare module "CoveoJsSearchTests" {
import * as Fake from "CoveoJsSearchTests/Fake";
import * as Mock from "CoveoJsSearchTests/MockEnvironment";
import * as Simulate from "CoveoJsSearchTests/Simulate";
export { Fake, Mock, Simulate };
}
declare module "CoveoJsSearchTests/Fake" {
export * from "CoveoJsSearchTests/Fake/FakeAnalyticsEvents";
export * from "CoveoJsSearchTests/Fake/FakeEventArgs";
export * from "CoveoJsSearchTests/Fake/FakeFields";
export * from "CoveoJsSearchTests/Fake/FakeGroupBy";
export * from "CoveoJsSearchTests/Fake/FakeResults";
}
declare module "CoveoJsSearchTests/MockEnvironment" {
export * from "CoveoJsSearchTests/MockEnvironment/AdvancedComponentsSetup";
export * from "CoveoJsSearchTests/MockEnvironment/BasicComponentsSetup";
export * from "CoveoJsSearchTests/MockEnvironment/ComponentsSetup";
export * from "CoveoJsSearchTests/MockEnvironment/MockComponents";
export * from "CoveoJsSearchTests/MockEnvironment/MockEnvironmentBuilder";
export * from "CoveoJsSearchTests/MockEnvironment/OptionsComponentsSetup";
}
declare module "CoveoJsSearchTests/Simulate" {
export * from "CoveoJsSearchTests/Simulate/Actions";
export * from "CoveoJsSearchTests/Simulate/Components";
export * from "CoveoJsSearchTests/Simulate/Environment";
export * from "CoveoJsSearchTests/Simulate/Modules";
export * from "CoveoJsSearchTests/Simulate/Query";
}
declare module "CoveoJsSearchTests/Fake/FakeAnalyticsEvents" {
import { IClickEvent, ISearchEvent } from "coveo-search-ui";
export function createFakeSearchEvent(token?: string): ISearchEvent;
export function createFakeClickEvent(token?: string): IClickEvent;
}
declare module "CoveoJsSearchTests/Fake/FakeEventArgs" {
import { IOmniboxDataRow, IPopulateOmniboxEventArgs } from "coveo-search-ui";
export function createPopulateOmniboxEventArgs(
queryboxContent: string,
cursorPosition: number,
rows?: IOmniboxDataRow[]
): IPopulateOmniboxEventArgs;
}
declare module "CoveoJsSearchTests/Fake/FakeFields" {
import { IIndexFieldValue } from "coveo-search-ui";
export function createFakeFieldValue(
token: string,
count: number
): IIndexFieldValue;
export function createFakeFieldValues(
token: string,
count: number
): IIndexFieldValue[];
}
declare module "CoveoJsSearchTests/Fake/FakeGroupBy" {
import { IGroupByValue, IGroupByResult } from "coveo-search-ui";
export function createFakeGroupByResult(
field: string,
token: string,
count: number,
includeComputedValues?: boolean
): IGroupByResult;
export function createFakeRangeGroupByResult(
field: string,
start?: number,
end?: number,
steps?: number
): IGroupByResult;
export function createFakeHierarchicalValue(
token: string,
currentLevel: number,
delimitingCharacter?: string
): string;
export function createFakeHierarchicalGroupByResult(
field: string,
token: string,
numberOfLevel?: number,
countByLevel?: number,
delimitingCharacter?: string,
includeComputedValues?: boolean,
weirdCasing?: boolean
): IGroupByResult;
export function createFakeGroupByValue(
token: string,
count: number,
score?: number,
computedValue?: number
): IGroupByValue;
export function createFakeGroupByRangeValue(
from: number,
to: number,
token: string,
count: number,
score?: number,
computedValue?: number
): IGroupByValue;
}
declare module "CoveoJsSearchTests/Fake/FakeResults" {
import { IQueryResult, IQueryResults } from "coveo-search-ui";
export function createFakeResults(
count?: number,
token?: string
): IQueryResults;
export function createFakeResultsWithChildResults(
count?: number,
numberOfChildResults?: number,
totalNumberOfChildResult?: number
): IQueryResults;
export function createFakeResult(token?: string): IQueryResult;
export function createFakeResultWithChildResult(
token: string,
numberOfChildResult: number,
totalNumberOfChildResult?: number
): IQueryResult;
export function createFakeResultWithAttachments(
token?: string,
numberOfAttachments?: number,
attachmentType?: string[],
flags?: string,
attachmentsFlags?: string[],
withSubAttachments?: boolean
): IQueryResult;
export function createFakeFeedItemResult(
token: string,
nbLikes?: number,
nbTopics?: number,
hasAttachment?: boolean
): IQueryResult;
}
declare module "CoveoJsSearchTests/MockEnvironment/AdvancedComponentsSetup" {
import {
IBasicComponentSetup,
IComponentConstructor,
IComponentConstructorWithModalBox,
IBasicComponentSetupWithModalBox
} from "CoveoJsSearchTests/MockEnvironment/ComponentsSetup";
import { MockEnvironmentBuilder } from "CoveoJsSearchTests/MockEnvironment/MockEnvironmentBuilder";
import {
IComponentBindings,
Component,
IQueryResult,
OS_NAME
} from "coveo-search-ui";
export type EnvironmentBuilderModifier = (
env: MockEnvironmentBuilder
) => MockEnvironmentBuilder;
export interface IAdvancedComponentConstructor<T> {
new (
element: HTMLElement,
options: any,
bindings: IComponentBindings,
result: IQueryResult,
os: OS_NAME
): T;
}
export class AdvancedComponentSetupOptions {
element: HTMLElement;
cmpOptions: any;
modifyBuilder: EnvironmentBuilderModifier;
constructor(
element?: HTMLElement,
cmpOptions?: any,
modifyBuilder?: EnvironmentBuilderModifier
);
merge(toMerge: AdvancedComponentSetupOptions): this;
}
export function advancedComponentSetup<T extends Component>(
klass: IComponentConstructor<T>,
options?: AdvancedComponentSetupOptions
): IBasicComponentSetup<T>;
export function advancedComponentSetupWithModalBox<T extends Component>(
klass: IComponentConstructorWithModalBox<T>,
options?: AdvancedComponentSetupOptions
): IBasicComponentSetupWithModalBox<T>;
export function advancedResultComponentSetup<T extends Component>(
klass: IAdvancedComponentConstructor<T>,
result: IQueryResult,
options?: AdvancedComponentSetupOptions
): IBasicComponentSetup<T>;
}
declare module "CoveoJsSearchTests/MockEnvironment/BasicComponentsSetup" {
import {
IBasicComponentSetup,
IComponentConstructor,
IComponentConstructorWithModalBox,
IComponentConstructorWithResult,
IComponentConstructorWithResultAndModalBox,
ISearchInterfaceConstructor,
ISearchInterfaceSetup,
IBasicComponentSetupWithModalBox
} from "CoveoJsSearchTests/MockEnvironment/ComponentsSetup";
import { Component, SearchInterface } from "coveo-search-ui";
export function basicComponentSetup<T extends Component>(
klass: IComponentConstructor<T>,
options?: any
): IBasicComponentSetup<T>;
export function basicComponentSetupWithModalBox<T extends Component>(
klass: IComponentConstructorWithModalBox<T>,
options?: any
): IBasicComponentSetupWithModalBox<T>;
export function basicResultComponentSetup<T extends Component>(
klass: IComponentConstructorWithResult<T>,
options?: any
): IBasicComponentSetup<T>;
export function basicResultComponentSetupWithModalBox<T extends Component>(
klass: IComponentConstructorWithResultAndModalBox<T>,
options?: any
): IBasicComponentSetupWithModalBox<T>;
export function basicSearchInterfaceSetup<T extends SearchInterface>(
klass: ISearchInterfaceConstructor<T>
): ISearchInterfaceSetup<T>;
}
declare module "CoveoJsSearchTests/MockEnvironment/ComponentsSetup" {
import {
Component,
IComponentBindings,
ModalBox,
IQueryResult,
ISearchInterfaceOptions,
SearchInterface
} from "coveo-search-ui";
import { IMockEnvironment } from "CoveoJsSearchTests/MockEnvironment/MockEnvironmentBuilder";
export interface IComponentConstructor<T> {
new (element: HTMLElement, options: any, bindings: IComponentBindings): T;
}
export interface IBasicComponentSetup<T extends Component> {
env: IMockEnvironment;
cmp: T;
}
export interface IComponentConstructorWithModalBox<T> {
new (
element: HTMLElement,
options: any,
bindings: IComponentBindings,
modalBox: ModalBox.ModalBox
): T;
}
export interface IBasicComponentSetupWithModalBox<T extends Component>
extends IBasicComponentSetup<T> {
modalBox: ModalBox.ModalBox;
}
export interface IComponentConstructorWithResult<T> {
new (
element: HTMLElement,
options: any,
bindings: IComponentBindings,
result: IQueryResult
): T;
}
export interface IComponentConstructorWithResultAndModalBox<T> {
new (
element: HTMLElement,
options: any,
bindings: IComponentBindings,
result: IQueryResult,
modalBox: ModalBox.ModalBox
): T;
}
export interface ISearchInterfaceConstructor<T extends SearchInterface> {
new (
element: HTMLElement,
options?: ISearchInterfaceOptions,
analyticsOptions?: any,
_window?: Window
): T;
}
export interface ISearchInterfaceSetup<T extends SearchInterface> {
env: IMockEnvironment;
cmp: T;
}
}
declare module "CoveoJsSearchTests/MockEnvironment/MockComponents" {
import {
BaseComponent,
SearchInterface,
QueryController,
SearchEndpoint,
IAnalyticsClient,
AnalyticsEndpoint
} from "coveo-search-ui";
export type ConstructorFunc<T> = any;
export interface IResponsiveComponentsMock {
windoh: Window;
/**
* Set the breakpoint for small screen size.
* @param width
*/
setSmallScreenWidth(width: number): void;
/**
* Set the breakpoint for medium screen size
* @param width
*/
setMediumScreenWidth(width: number): void;
/**
* Get the current breakpoint for small screen size.
*
* If it was not explicitly set by {@link ResponsiveComponents.setSmallScreenWidth}, the default value is `480`.
* @returns {number}
*/
getSmallScreenWidth(): number;
/**
* Get the current breakpoint for medium screen size.
*
* If it was not explicitly set by {@link ResponsiveComponents.setMediumScreenWidth}, the default value is `800`.
* @returns {number}
*/
getMediumScreenWidth(): number;
/**
* Return true if the current screen size is smaller than the current breakpoint set for small screen width.
* @returns {boolean}
*/
isSmallScreenWidth(): boolean;
/**
* Return true if the current screen size is smaller than the current breakpoint set for medium screen width.
* @returns {boolean}
*/
isMediumScreenWidth(): boolean;
/**
* Return true if the current screen size is larger than the current breakpoint set for medium and small.
* @returns {boolean}
*/
isLargeScreenWidth(): boolean;
}
export function mock<T>(contructorFunc: ConstructorFunc<T>, name?: string): T;
export function mockWindow(): Window;
export function mockComponent<T extends BaseComponent>(
constructorFunc: ConstructorFunc<T>,
name?: string
): T;
export function mockSearchInterface(): SearchInterface;
export function mockResponsiveComponents(): IResponsiveComponentsMock;
export function mockQueryController(): QueryController;
export function mockSearchEndpoint(): SearchEndpoint;
export function mockUsageAnalytics(): IAnalyticsClient;
export function mockAnalyticsEndpoint(): AnalyticsEndpoint;
}
declare module "CoveoJsSearchTests/MockEnvironment/MockEnvironmentBuilder" {
import {
IComponentBindings,
IQueryResult,
SearchInterface,
QueryStateModel,
IAnalyticsClient,
ComponentStateModel,
ComponentOptionsModel,
OS_NAME,
SearchEndpoint,
QueryController
} from "coveo-search-ui";
export interface IMockEnvironment extends IComponentBindings {
root: HTMLElement;
element: HTMLElement;
result: IQueryResult;
searchEndpoint: SearchEndpoint;
searchInterface: SearchInterface;
queryController: QueryController;
queryStateModel: QueryStateModel;
usageAnalytics: IAnalyticsClient;
}
export interface IMockEnvironmentWithData<T> extends IMockEnvironment {
data: T;
}
export class MockEnvironmentBuilder {
root: HTMLElement;
element: HTMLElement;
result: IQueryResult;
searchEndpoint: SearchEndpoint;
searchInterface: SearchInterface;
queryController: QueryController;
queryStateModel: QueryStateModel;
componentStateModel: ComponentStateModel;
usageAnalytics: IAnalyticsClient;
componentOptionsModel: ComponentOptionsModel;
os: OS_NAME;
withRoot(root: HTMLElement): this;
withElement(element: HTMLElement): this;
withLiveQueryStateModel(): this;
withQueryStateModel(model: QueryStateModel): this;
withCollaborativeRating(): this;
withOs(os: OS_NAME): this;
withResult(result?: IQueryResult): this;
withEndpoint(endpoint?: SearchEndpoint): this;
build(): IMockEnvironment;
getBindings(): IMockEnvironment;
}
}
declare module "CoveoJsSearchTests/MockEnvironment/OptionsComponentsSetup" {
import {
ISearchInterfaceSetup,
ISearchInterfaceConstructor,
IComponentConstructorWithResult,
IComponentConstructorWithResultAndModalBox,
IBasicComponentSetupWithModalBox,
IBasicComponentSetup,
IComponentConstructor,
IComponentConstructorWithModalBox
} from "CoveoJsSearchTests/MockEnvironment/ComponentsSetup";
import {
SearchInterface,
IQueryResult,
ISearchInterfaceOptions,
Component
} from "coveo-search-ui";
export function optionsSearchInterfaceSetup<
T extends SearchInterface,
U extends ISearchInterfaceOptions
>(
klass: ISearchInterfaceConstructor<T>,
options: U
): ISearchInterfaceSetup<T>;
export function optionsResultComponentSetup<T extends Component, U>(
klass: IComponentConstructorWithResult<T>,
options: U,
result: IQueryResult
): IBasicComponentSetup<T>;
export function optionsResultComponentSetupWithModalBox<
T extends Component,
U
>(
klass: IComponentConstructorWithResultAndModalBox<T>,
options: U,
result: IQueryResult
): IBasicComponentSetupWithModalBox<T>;
export function optionsComponentSetup<T extends Component, U>(
klass: IComponentConstructor<T>,
options: U
): IBasicComponentSetup<T>;
export function optionsComponentSetupWithModalBox<T extends Component, U>(
klass: IComponentConstructorWithModalBox<T>,
options: U
): IBasicComponentSetupWithModalBox<T>;
}
declare module "CoveoJsSearchTests/Simulate/Actions" {
export function keyUp(
element: HTMLElement,
key: number,
shiftKey?: boolean
): void;
}
declare module "CoveoJsSearchTests/Simulate/Components" {
import { IMockEnvironment } from "CoveoJsSearchTests/MockEnvironment";
import { IOmniboxData, IBreadcrumbItem } from "coveo-search-ui";
export function omnibox(env: IMockEnvironment, options?: any): IOmniboxData;
export function breadcrumb(
env: IMockEnvironment,
options?: any
): IBreadcrumbItem[];
}
declare module "CoveoJsSearchTests/Simulate/Environment" {
export const JQuery: {};
export function isPhantomJs(): boolean;
export function isChromeHeadless(): boolean;
export function addJQuery(): any;
export function removeJQuery(): void;
}
declare module "CoveoJsSearchTests/Simulate/Modules" {
import { ModalBox } from "coveo-search-ui";
export function modalBoxModule(): ModalBox.ModalBox;
export function analyticsStoreModule(
actionsHistory?: CoveoAnalytics.HistoryElement[]
): CoveoAnalytics.HistoryStore;
}
declare module "CoveoJsSearchTests/Simulate/Query" {
import { IMockEnvironment } from "CoveoJsSearchTests/MockEnvironment";
import {
QueryBuilder,
IQuery,
IQueryCorrection,
IEndpointError,
IQueryResults,
IGroupByResult,
Component
} from "coveo-search-ui";
export interface ISimulateQueryData {
query?: IQuery;
queryBuilder?: QueryBuilder;
searchAsYouType?: boolean;
promise?: Promise<IQueryResults>;
error?: IEndpointError;
results?: IQueryResults;
queryCorrections?: IQueryCorrection[];
groupByResults?: IGroupByResult[];
callbackDuringQuery?(): void;
callbackAfterNoResults?(): void;
callbackAfterQuery?(): void;
doNotFlushDefer?: boolean;
deferSuccess?: boolean;
cancel?: boolean;
origin?: Component;
}
export function query(
env: IMockEnvironment,
options?: ISimulateQueryData
): ISimulateQueryData;
}