UNPKG

@gatling.io/core

Version:

Gatling JS is a JavaScript/TypeScript interface for the [Gatling load testing tool](https://gatling.io/).

41 lines (40 loc) 2.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.doIfEqualsOrElseImpl = exports.doIfOrElseImpl = void 0; const session_1 = require("../session"); const wrapThen = (jvmThen, wrap) => ({ then: (executable, ...executables) => wrapOrElse(jvmThen.then(executable._underlying, ...executables.map((e) => e._underlying)), wrap) }); const wrapOrElse = (jvmOrElse, wrap) => ({ orElse: (executable, ...executables) => wrap(jvmOrElse.orElse(executable._underlying, ...executables.map((e) => e._underlying))) }); const doIfOrElseImpl = (jvmDoIfOrElse, wrap) => (condition) => wrapThen(typeof condition === "function" ? jvmDoIfOrElse.doIfOrElse((0, session_1.underlyingSessionTo)(condition)) : jvmDoIfOrElse.doIfOrElse(condition), wrap); exports.doIfOrElseImpl = doIfOrElseImpl; const doIfEqualsOrElseImpl = (jvmDoIfEqualsOrElse, wrap) => (actual, expected) => { if (typeof actual === "function") { const wrappedActual = (0, session_1.underlyingSessionTo)(actual); if (typeof expected === "function") { return wrapThen(jvmDoIfEqualsOrElse.doIfEqualsOrElse(wrappedActual, (0, session_1.underlyingSessionTo)(expected)), wrap); } else if (typeof expected === "string") { return wrapThen(jvmDoIfEqualsOrElse.doIfEqualsOrElse(wrappedActual, expected), wrap); } else { return wrapThen(jvmDoIfEqualsOrElse.doIfEqualsOrElse(wrappedActual, expected), wrap); } } else { if (typeof expected === "function") { return wrapThen(jvmDoIfEqualsOrElse.doIfEqualsOrElse(actual, (0, session_1.underlyingSessionTo)(expected)), wrap); } else if (typeof expected === "string") { return wrapThen(jvmDoIfEqualsOrElse.doIfEqualsOrElse(actual, expected), wrap); } else { return wrapThen(jvmDoIfEqualsOrElse.doIfEqualsOrElse(actual, expected), wrap); } } }; exports.doIfEqualsOrElseImpl = doIfEqualsOrElseImpl;