@wdio/browserstack-service
Version:
WebdriverIO service for better Browserstack integration
89 lines • 3.26 kB
TypeScript
import type TrackedContext from '../instances/trackedContext.js';
import TrackedInstance from '../instances/trackedInstance.js';
import type TestFrameworkInstance from '../instances/testFrameworkInstance.js';
export default class TestFramework {
static instances: Map<any, any>;
testFrameworks: Array<string>;
testFrameworkVersions: Record<string, string>;
binSessionId: string | null;
/**
* Constructor for the TestFramework
* @param {Array} testFrameworks - List of Test frameworks
* @param {Map} testFrameworkVersions - Name of the Test frameworks
* @param {string} binSessionId - BinSessionId
*/
constructor(testFrameworks: Array<string>, testFrameworkVersions: Record<string, string>, binSessionId: string);
/**
* get all instances
* @return {Map} - return all instances Map
*/
getInstances(): Map<any, any>;
/**
* set testFrameworkInstance
* @param {TrackedContext} context
* @param {TestFrameworkInstance} instance
*/
setInstance(context: TrackedContext, instance: TestFrameworkInstance): void;
/**
* Find instance and track any state for the test framework
* @returns instance
*/
static getTrackedInstance(): any;
/**
* Set tracked instance
* @returns {string} The name of the test framework
*/
static setTrackedInstance(context: TrackedContext, instance: TestFrameworkInstance): void;
/**
* get all test framework versions
* @returns {Map} - return all versions of framework available.
*/
getTestFrameworksVersions(): Record<string, string>;
/**
* get all test frameworks
* @returns {Array} - return all test frameworks
*/
getTestFrameworks(): string[];
/**
* Track an event
* @param {TestFrameworkState} testFrameworkState
* @param {HookState} hookState
* @param {*} args
* @returns {void}
*/
trackEvent(testFrameworkState: State, hookState: State, args?: unknown): void;
/**
* run test hooks
* @param {TestFrameworkInstance} instance
* @param {TestFrameworkState} testFrameworkState
* @param {HookState} hookState
* @param {*} args
*/
runHooks(instance: TestFrameworkInstance, testFrameworkState: State, hookState: State, args?: unknown): Promise<void>;
/**
* Register an observer
* @param {TestFrameworkState} testFrameworkState
* @param {HookState} hookState
* @param {*} callback
* @returns {void}
*/
static registerObserver(testFrameworkState: State, hookState: State, callback: Function): void;
/**
* Resolve instance for the test framework
* @param {TestFrameworkInstance} testFrameworkInstance
* @param {string} key
* @returns {TestFrameworkInstance}
*/
static getState(instance: TestFrameworkInstance, key: string): any;
static hasState(instance: TestFrameworkInstance, key: string): boolean;
/**
* Set the state
* @param {TrackedInstance} instance - The instance
* @param {string} key - The key
* @param {*} value - The value
* @returns
*/
static setState(instance: TrackedInstance, key: string, value: unknown): void;
updateInstanceState(instance: TestFrameworkInstance, testFrameworkState: State, hookState: State): void;
}
//# sourceMappingURL=testFramework.d.ts.map