Ng-apimock Service

> wdio-ng-apimock-service is a 3rd party package, for more information please see GitHub | npm > webdriver plugin for @ng-apimock/core

Getting Started

npm install wdio-ng-apimock-service --save-dev

Usage

This plugin connects to ng-apimock and makes the plugin functions available within the tests.

Enable this plugin in your config file:

exports.config = {
services: [['ng-apimock', {
globalName: 'ngApimock' // optional option (defaults to ngApimock)
}]]
};

After registering the plugin, you can use it in your tests by calling it like this:

describe('Some test', () => {
it('does something', async () =>
await ngApimock.selectScenario('my-mock-name', 'some-scenario'));
});

Available plugin functions

The following functions are available. Each plugin function returns a promise.

selectScenario(name: string, scenario: string): Promiseany;

Selects the given scenario (when calling this function without a scenario or with 'passThrough' as scenario name, the call will be passed through to the actual backend).

delayResponse(mockName: string, delay: number): Promise;

Sets the delay time in milliseconds for the mock. This makes sure the response is delayed. The delay set here overrides the delay defined in the response mock.

echoRequest(name: string, echo: boolean): Promise;

Sets the indicator which enables / disables the request logging.

setVariable(key: string, value: any): Promise;

Adds or updates the global variable.

setVariables(variables: {"{"}[key: string]: any;{"}"}): Promise;

Adds or updates the global variables ie. {"{"}'some':'value', 'another': 'value'{"}"}.

deleteVariable(key: string): Promise;

Deletes the global variable.

resetMocksToDefault(): Promise;

Resets all the mocks to the default state.

setMocksToPassThrough(): Promise;

Sets all the mocks to pass through.

selectPreset(name: string): Promise;

Selects the mocks and variables in the selected state.