@gatling.io/core
Version:
Gatling JS is a JavaScript/TypeScript interface for the [Gatling load testing tool](https://gatling.io/).
23 lines (22 loc) • 1.02 kB
TypeScript
import { ChoiceWithWeight } from "./choices";
import { Executable } from "./execs";
import JvmRandomSwitchOrElse = io.gatling.javaapi.core.condition.RandomSwitchOrElse;
export interface On<T> {
on(...choices: ChoiceWithWeight[]): OrElse<T>;
}
export interface OrElse<T> {
orElse(executable: Executable<any>, ...executables: Executable<any>[]): T;
}
export interface RandomSwitchOrElseFunction<T extends RandomSwitchOrElse<T>> {
/**
* Execute one of the "choices" randomly based on their respective weight. Weights are expressed
* in percents so their sum must be <= 100%.
*
* @returns the DSL component for defining the "else" block
*/
(): On<T>;
}
export interface RandomSwitchOrElse<T extends RandomSwitchOrElse<T>> {
randomSwitchOrElse: RandomSwitchOrElseFunction<T>;
}
export declare const randomSwitchOrElseImpl: <J2, J1 extends JvmRandomSwitchOrElse<J2, any>, T extends RandomSwitchOrElse<T>>(jvmRandomSwitch: J1, wrap: (wrapped: J2) => T) => RandomSwitchOrElseFunction<T>;