UNPKG

@qavajs/steps-memory

Version:

steps to perform memory validation

87 lines 3.47 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const utils_1 = require("./utils"); const core_1 = require("@qavajs/core"); /** * Save result of math expression and save result to memory * @param expression - string expression * @param key - key to store value * @example When I save result of math expression '{$variable} + 42' as 'result' * @example When I save result of math expression '{$random()} * 100' as 'result' */ (0, core_1.When)('I save result of math expression {value} as {value}', function (expression, key) { return __awaiter(this, void 0, void 0, function* () { const exprFn = new Function('return ' + (yield expression.value())); key.set(exprFn()); }); }); /** * Save value to memory * @param {string} alias - value to save or alias for previously saved value * @param {string} key - key to store value * @example I save 'value' to memory as 'key' * @example I save '$getRandomUser()' to memory as 'user' */ (0, core_1.When)('I save {value} to memory as {value}', function (value, key) { return __awaiter(this, void 0, void 0, function* () { key.set(yield value.value()); }); }); (0, core_1.When)('I save multiline string to memory as {value}:', function (key, multilineString) { return __awaiter(this, void 0, void 0, function* () { const value = yield this.getValue(multilineString); key.set(value); }); }); /** * Save value to memory * @param {string} key - key to store value * @param {string} value - value to save or alias for previously saved value * @example I set 'key' = 'value' */ (0, core_1.When)('I set {value} = {value}', function (key, value) { return __awaiter(this, void 0, void 0, function* () { key.set(yield value.value()); }); }); /** * Save json value to memory * @param {string} key - key to store value * @param {string} json - multiline string * @example I save json to memory as 'key': * """ * { * "someKey": "someValue" * } * """ */ (0, core_1.When)('I save json to memory as {value}:', function (key, json) { return __awaiter(this, void 0, void 0, function* () { const value = yield this.getValue(json); key.set(JSON.parse(value)); }); }); /** * Save key-value pairs to memory * @param {string} key - key to store value * @param {string} kv - key-value * @example I save key-value pairs to memory as 'key': * | someKey | 42 | * | someOtherKey | $valueFromMemory | */ (0, core_1.When)('I save key-value pairs to memory as {value}:', function (key, kv) { return __awaiter(this, void 0, void 0, function* () { const value = yield (0, utils_1.dataTable2Object)(this, kv); key.set(value); }); }); //# sourceMappingURL=memory.js.map