UNPKG

@gatling.io/core

Version:

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

74 lines (73 loc) 3.96 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.arrayFeeder = exports.jsonUrl = exports.jsonFile = exports.separatedValues = exports.tsv = exports.ssv = exports.csv = exports.wrapFileBasedFeederBuilder = void 0; const jvm_types_1 = require("@gatling.io/jvm-types"); const wrapFeederBuilder = (_underlying) => ({ _underlying, queue: () => wrapFeederBuilder(_underlying.queue()), random: () => wrapFeederBuilder(_underlying.random()), shuffle: () => wrapFeederBuilder(_underlying.shuffle()), circular: () => wrapFeederBuilder(_underlying.circular()), transform: (f) => wrapFeederBuilder(_underlying.transform(f)), recordsCount: () => _underlying.recordsCount(), shard: () => wrapFeederBuilder(_underlying.shard()) }); const wrapFileBasedFeederBuilder = (_underlying) => ({ _underlying, queue: () => (0, exports.wrapFileBasedFeederBuilder)(_underlying.queue()), random: () => (0, exports.wrapFileBasedFeederBuilder)(_underlying.random()), shuffle: () => (0, exports.wrapFileBasedFeederBuilder)(_underlying.shuffle()), circular: () => (0, exports.wrapFileBasedFeederBuilder)(_underlying.circular()), transform: (f) => wrapFeederBuilder(_underlying.transform(f)), recordsCount: () => _underlying.recordsCount(), shard: () => (0, exports.wrapFileBasedFeederBuilder)(_underlying.shard()), unzip: () => (0, exports.wrapFileBasedFeederBuilder)(_underlying.unzip()) }); exports.wrapFileBasedFeederBuilder = wrapFileBasedFeederBuilder; const wrapBatchableFeederBuilder = (_underlying) => ({ _underlying, queue: () => wrapBatchableFeederBuilder(_underlying.queue()), random: () => wrapBatchableFeederBuilder(_underlying.random()), shuffle: () => wrapBatchableFeederBuilder(_underlying.shuffle()), circular: () => wrapBatchableFeederBuilder(_underlying.circular()), transform: (f) => wrapFeederBuilder(_underlying.transform(f)), recordsCount: () => _underlying.recordsCount(), shard: () => wrapBatchableFeederBuilder(_underlying.shard()), unzip: () => wrapBatchableFeederBuilder(_underlying.unzip()), eager: () => wrapBatchableFeederBuilder(_underlying.eager()), batch: (lines) => wrapBatchableFeederBuilder(lines !== undefined ? _underlying.batch(lines) : _underlying.batch()) }); const csv = (filePath, quoteChar) => wrapBatchableFeederBuilder(quoteChar !== undefined ? jvm_types_1.CoreDsl.csv(filePath, quoteChar) : jvm_types_1.CoreDsl.csv(filePath)); exports.csv = csv; const ssv = (filePath, quoteChar) => wrapBatchableFeederBuilder(quoteChar !== undefined ? jvm_types_1.CoreDsl.ssv(filePath, quoteChar) : jvm_types_1.CoreDsl.ssv(filePath)); exports.ssv = ssv; const tsv = (filePath, quoteChar) => wrapBatchableFeederBuilder(quoteChar !== undefined ? jvm_types_1.CoreDsl.tsv(filePath, quoteChar) : jvm_types_1.CoreDsl.tsv(filePath)); exports.tsv = tsv; const separatedValues = (filePath, separator, quoteChar) => wrapBatchableFeederBuilder(quoteChar !== undefined ? jvm_types_1.CoreDsl.separatedValues(filePath, separator, quoteChar) : jvm_types_1.CoreDsl.separatedValues(filePath, separator)); exports.separatedValues = separatedValues; /** * Bootstrap a new JSON file based feeder * * @param filePath - the path of the file, relative to the root of the resources folder * @returns a new feeder */ const jsonFile = (filePath) => (0, exports.wrapFileBasedFeederBuilder)(jvm_types_1.CoreDsl.jsonFile(filePath)); exports.jsonFile = jsonFile; /** * Bootstrap a new JSON API based feeder * * @param url - the url of the API * @returns a new feeder */ const jsonUrl = (url) => wrapFeederBuilder(jvm_types_1.CoreDsl.jsonUrl(url)); exports.jsonUrl = jsonUrl; /** * Bootstrap a new in-memory array of Maps based feeder * * @param data - the in-memory data * @returns a new feeder */ const arrayFeeder = (data) => wrapFeederBuilder(jvm_types_1.CoreDsl.arrayFeeder(data)); exports.arrayFeeder = arrayFeeder;