diff --git a/src/api/cloud/VariablesApi.test.ts b/src/api/cloud/VariablesApi.test.ts index d0e2f7931..d72941631 100644 --- a/src/api/cloud/VariablesApi.test.ts +++ b/src/api/cloud/VariablesApi.test.ts @@ -32,6 +32,7 @@ import * as VariablesApi from './VariablesApi'; import { autoSetupPolly, filterRecording } from '../../utils/AutoSetupPolly'; import { state } from '../../index'; +import { encode } from '../../utils/Base64Utils'; const ctx = autoSetupPolly(); @@ -60,7 +61,7 @@ async function stageVariable(variable: TestVariable, create = true) { try { await VariablesApi.putVariable({ variableId: variable.name, - value: variable.value, + valueBase64: encode(variable.value), description: variable.description, expressionType: variable.type, state, @@ -240,7 +241,7 @@ describe('VariablesApi', () => { test(`1: Create new variable with default type (string): ${var4.name} - success`, async () => { const response = await VariablesApi.putVariable({ variableId: var4.name, - value: var4.value, + valueBase64: encode(var4.value), description: var4.description, expressionType: var4.type, state, @@ -251,7 +252,7 @@ describe('VariablesApi', () => { test(`2: Create new string variable (explicit type): ${var5.name} - success`, async () => { const response = await VariablesApi.putVariable({ variableId: var5.name, - value: var5.value, + valueBase64: encode(var5.value), description: var5.description, expressionType: var5.type, state, @@ -262,7 +263,7 @@ describe('VariablesApi', () => { test(`3: Create new array variable: ${var6.name} - success`, async () => { const response = await VariablesApi.putVariable({ variableId: var6.name, - value: var6.value, + valueBase64: encode(var6.value), description: var6.description, expressionType: var6.type, state, @@ -284,7 +285,7 @@ describe('VariablesApi', () => { test(`5: Create new bool variable: ${var8.name} - success`, async () => { const response = await VariablesApi.putVariable({ variableId: var8.name, - value: var8.value, + valueBase64: encode(var8.value), description: var8.description, expressionType: var8.type, state, @@ -295,7 +296,7 @@ describe('VariablesApi', () => { test(`6: Create new int variable: ${var9.name} - success`, async () => { const response = await VariablesApi.putVariable({ variableId: var9.name, - value: var9.value, + valueBase64: encode(var9.value), description: var9.description, expressionType: var9.type, state, @@ -306,7 +307,7 @@ describe('VariablesApi', () => { test(`7: Create new keyvaluelist variable: ${var10.name} - success`, async () => { const response = await VariablesApi.putVariable({ variableId: var10.name, - value: var10.value, + valueBase64: encode(var10.value), description: var10.description, expressionType: var10.type, state, @@ -317,7 +318,7 @@ describe('VariablesApi', () => { test(`8: Create new list variable: ${var11.name} - success`, async () => { const response = await VariablesApi.putVariable({ variableId: var11.name, - value: var11.value, + valueBase64: encode(var11.value), description: var11.description, expressionType: var11.type, state, @@ -328,7 +329,7 @@ describe('VariablesApi', () => { test(`9: Create new number variable: ${var12.name} - success`, async () => { const response = await VariablesApi.putVariable({ variableId: var12.name, - value: var12.value, + valueBase64: encode(var12.value), description: var12.description, expressionType: var12.type, state, @@ -339,7 +340,7 @@ describe('VariablesApi', () => { test(`10: Create new object variable: ${var13.name} - success`, async () => { const response = await VariablesApi.putVariable({ variableId: var13.name, - value: var13.value, + valueBase64: encode(var13.value), description: var13.description, expressionType: var13.type, state, diff --git a/src/api/cloud/VariablesApi.ts b/src/api/cloud/VariablesApi.ts index 138c3e450..7f0637961 100644 --- a/src/api/cloud/VariablesApi.ts +++ b/src/api/cloud/VariablesApi.ts @@ -1,7 +1,6 @@ import util from 'util'; import { State } from '../../shared/State'; -import { encode } from '../../utils/Base64Utils'; import { getHostBaseUrl } from '../../utils/ForgeRockUtils'; import { IdObjectSkeletonInterface, PagedResult } from '../ApiTypes'; import { generateEnvApi } from '../BaseApi'; @@ -52,7 +51,8 @@ export type VariableExpressionType = * Variable object skeleton */ export type VariableSkeleton = IdObjectSkeletonInterface & { - valueBase64: string; + valueBase64?: string; + value?: string; description?: string; loaded?: boolean; lastChangedBy?: string; @@ -111,25 +111,25 @@ export async function getVariable({ /** * Create or update variable by id/name * @param {string} variableId variable id/name - * @param {string} value variable value + * @param {string} valueBase64 base64-encoded variable value * @param {string} description variable description * @returns {Promise} a promise that resolves to a variable object */ export async function putVariable({ variableId, - value, + valueBase64, description = '', expressionType = 'string', state, }: { variableId: string; - value: string; + valueBase64: string; description?: string; expressionType?: VariableExpressionType; state: State; }): Promise { const variableData: VariableSkeleton = { - valueBase64: encode(value), + valueBase64, description, expressionType, }; diff --git a/src/ops/ConfigOps.test.ts b/src/ops/ConfigOps.test.ts index 9b7b2ae3a..2533e393a 100644 --- a/src/ops/ConfigOps.test.ts +++ b/src/ops/ConfigOps.test.ts @@ -56,7 +56,7 @@ describe('ConfigOps', () => { test('1: Export everything with string arrays, decoding variables, including journey coordinates and default scripts', async () => { // Set deployment type to cloud since it is necessary for exporting applications correctly. It does this automatically when recording the mock, but not when running the test after recording state.setDeploymentType(Constants.CLOUD_DEPLOYMENT_TYPE_KEY); - const response = await ConfigOps.exportFullConfiguration({ options: { useStringArrays: true, noDecode: false, coords: true, includeDefault: true }, state }); + const response = await ConfigOps.exportFullConfiguration({ options: { useStringArrays: true, noDecode: false, coords: true, includeDefault: true, includeActiveValues: false }, state }); expect(response).toMatchSnapshot({ meta: expect.any(Object) }); @@ -65,7 +65,7 @@ describe('ConfigOps', () => { test('2: Export everything without string arrays, decoding variables, excluding journey coordinates and default scripts', async () => { // Set deployment type to cloud since it is necessary for exporting applications correctly. It does this automatically when recording the mock, but not when running the test after recording state.setDeploymentType(Constants.CLOUD_DEPLOYMENT_TYPE_KEY); - const response = await ConfigOps.exportFullConfiguration({ options: { useStringArrays: false, noDecode: true, coords: false, includeDefault: false }, state }); + const response = await ConfigOps.exportFullConfiguration({ options: { useStringArrays: false, noDecode: true, coords: false, includeDefault: false, includeActiveValues: false }, state }); expect(response).toMatchSnapshot({ meta: expect.any(Object) }); diff --git a/src/ops/ConfigOps.ts b/src/ops/ConfigOps.ts index f5fc6f600..855449dec 100644 --- a/src/ops/ConfigOps.ts +++ b/src/ops/ConfigOps.ts @@ -37,8 +37,8 @@ import { exportCirclesOfTrust, importCirclesOfTrust, } from './CirclesOfTrustOps'; -import { exportSecrets } from './cloud/SecretsOps'; -import { exportVariables } from './cloud/VariablesOps'; +import { exportSecrets, importSecrets } from './cloud/SecretsOps'; +import { exportVariables, importVariables } from './cloud/VariablesOps'; import { EmailTemplateSkeleton, exportEmailTemplates, @@ -97,6 +97,7 @@ export default (state: State): Config => { noDecode: false, coords: true, includeDefault: false, + includeActiveValues: true, }, collectErrors: Error[] ) { @@ -111,6 +112,7 @@ export default (state: State): Config => { global: false, realm: false, includeDefault: false, + includeActiveValues: true, }, collectErrors: Error[] ) { @@ -144,6 +146,14 @@ export interface FullExportOptions { * Include default scripts in export if true */ includeDefault: boolean; + /** + * Include active and loaded secret values + */ + includeActiveValues: boolean; + /** + * Host URL of target environment to encrypt secret values for + */ + target?: string; } /** @@ -174,6 +184,14 @@ export interface FullImportOptions { * Include default scripts in import if true */ includeDefault: boolean; + /** + * Include active secret values + */ + includeActiveValues: boolean; + /** + * Host URL of source environment to decrypt secret values from + */ + source?: string; } export interface FullExportInterface { @@ -214,6 +232,8 @@ export async function exportFullConfiguration({ noDecode: false, coords: true, includeDefault: false, + includeActiveValues: true, + target: '', }, collectErrors, state, @@ -228,7 +248,14 @@ export async function exportFullConfiguration({ throwErrors = false; errors = collectErrors; } - const { useStringArrays, noDecode, coords, includeDefault } = options; + const { + useStringArrays, + noDecode, + coords, + includeDefault, + includeActiveValues, + target, + } = options; const stateObj = { state }; //Export saml2 providers and circle of trusts let saml = ( @@ -341,7 +368,11 @@ export async function exportFullConfiguration({ ) )?.script, secrets: ( - await exportOrImportWithErrorHandling(exportSecrets, stateObj, errors) + await exportOrImportWithErrorHandling( + exportSecrets, + { options: { includeActiveValues, target }, state }, + errors + ) )?.secrets, service: { ...( @@ -409,6 +440,8 @@ export async function importFullConfiguration({ global: false, realm: false, includeDefault: false, + includeActiveValues: true, + source: '', }, collectErrors, state, @@ -431,13 +464,48 @@ export async function importFullConfiguration({ global, realm, includeDefault, + includeActiveValues, + source, } = options; const indicatorId = createProgressIndicator({ - total: 16, + total: 18, message: 'Importing everything...', state, }); - // Order of imports matter here since we want dependencies to be imported first. For example, journeys depend on a lot of things, so they are last, and many things depend on scripts, so they are first. + // Order of imports matter here since we want dependencies to be imported first. For example, journeys depend on a lot of things, so they are last, and many things depend on scripts, which depend on variables and secrets, so they are first. + updateProgressIndicator({ + id: indicatorId, + message: `Importing Secrets...`, + state, + }); + await exportOrImportWithErrorHandling( + importSecrets, + { + importData, + options: { + includeActiveValues, + source, + }, + state, + }, + errors + ); + updateProgressIndicator({ + id: indicatorId, + message: `Importing Variables...`, + state, + }); + await exportOrImportWithErrorHandling( + importVariables, + { + importData, + options: { + includeActiveValues, + }, + state, + }, + errors + ); updateProgressIndicator({ id: indicatorId, message: `Importing Scripts...`, diff --git a/src/ops/cloud/SecretsOps.ts b/src/ops/cloud/SecretsOps.ts index 39eeff22b..d16cbe37b 100644 --- a/src/ops/cloud/SecretsOps.ts +++ b/src/ops/cloud/SecretsOps.ts @@ -16,7 +16,12 @@ import { import FrodoLib from '../../lib/FrodoLib'; import { State } from '../../shared/State'; import { decode, encode, isBase64Encoded } from '../../utils/Base64Utils'; -import { debugMessage } from '../../utils/Console'; +import { + createProgressIndicator, + debugMessage, + stopProgressIndicator, + updateProgressIndicator, +} from '../../utils/Console'; import { getMetadata } from '../../utils/ExportImportUtils'; import { FrodoError } from '../FrodoError'; import { decrypt, decryptMap, isEncrypted } from '../IdmCryptoOps'; @@ -551,7 +556,7 @@ export function createSecretsExportTemplate({ export async function exportSecret({ secretId, - options = { includeActiveValues: false, target: '' }, + options = { includeActiveValues: false, target: null }, state, }: { secretId: string; @@ -579,23 +584,23 @@ export async function exportSecret({ } export async function exportSecrets({ - options = { includeActiveValues: false, target: '' }, + options = { includeActiveValues: false, target: null }, state, }: { options?: SecretExportOptions; state: State; }): Promise { - // let indicatorId: string; + let indicatorId: string; try { debugMessage({ message: `SecretsOps.exportSecrets: start`, state }); const { includeActiveValues, target } = options; const exportData = createSecretsExportTemplate({ state }); const secrets = await readSecrets({ state }); - // indicatorId = createProgressIndicator({ - // total: secrets.length, - // message: 'Exporting secrets...', - // state, - // }); + indicatorId = createProgressIndicator({ + total: secrets.length, + message: 'Exporting secrets...', + state, + }); if (includeActiveValues) { const mapOfSecrets = await readSecretValues({ secretIds: secrets.map((s) => s._id), @@ -603,38 +608,38 @@ export async function exportSecrets({ state, }); for (const secret of secrets) { - // updateProgressIndicator({ - // id: indicatorId, - // message: `Exporting secret ${secret._id}`, - // state, - // }); + updateProgressIndicator({ + id: indicatorId, + message: `Exporting secret ${secret._id}`, + state, + }); secret.activeValue = mapOfSecrets[secret._id]; exportData.secrets[secret._id] = secret; } } else { for (const secret of secrets) { - // updateProgressIndicator({ - // id: indicatorId, - // message: `Exporting secret ${secret._id}`, - // state, - // }); + updateProgressIndicator({ + id: indicatorId, + message: `Exporting secret ${secret._id}`, + state, + }); exportData.secrets[secret._id] = secret; } } - // stopProgressIndicator({ - // id: indicatorId, - // message: `Exported ${secrets.length} secrets.`, - // state, - // }); + stopProgressIndicator({ + id: indicatorId, + message: `Exported ${secrets.length} secrets.`, + state, + }); debugMessage({ message: `SecretsOps.exportSecrets: end`, state }); return exportData; } catch (error) { - // stopProgressIndicator({ - // id: indicatorId, - // message: `Error exporting secrets`, - // status: 'fail', - // state, - // }); + stopProgressIndicator({ + id: indicatorId, + message: `Error exporting secrets`, + status: 'fail', + state, + }); throw new FrodoError(`Error exporting secrets`, error); } } @@ -796,7 +801,7 @@ export async function readSecretValue({ export async function readSecretValues({ secretIds, decrypt = false, - target, + target = null, state, }: { secretIds: string[]; @@ -804,7 +809,10 @@ export async function readSecretValues({ target?: string; state: State; }): Promise<{ [key: string]: string }> { - debugMessage({ message: `SecretsOps.readSecretValues: start`, state }); + debugMessage({ + message: `SecretsOps.readSecretValues: start [decrypt=${decrypt}, target='${target}']`, + state, + }); let script = 'var secrets = {}\n'; script += 'for (var i = 0; i < secretIds.length; i++) {\n'; script += diff --git a/src/ops/cloud/VariablesOps.test.ts b/src/ops/cloud/VariablesOps.test.ts index 096bf2b68..23e8ae683 100644 --- a/src/ops/cloud/VariablesOps.test.ts +++ b/src/ops/cloud/VariablesOps.test.ts @@ -38,6 +38,7 @@ import { state } from '../../index'; import * as VariablesOps from './VariablesOps'; import { VariableExpressionType } from '../../api/cloud/VariablesApi'; import { FrodoError } from '../FrodoError'; +import { encode } from '../../utils/Base64Utils'; autoSetupPolly(); @@ -87,12 +88,272 @@ describe('VariablesOps', () => { description: 'description3', expressionType: 'bool', }; + const variable4 = { + id: 'esv-frodo-test-variable-4', + value: 'value4', + description: 'description4', + expressionType: 'string', + }; + const variable4Export: VariablesOps.VariablesExportInterface = { + meta: { + exportDate: '2024-07-03T03:29:28.835Z', + exportTool: 'frodo', + exportToolVersion: 'v2.0.0-89 [v20.5.1]', + exportedBy: 'volker.scheuber@forgerock.com', + origin: 'https://openam-frodo-dev.forgeblocks.com/am', + originAmVersion: '7.6.0', + }, + variables: { + 'esv-frodo-test-variable-4': { + _id: 'esv-frodo-test-variable-4', + description: 'description4', + expressionType: 'string', + lastChangeDate: '2024-07-03T03:28:19.227876Z', + lastChangedBy: 'volker.scheuber@forgerock.com', + loaded: false, + value: 'value4', + }, + }, + }; + const variable5 = { + id: 'esv-frodo-test-variable-5', + value: 'value5', + description: 'description5', + expressionType: 'string', + }; + const variable5Export: VariablesOps.VariablesExportInterface = { + "meta": { + "exportDate": "2024-07-03T03:29:28.835Z", + "exportTool": "frodo", + "exportToolVersion": "v2.0.0-89 [v20.5.1]", + "exportedBy": "volker.scheuber@forgerock.com", + "origin": "https://openam-frodo-dev.forgeblocks.com/am", + "originAmVersion": "7.6.0" + }, + "variables": { + "esv-frodo-test-variable-5": { + "_id": "esv-frodo-test-variable-5", + "description": "description5", + "expressionType": "string", + "lastChangeDate": "2024-07-03T03:28:19.227876Z", + "lastChangedBy": "volker.scheuber@forgerock.com", + "loaded": false, + "value": "value5" + } + } + }; + const variable6 = { + id: 'esv-frodo-test-variable-6', + value: 'value6', + description: 'description6', + expressionType: 'string', + }; + const variable6Export: VariablesOps.VariablesExportInterface = { + "meta": { + "exportDate": "2024-07-03T03:29:28.835Z", + "exportTool": "frodo", + "exportToolVersion": "v2.0.0-89 [v20.5.1]", + "exportedBy": "volker.scheuber@forgerock.com", + "origin": "https://openam-frodo-dev.forgeblocks.com/am", + "originAmVersion": "7.6.0" + }, + "variables": { + "esv-frodo-test-variable-6": { + "_id": "esv-frodo-test-variable-6", + "description": "description6", + "expressionType": "string", + "lastChangeDate": "2024-07-03T03:28:19.227876Z", + "lastChangedBy": "volker.scheuber@forgerock.com", + "loaded": false, + "value": "value6" + } + } + }; + const variable7 = { + id: 'esv-frodo-test-variable-7', + value: 'value7', + description: 'description7', + expressionType: 'string', + }; + const variable7Export: VariablesOps.VariablesExportInterface = { + "meta": { + "exportDate": "2024-07-03T03:29:28.835Z", + "exportTool": "frodo", + "exportToolVersion": "v2.0.0-89 [v20.5.1]", + "exportedBy": "volker.scheuber@forgerock.com", + "origin": "https://openam-frodo-dev.forgeblocks.com/am", + "originAmVersion": "7.6.0" + }, + "variables": { + "esv-frodo-test-variable-7": { + "_id": "esv-frodo-test-variable-7", + "description": "description7", + "expressionType": "string", + "lastChangeDate": "2024-07-03T03:28:19.227876Z", + "lastChangedBy": "volker.scheuber@forgerock.com", + "loaded": false, + "value": "value7" + } + } + }; + const variable8 = { + id: 'esv-frodo-test-variable-8', + value: 'value8', + description: 'description8', + expressionType: 'string', + }; + const variable9 = { + id: 'esv-frodo-test-variable-9', + value: 'value9', + description: 'description9', + expressionType: 'string', + }; + const variables89Export: VariablesOps.VariablesExportInterface = { + "meta": { + "exportDate": "2024-07-03T03:48:18.901Z", + "exportTool": "frodo", + "exportToolVersion": "v2.0.0-89 [v20.5.1]", + "exportedBy": "volker.scheuber@forgerock.com", + "origin": "https://openam-frodo-dev.forgeblocks.com/am", + "originAmVersion": "7.6.0" + }, + "variables": { + "esv-frodo-test-variable-8": { + "_id": "esv-frodo-test-variable-8", + "description": "description8", + "expressionType": "string", + "lastChangeDate": "2024-07-03T03:46:04.882539Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value8", + "valueBase64": "dmFsdWU4" + }, + "esv-frodo-test-variable-9": { + "_id": "esv-frodo-test-variable-9", + "description": "description9", + "expressionType": "string", + "lastChangeDate": "2024-07-03T03:46:05.676501Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value9", + "valueBase64": "dmFsdWU5" + } + } + }; + const variable10 = { + id: 'esv-frodo-test-variable-10', + value: 'value10', + description: 'description10', + expressionType: 'string', + }; + const variable11 = { + id: 'esv-frodo-test-variable-11', + value: 'value11', + description: 'description11', + expressionType: 'string', + }; + const variables1011Export: VariablesOps.VariablesExportInterface = { + "meta": { + "exportDate": "2024-07-03T03:48:18.901Z", + "exportTool": "frodo", + "exportToolVersion": "v2.0.0-89 [v20.5.1]", + "exportedBy": "volker.scheuber@forgerock.com", + "origin": "https://openam-frodo-dev.forgeblocks.com/am", + "originAmVersion": "7.6.0" + }, + "variables": { + "esv-frodo-test-variable-10": { + "_id": "esv-frodo-test-variable-10", + "description": "description10", + "expressionType": "string", + "lastChangeDate": "2024-07-03T03:45:51.06282Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value10", + "valueBase64": "dmFsdWUxMA==" + }, + "esv-frodo-test-variable-11": { + "_id": "esv-frodo-test-variable-11", + "description": "description11", + "expressionType": "string", + "lastChangeDate": "2024-07-03T03:45:52.248873Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value11", + "valueBase64": "dmFsdWUxMQ==" + } + } + }; + const variable12 = { + id: 'esv-frodo-test-variable-12', + value: 'value12', + description: 'description12', + expressionType: 'string', + }; + const variable13 = { + id: 'esv-frodo-test-variable-13', + value: 'value13', + description: 'description13', + expressionType: 'string', + }; + const variable14 = { + id: 'esv-frodo-test-variable-14', + value: 'value14', + description: 'description14', + expressionType: 'string', + }; + const variable15 = { + id: 'esv-frodo-test-variable-15', + value: 'value15', + description: 'description15', + expressionType: 'string', + }; + const variable16 = { + id: 'esv-frodo-test-variable-16', + value: 'value16', + description: 'description16', + expressionType: 'string', + }; + const variable17 = { + id: 'esv-frodo-test-variable-17', + value: 'value17', + description: 'description17', + expressionType: 'string', + }; + const variable18 = { + id: 'esv-frodo-test-variable-18', + value: 'value18', + description: 'description18', + expressionType: 'string', + }; + const variable19 = { + id: 'esv-frodo-test-variable-19', + value: 'value19', + description: 'description19', + expressionType: 'string', + }; // in recording mode, setup test data before recording beforeAll(async () => { if (process.env.FRODO_POLLY_MODE === 'record') { await stageVariable(variable1); await stageVariable(variable2); await stageVariable(variable3, false); + await stageVariable(variable4, false); + await stageVariable(variable5, false); + await stageVariable(variable6, false); + await stageVariable(variable7, false); + await stageVariable(variable8, false); + await stageVariable(variable9, false); + await stageVariable(variable10, false); + await stageVariable(variable11, false); + await stageVariable(variable12, false); + await stageVariable(variable13, false); + await stageVariable(variable14); + await stageVariable(variable15); + await stageVariable(variable16, false); + await stageVariable(variable17, false); + await stageVariable(variable18); + await stageVariable(variable19); } }); // in recording mode, remove test data after recording @@ -101,6 +362,22 @@ describe('VariablesOps', () => { await stageVariable(variable1, false); await stageVariable(variable2, false); await stageVariable(variable3, false); + await stageVariable(variable4, false); + await stageVariable(variable5, false); + await stageVariable(variable6, false); + await stageVariable(variable7, false); + await stageVariable(variable8, false); + await stageVariable(variable9, false); + await stageVariable(variable10, false); + await stageVariable(variable11, false); + await stageVariable(variable12, false); + await stageVariable(variable13, false); + await stageVariable(variable14, false); + await stageVariable(variable15, false); + await stageVariable(variable16, false); + await stageVariable(variable17, false); + await stageVariable(variable18, false); + await stageVariable(variable19, false); } }); @@ -173,8 +450,7 @@ describe('VariablesOps', () => { }); test('3: Export variable3 (non-existent)', async () => { - expect.assertions(2) - let errorCaught = false; + expect.assertions(2); try { await VariablesOps.exportVariable({ variableId: variable3.id, @@ -187,4 +463,254 @@ describe('VariablesOps', () => { } }); }); + + describe('readVariables()', () => { + test('0: Method is implemented', async () => { + expect(VariablesOps.readVariables).toBeDefined(); + }); + + test('1: Read all variables', async () => { + const response = await VariablesOps.readVariables({ + noDecode: false, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('2: Read all variables without decoding', async () => { + const response = await VariablesOps.readVariables({ + noDecode: true, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + }); + + describe('readVariable()', () => { + test('0: Method is implemented', async () => { + expect(VariablesOps.readVariable).toBeDefined(); + }); + + test('1: Read variable1', async () => { + const response = await VariablesOps.readVariable({ + variableId: variable1.id, + noDecode: false, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('2: Read variable2 without decoding', async () => { + const response = await VariablesOps.readVariable({ + variableId: variable2.id, + noDecode: true, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('3: Read variable3 (non-existent)', async () => { + expect.assertions(2); + try { + await VariablesOps.readVariable({ + variableId: variable3.id, + noDecode: false, + state: state, + }); + } catch (e: any) { + expect(e.name).toEqual('FrodoError'); + expect((e as FrodoError).getCombinedMessage()).toMatchSnapshot(); + } + }); + }); + + describe('importVariable()', () => { + test('0: Method is implemented', async () => { + expect(VariablesOps.importVariable).toBeDefined(); + }); + + test('1: Import variable4', async () => { + const response = await VariablesOps.importVariable({ + variableId: variable4.id, + importData: variable4Export, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('2: Import variable5 (decoded)', async () => { + const response = await VariablesOps.importVariable({ + variableId: variable5.id, + importData: variable5Export, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('3: Import first variable6', async () => { + const response = await VariablesOps.importVariable({ + variableId: undefined, + importData: variable6Export, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('4: Import first variable7 (decoded)', async () => { + const response = await VariablesOps.importVariable({ + variableId: undefined, + importData: variable7Export, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + }); + + describe('importVariables()', () => { + test('0: Method is implemented', async () => { + expect(VariablesOps.importVariables).toBeDefined(); + }); + + test('1: Import all variables', async () => { + const response = await VariablesOps.importVariables({ + importData: variables89Export, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('2: Import all variables (decoded)', async () => { + const response = await VariablesOps.importVariables({ + importData: variables1011Export, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + }); + + describe('createVariable()', () => { + test('0: Method is implemented', async () => { + expect(VariablesOps.createVariable).toBeDefined(); + }); + + test('1: Create variable12 (pre-encoded)', async () => { + const response = await VariablesOps.createVariable({ + variableId: variable12.id, + value: encode(variable12.value), + description: variable12.description, + expressionType: variable12.expressionType as VariableExpressionType, + noEncode: true, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('2: Create variable13 (not encoded)', async () => { + const response = await VariablesOps.createVariable({ + variableId: variable13.id, + value: variable13.value, + description: variable13.description, + expressionType: variable13.expressionType as VariableExpressionType, + noEncode: false, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + }); + + describe('updateVariable()', () => { + test('0: Method is implemented', async () => { + expect(VariablesOps.updateVariable).toBeDefined(); + }); + + test('1: Update existing variable14 (pre-encoded)', async () => { + const response = await VariablesOps.updateVariable({ + variableId: variable14.id, + value: encode(variable14.value), + description: variable14.description, + expressionType: variable14.expressionType as VariableExpressionType, + noEncode: true, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('2: Update existing variable15 (not encoded)', async () => { + const response = await VariablesOps.updateVariable({ + variableId: variable15.id, + value: variable15.value, + description: variable15.description, + expressionType: variable15.expressionType as VariableExpressionType, + noEncode: false, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('3: Update/create non-existing variable16 (pre-encoded)', async () => { + const response = await VariablesOps.updateVariable({ + variableId: variable16.id, + value: encode(variable16.value), + description: variable16.description, + expressionType: variable16.expressionType as VariableExpressionType, + noEncode: true, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('4: Update/create non-existing variable17 (not encoded)', async () => { + const response = await VariablesOps.updateVariable({ + variableId: variable17.id, + value: variable17.value, + description: variable17.description, + expressionType: variable17.expressionType as VariableExpressionType, + noEncode: false, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + }); + + describe('updateVariableDescription()', () => { + test('0: Method is implemented', async () => { + expect(VariablesOps.updateVariable).toBeDefined(); + }); + + test('1: Update variable18 description', async () => { + const response = await VariablesOps.updateVariableDescription({ + variableId: variable18.id, + description: variable18.description, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + }); + + describe('deleteVariable()', () => { + test('0: Method is implemented', async () => { + expect(VariablesOps.deleteVariable).toBeDefined(); + }); + + test('1: Delete variable19', async () => { + const response = await VariablesOps.deleteVariable({ + variableId: variable19.id, + state: state, + }); + expect(response).toMatchSnapshot(); + }); + + test('2: Delete variable3 (non-existent)', async () => { + expect.assertions(2); + try { + await VariablesOps.deleteVariable({ + variableId: variable3.id, + state: state, + }); + } catch (e: any) { + expect(e.name).toEqual('FrodoError'); + expect((e as FrodoError).getCombinedMessage()).toMatchSnapshot(); + } + }); + }); }); diff --git a/src/ops/cloud/VariablesOps.ts b/src/ops/cloud/VariablesOps.ts index e2e1e0bd0..7d24949c4 100644 --- a/src/ops/cloud/VariablesOps.ts +++ b/src/ops/cloud/VariablesOps.ts @@ -8,7 +8,7 @@ import { VariableSkeleton, } from '../../api/cloud/VariablesApi'; import { State } from '../../shared/State'; -import { decode } from '../../utils/Base64Utils'; +import { decode, encode } from '../../utils/Base64Utils'; import { createProgressIndicator, debugMessage, @@ -23,33 +23,38 @@ export type Variable = { /** * Read variable by id/name * @param {string} variableId variable id/name + * @param {boolean} noDecode Do not decode value (default: false) * @returns {Promise} a promise that resolves to a variable object */ - readVariable(variableId: string): Promise; + readVariable( + variableId: string, + noDecode?: boolean + ): Promise; /** * Read all variables + * @param {boolean} noDecode Do not decode values (default: false) * @returns {Promise} a promise that resolves to an array of variable objects */ - readVariables(): Promise; + readVariables(noDecode?: boolean): Promise; /** * Export variable. The response can be saved to file as is. - * @param variableId variable id/name - * @param noDecode Do not include decoded variable value in export + * @param {string} variableId variable id/name + * @param {boolean} noDecode Do not decode value (default: false) * @returns {Promise} Promise resolving to a VariablesExportInterface object. */ exportVariable( variableId: string, - noDecode: boolean + noDecode?: boolean ): Promise; /** * Export all variables - * @param noDecode Do not include decoded variable value in export + * @param {boolean} noDecode Do not decode values (default: false) * @returns {Promise} Promise resolving to an VariablesExportInterface object. */ - exportVariables(noDecode: boolean): Promise; + exportVariables(noDecode?: boolean): Promise; /** * Import variable by id - * @param {string} policyId policy id + * @param {string} variableId variable id/name * @param {VariablesExportInterface} importData import data * @returns {Promise} imported variable object */ @@ -71,13 +76,15 @@ export type Variable = { * @param {string} value variable value * @param {string} description variable description * @param {VariableExpressionType} expressionType type of the value + * @param {boolean} noEncode do not encode if passing a pre-encoded (base64) value * @returns {Promise} a promise that resolves to a variable object */ createVariable( variableId: string, value: string, description: string, - expressionType?: VariableExpressionType + expressionType?: VariableExpressionType, + noEncode?: boolean ): Promise; /** * Update or create variable @@ -85,13 +92,15 @@ export type Variable = { * @param {string} value variable value * @param {string} description variable description * @param {VariableExpressionType} expressionType type of the value + * @param {boolean} noEncode do not encode if passing a pre-encoded (base64) value * @returns {Promise} a promise that resolves to a variable object */ updateVariable( variableId: string, value: string, description: string, - expressionType?: VariableExpressionType + expressionType?: VariableExpressionType, + noEncode?: boolean ): Promise; /** * Update variable description @@ -136,7 +145,7 @@ export type Variable = { /** * Create variable * @param {string} variableId variable id/name - * @param {string} value variable value + * @param {string} valueBase64 base64-encoded variable value * @param {string} description variable description * @param {VariableExpressionType} expressionType type of the value * @returns {Promise} a promise that resolves to a variable object @@ -148,7 +157,7 @@ export type Variable = { */ putVariable( variableId: string, - value: string, + valueBase64: string, description: string, expressionType?: VariableExpressionType ): Promise; @@ -168,20 +177,25 @@ export type Variable = { export default (state: State): Variable => { return { - async readVariable(variableId: string): Promise { - return readVariable({ variableId, state }); + async readVariable( + variableId: string, + noDecode: boolean = false + ): Promise { + return readVariable({ variableId, noDecode, state }); }, - async readVariables(): Promise { - return readVariables({ state }); + async readVariables( + noDecode: boolean = false + ): Promise { + return readVariables({ noDecode, state }); }, async exportVariable( variableId: string, - noDecode: boolean + noDecode: boolean = false ): Promise { return exportVariable({ variableId, noDecode, state }); }, async exportVariables( - noDecode: boolean + noDecode: boolean = false ): Promise { return exportVariables({ noDecode, state }); }, @@ -199,28 +213,32 @@ export default (state: State): Variable => { async createVariable( variableId: string, value: string, - description: string, - expressionType: VariableExpressionType = 'string' + description: string = '', + expressionType: VariableExpressionType = 'string', + noEncode: boolean = false ): Promise { return createVariable({ variableId, value, description, expressionType, + noEncode, state, }); }, async updateVariable( variableId: string, value: string, - description: string, - expressionType: VariableExpressionType = 'string' + description: string = '', + expressionType: VariableExpressionType = 'string', + noEncode: boolean = false ): Promise { return updateVariable({ variableId, value, description, expressionType, + noEncode, state, }); }, @@ -241,22 +259,23 @@ export default (state: State): Variable => { // Deprecated async getVariable(variableId: string): Promise { - return readVariable({ variableId, state }); + return readVariable({ variableId, noDecode: true, state }); }, async getVariables(): Promise { - return readVariables({ state }); + return readVariables({ noDecode: true, state }); }, async putVariable( variableId: string, - value: string, + valueBase64: string, description: string, expressionType: VariableExpressionType = 'string' ): Promise { return updateVariable({ variableId, - value, + value: valueBase64, description, expressionType, + noEncode: true, state, }); }, @@ -291,25 +310,42 @@ export function createVariablesExportTemplate({ export async function readVariable({ variableId, + noDecode = false, state, }: { variableId: string; + noDecode?: boolean; state: State; }): Promise { try { - return _getVariable({ variableId, state }); + const variable = await _getVariable({ variableId, state }); + if (!noDecode) { + variable.value = decode(variable.valueBase64); + delete variable.valueBase64; + } + return variable; } catch (error) { throw new FrodoError(`Error reading variable ${variableId}`, error); } } export async function readVariables({ + noDecode = false, state, }: { + noDecode?: boolean; state: State; }): Promise { try { - return (await _getVariables({ state })).result; + const { result } = await _getVariables({ state }); + if (!noDecode) { + result.map((variable) => { + variable.value = decode(variable.valueBase64); + delete variable.valueBase64; + return variable; + }); + } + return result; } catch (error) { throw new FrodoError(`Error reading variables`, error); } @@ -330,6 +366,7 @@ export async function exportVariable({ const variable = await _getVariable({ variableId, state }); if (!noDecode) { variable.value = decode(variable.valueBase64); + delete variable.valueBase64; } exportData.variables[variable._id] = variable; debugMessage({ message: `VariablesOps.exportVariable: end`, state }); @@ -349,7 +386,7 @@ export async function exportVariables({ try { debugMessage({ message: `VariablesOps.exportVariables: start`, state }); const exportData = createVariablesExportTemplate({ state }); - const variables = await readVariables({ state }); + const variables = await readVariables({ noDecode, state }); const indicatorId = createProgressIndicator({ total: variables.length, message: 'Exporting variables...', @@ -361,9 +398,6 @@ export async function exportVariables({ message: `Exporting variable ${variable._id}`, state, }); - if (!noDecode) { - variable.value = decode(variable.valueBase64); - } exportData.variables[variable._id] = variable; } stopProgressIndicator({ @@ -389,7 +423,7 @@ export async function importVariable({ importData, state, }: { - variableId: string; + variableId?: string; importData: VariablesExportInterface; state: State; }): Promise { @@ -399,20 +433,21 @@ export async function importVariable({ for (const id of Object.keys(importData.variables)) { if (id === variableId || !variableId) { try { - const variableData = importData.variables[id]; - delete variableData._rev; - try { - response = await updateVariable({ - variableId: variableData._id, - value: variableData.valueBase64, - description: variableData.description, - expressionType: variableData.expressionType, - state, - }); - imported.push(id); - } catch (error) { - errors.push(error); + const variable = importData.variables[id]; + delete variable._rev; + if (variable.value) { + variable.valueBase64 = encode(variable.value); + delete variable.value; } + response = await updateVariable({ + variableId: variable._id, + value: variable.value ? variable.value : variable.valueBase64, + description: variable.description, + expressionType: variable.expressionType || 'string', + noEncode: variable.value ? false : true, + state, + }); + imported.push(id); } catch (error) { errors.push(error); } @@ -442,24 +477,23 @@ export async function importVariables({ const response = []; const errors = []; for (const id of Object.keys(importData.variables)) { + const variable = importData.variables[id]; + delete variable._rev; try { - const variableData = importData.variables[id]; - delete variableData._rev; - try { - response.push( - await updateVariable({ - variableId: variableData._id, - value: variableData.valueBase64, - description: variableData.description, - expressionType: variableData.expressionType, - state, - }) - ); - } catch (error) { - errors.push(error); - } + response.push( + await updateVariable({ + variableId: variable._id, + value: variable.value ? variable.value : variable.valueBase64, + description: variable.description, + expressionType: variable.expressionType || 'string', + noEncode: variable.value ? false : true, + state, + }) + ); } catch (error) { - errors.push(error); + errors.push( + new FrodoError(`Error importing variable ${variable._id}`, error) + ); } } if (errors.length > 0) { @@ -473,12 +507,14 @@ export async function createVariable({ value, description, expressionType, + noEncode = false, state, }: { variableId: string; value: string; description?: string; expressionType?: VariableExpressionType; + noEncode?: boolean; state: State; }): Promise { debugMessage({ @@ -491,7 +527,7 @@ export async function createVariable({ try { const result = await _putVariable({ variableId, - value, + valueBase64: noEncode ? value : encode(value), description, expressionType, state, @@ -513,22 +549,25 @@ export async function updateVariable({ value, description, expressionType, + noEncode = false, state, }: { variableId: string; value: string; description?: string; expressionType?: VariableExpressionType; + noEncode?: boolean; state: State; }): Promise { try { - return _putVariable({ + const result = await _putVariable({ variableId, - value, + valueBase64: noEncode ? value : encode(value), description, expressionType, state, }); + return result; } catch (error) { throw new FrodoError(`Error updating variable ${variableId}`, error); } @@ -544,11 +583,12 @@ export async function updateVariableDescription({ state: State; }): Promise { try { - return _setVariableDescription({ + const result = await _setVariableDescription({ variableId, description, state, }); + return result; } catch (error) { throw new FrodoError( `Error updating description of variable ${variableId}`, @@ -565,7 +605,8 @@ export async function deleteVariable({ state: State; }): Promise { try { - return _deleteVariable({ variableId, state }); + const result = await _deleteVariable({ variableId, state }); + return result; } catch (error) { throw new FrodoError(`Error deleting variable ${variableId}`, error); } diff --git a/src/test/mock-recordings/VariablesOps_1746822178/createVariable_2776965938/1-Create-variable12-pre-encoded_4135000456/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/createVariable_2776965938/1-Create-variable12-pre-encoded_4135000456/recording.har new file mode 100644 index 000000000..034b72cba --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/createVariable_2776965938/1-Create-variable12-pre-encoded_4135000456/recording.har @@ -0,0 +1,221 @@ +{ + "log": { + "_recordingName": "VariablesOps/createVariable()/1: Create variable12 (pre-encoded)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "3f7beee958659cc168e8cce96b9452df", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1560, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-12" + }, + "response": { + "bodySize": 53, + "content": { + "mimeType": "application/json", + "size": 53, + "text": "{\"code\":404,\"message\":\"The variable does not exist\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:04 GMT" + }, + { + "name": "content-length", + "value": "53" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 259, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 404, + "statusText": "Not Found" + }, + "startedDateTime": "2024-07-03T04:10:04.712Z", + "time": 112, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 112 + } + }, + { + "_id": "7c382f13e8fa5a14e2b833694e176669", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1580, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWUxMg==\",\"description\":\"description12\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-12" + }, + "response": { + "bodySize": 228, + "content": { + "mimeType": "application/json", + "size": 228, + "text": "{\"_id\":\"esv-frodo-test-variable-12\",\"description\":\"description12\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:10:05.719644322Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxMg==\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:05 GMT" + }, + { + "name": "content-length", + "value": "228" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:04.829Z", + "time": 999, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 999 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/createVariable_2776965938/2-Create-variable13-not-encoded_2166038259/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/createVariable_2776965938/2-Create-variable13-not-encoded_2166038259/recording.har new file mode 100644 index 000000000..ff91932e8 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/createVariable_2776965938/2-Create-variable13-not-encoded_2166038259/recording.har @@ -0,0 +1,221 @@ +{ + "log": { + "_recordingName": "VariablesOps/createVariable()/2: Create variable13 (not encoded)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ed6fc46e86293d65cb7dd1a193dbdffb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1560, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-13" + }, + "response": { + "bodySize": 53, + "content": { + "mimeType": "application/json", + "size": 53, + "text": "{\"code\":404,\"message\":\"The variable does not exist\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:06 GMT" + }, + { + "name": "content-length", + "value": "53" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 259, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 404, + "statusText": "Not Found" + }, + "startedDateTime": "2024-07-03T04:10:05.845Z", + "time": 163, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 163 + } + }, + { + "_id": "052752d5272a650f9047c13a03099c69", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1580, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWUxMw==\",\"description\":\"description13\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-13" + }, + "response": { + "bodySize": 228, + "content": { + "mimeType": "application/json", + "size": 228, + "text": "{\"_id\":\"esv-frodo-test-variable-13\",\"description\":\"description13\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:10:06.824903102Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxMw==\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:06 GMT" + }, + { + "name": "content-length", + "value": "228" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:06.016Z", + "time": 897, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 897 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/deleteVariable_1852564833/1-Delete-variable19_2942131353/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/deleteVariable_1852564833/1-Delete-variable19_2942131353/recording.har new file mode 100644 index 000000000..a440f99f9 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/deleteVariable_1852564833/1-Delete-variable19_2942131353/recording.har @@ -0,0 +1,113 @@ +{ + "log": { + "_recordingName": "VariablesOps/deleteVariable()/1: Delete variable19", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "3fdf371bda4747d092b2ece54131efca", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1563, + "httpVersion": "HTTP/1.1", + "method": "DELETE", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-19" + }, + "response": { + "bodySize": 225, + "content": { + "mimeType": "application/json", + "size": 225, + "text": "{\"_id\":\"esv-frodo-test-variable-19\",\"description\":\"description19\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:53.428262Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxOQ==\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:16 GMT" + }, + { + "name": "content-length", + "value": "225" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:11.190Z", + "time": 5057, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 5057 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/deleteVariable_1852564833/2-Delete-variable3-non-existent_1086734082/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/deleteVariable_1852564833/2-Delete-variable3-non-existent_1086734082/recording.har new file mode 100644 index 000000000..0640af6e2 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/deleteVariable_1852564833/2-Delete-variable3-non-existent_1086734082/recording.har @@ -0,0 +1,113 @@ +{ + "log": { + "_recordingName": "VariablesOps/deleteVariable()/2: Delete variable3 (non-existent)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "d1b5d138a408b339be7a9a175ca50d4b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1562, + "httpVersion": "HTTP/1.1", + "method": "DELETE", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-3" + }, + "response": { + "bodySize": 53, + "content": { + "mimeType": "application/json", + "size": 53, + "text": "{\"code\":404,\"message\":\"The variable does not exist\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:16 GMT" + }, + { + "name": "content-length", + "value": "53" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 259, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 404, + "statusText": "Not Found" + }, + "startedDateTime": "2024-07-03T04:10:16.254Z", + "time": 121, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 121 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/deleteVariable_1852564833/3-Delete-variable3-non-existent_3576248391/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/deleteVariable_1852564833/3-Delete-variable3-non-existent_3576248391/recording.har new file mode 100644 index 000000000..5794041fe --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/deleteVariable_1852564833/3-Delete-variable3-non-existent_3576248391/recording.har @@ -0,0 +1,113 @@ +{ + "log": { + "_recordingName": "VariablesOps/deleteVariable()/3: Delete variable3 (non-existent)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "d1b5d138a408b339be7a9a175ca50d4b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..hT54fBh5TES1gY_y1y6Ldg.OxgonUXkbTH2WptlC_UoVLbUT8tO_fsAR3cvMRHX5cj-UF9qeDTDOE2Vvns-1EWJKvwLoC6S7bvqRGWn-PXFyNCuPfpGVx99Ue_AirAPd0DCqPjOgEODvbe4GKJO1YlsARwKJjwA4WxtuNB2VjjY5Cs-hfqv9TDoUqbep9p0e7aD3SFYW4iVd6-sEKjd9bFCcuPmZPaTIOq8R-DTnrsjfS3jX7-aSvgPyONu9_dttCGBFT_d61uJXVEN8CPvew3_vVVWizsltJWiGbrMhQpO0aZKeSKRwrBxeRB29UnMZz7wDA6oHPvIZw4JkOpzPT9SjmZRTSuSAT5HlicCrE55GvVS04H3bBz7bDBkWYoB-PQPvl2RNwpB6SqYEC34Qm88e59IaBPAB4onWYESaNRyS6KWjCSq628HEwxgVgJOCyvlPZWZHu8NaETgSIEUpXgxm9ejQMDPctj6LrTH1qo32VSvDbc3-aaunQV2HnGsD8hHKeeWBye2vvTgDi_Vt_eqVuPoCp6CrFHGTkpwjcnUdjEtuURNqPwbiI4euxjn82hJAMy5BaekpnIZpPF0ca52-1wZ-WRAMUHnyRL2R1-U4JVqXwLDn57y4llUjJsvNMw-U8mTffi4Nm1PbMIPT-ujb9kKdQhOuKMo2Seyt1UIO0Lge9Q_VSkHfByTUjngBvp02941y3uxBajPbztx48s0i5_1sChIxNJJcjnAFmIrecA_6pLOrxpeIifEtxSJCuqOnxINNRbeEg8qzt-Ajdv9cvIvbo6UcmlwxUM-skhYYhzM6p-xQWa30g-NYl-wPBN45GBrRGNABlTS1a2uLMu2kP8AbrEP-yO0AdlVe2bYDVfhgY18mwTPPg6-BZph_2XogGJ7y6JNQ-cziy7fBmqRGszFEb--LO8v0EFmEp0aiurGxHweaNrHxhMybNO-Wnb3vxH6eb9BLAsLurEeKKUdSNA8Uj7ruMTJ2ZXTEDZ2581xe7xL-aJNwPJ4DOK8sGAspUmleMimIEe5szGfE2L6RgUNXLW6H3AEgYwgujhlUUr-BvwGCr444HX6_IeCci0.dddLC1qB6cTyAKN-LanNFA" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1562, + "httpVersion": "HTTP/1.1", + "method": "DELETE", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-3" + }, + "response": { + "bodySize": 53, + "content": { + "mimeType": "application/json", + "size": 53, + "text": "{\"code\":404,\"message\":\"The variable does not exist\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:05:20 GMT" + }, + { + "name": "content-length", + "value": "53" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 259, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 404, + "statusText": "Not Found" + }, + "startedDateTime": "2024-07-03T04:05:20.376Z", + "time": 131, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 131 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/1-Export-variable1_1287514759/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/1-Export-variable1_1287514759/recording.har index 854459973..8afe5f471 100644 --- a/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/1-Export-variable1_1287514759/recording.har +++ b/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/1-Export-variable1_1287514759/recording.har @@ -19,39 +19,43 @@ "name": "accept", "value": "application/json, text/plain, */*" }, - { - "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-45" - }, { "name": "content-type", "value": "application/json" }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, { "name": "accept-api-version", "value": "protocol=1.0,resource=1.0" }, { "name": "authorization", - "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..jGQHIoYDHbORCMlQVBkjmw.00qB-Dn-5KWwpkWJCW5Ywz9MD2VTydyxEPxMDws1PNVBSeF1UZF4GL7Dmi70bdG5KVFovb1PO6iQGr-AXphS6QYLMJW6HKtpUQYIMws63xse490MNOQ8k_RS8JxHX_iJdmfWTp9Agsbx5wEANdXX7txEHe8czpU-g_6QCYlEdfjDfHkw-XNHX927JNWE0_Uz9jYqWWFIzgl_Xi3SGjW2PNrXjdyJ5MfYhNMw7PqD-6ysDNsyHQBxxQDhVZx8t1KaD6jIamkUiddn438ffezX_hX4WfUnYmcxMUxRi98KDDdSyGb1SKoqR-JtWqJKPsqv2hlE4GJo0pRrLZB_PEKAR0aZjwv4FVbOnQ832-9Byr8WpHvb79v5cW6aTdGCfmsTa8RoR6BbcsrH5rfSBEBnv2V9elFj8L4NM725RSk8lwzQbvpZ292J7VgfaNgdlG8PMytPGMEqHECAjcX63VyrKY_47wNkeop1sJudzq7_jRUQo5Cq85aSbIU-jD-IFTop0i6JUKp2MSLdQzUdJ9fVAVfzuyyqlhnAoP5FUJOmuWjZNGWdYaja1x_4otth0-haaIyCZzuKbJ5eTS5fjf6sqwXBCNadMhSyMQetb89PkJ3OYU_pQ5wSdOsabg7p5-brTZ0Fnb52WYQSODAvEAVl48ILu0tFfg1radXf42glEyAm83tVTRxUg_8PeOeMhA3-EWZvz5d4_CJnicKjSf__ne7Q0Gih0z-yJXHjQKKHdaN-9VmIZcPOXkJl6ndrC96Ze2Nm4XfqFaSf6grunL5n3THtcAx6K_hYVrLLHNjeDZx54SIgze_yZIM9nzQppRnOm8svqzo-hI7ArhyGjgGutdrRVYRA49Jta1Ts5O7cCXu1BOd9EXdvDmjAqjTkz6kik0kO2HoG2e8x5pclgedKs-a2gsCLP_iXRu0_z3IJwwtbvJHhbHySUZDYlzcRVQXpbx6zxD2llYZgJOJMBRawtzT-AUhWCum6n4UrHcyj8F0frFt1ndqvuU1vZPLRZtO0wLxsYb0Xolyss-9wFWHTF2IX7PM4rNmD8VLxRqIANXk.Hs4xNJI9FAdKfZXxFwAAKw" + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", "value": "openam-frodo-dev.forgeblocks.com" } ], - "headersSize": 1513, + "headersSize": 1559, "httpVersion": "HTTP/1.1", "method": "GET", "queryString": [], "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-1" }, "response": { - "bodySize": 230, + "bodySize": 219, "content": { "mimeType": "application/json", - "size": 230, - "text": "{\"_id\":\"esv-frodo-test-variable-1\",\"description\":\"description1\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-10-24T17:40:50.223Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":false,\"valueBase64\":\"dmFsdWUx\"}\n" + "size": 219, + "text": "{\"_id\":\"esv-frodo-test-variable-1\",\"description\":\"description1\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:45.503914Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUx\"}\n" }, "cookies": [], "headers": [ @@ -61,16 +65,20 @@ }, { "name": "date", - "value": "Tue, 24 Oct 2023 17:41:03 GMT" + "value": "Wed, 03 Jul 2024 04:09:55 GMT" }, { "name": "content-length", - "value": "230" + "value": "219" }, { "name": "strict-transport-security", "value": "max-age=31536000; includeSubDomains; preload;" }, + { + "name": "x-robots-tag", + "value": "none" + }, { "name": "via", "value": "1.1 google" @@ -80,14 +88,14 @@ "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" } ], - "headersSize": 240, + "headersSize": 260, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-24T17:41:03.016Z", - "time": 346, + "startedDateTime": "2024-07-03T04:09:54.720Z", + "time": 336, "timings": { "blocked": -1, "connect": -1, @@ -95,7 +103,7 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 346 + "wait": 336 } } ], diff --git a/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/2-Export-variable2-without-decoding_3456660472/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/2-Export-variable2-without-decoding_3456660472/recording.har index d16e9e2f9..f0e74999f 100644 --- a/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/2-Export-variable2-without-decoding_3456660472/recording.har +++ b/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/2-Export-variable2-without-decoding_3456660472/recording.har @@ -19,39 +19,43 @@ "name": "accept", "value": "application/json, text/plain, */*" }, - { - "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-45" - }, { "name": "content-type", "value": "application/json" }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, { "name": "accept-api-version", "value": "protocol=1.0,resource=1.0" }, { "name": "authorization", - "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..jGQHIoYDHbORCMlQVBkjmw.00qB-Dn-5KWwpkWJCW5Ywz9MD2VTydyxEPxMDws1PNVBSeF1UZF4GL7Dmi70bdG5KVFovb1PO6iQGr-AXphS6QYLMJW6HKtpUQYIMws63xse490MNOQ8k_RS8JxHX_iJdmfWTp9Agsbx5wEANdXX7txEHe8czpU-g_6QCYlEdfjDfHkw-XNHX927JNWE0_Uz9jYqWWFIzgl_Xi3SGjW2PNrXjdyJ5MfYhNMw7PqD-6ysDNsyHQBxxQDhVZx8t1KaD6jIamkUiddn438ffezX_hX4WfUnYmcxMUxRi98KDDdSyGb1SKoqR-JtWqJKPsqv2hlE4GJo0pRrLZB_PEKAR0aZjwv4FVbOnQ832-9Byr8WpHvb79v5cW6aTdGCfmsTa8RoR6BbcsrH5rfSBEBnv2V9elFj8L4NM725RSk8lwzQbvpZ292J7VgfaNgdlG8PMytPGMEqHECAjcX63VyrKY_47wNkeop1sJudzq7_jRUQo5Cq85aSbIU-jD-IFTop0i6JUKp2MSLdQzUdJ9fVAVfzuyyqlhnAoP5FUJOmuWjZNGWdYaja1x_4otth0-haaIyCZzuKbJ5eTS5fjf6sqwXBCNadMhSyMQetb89PkJ3OYU_pQ5wSdOsabg7p5-brTZ0Fnb52WYQSODAvEAVl48ILu0tFfg1radXf42glEyAm83tVTRxUg_8PeOeMhA3-EWZvz5d4_CJnicKjSf__ne7Q0Gih0z-yJXHjQKKHdaN-9VmIZcPOXkJl6ndrC96Ze2Nm4XfqFaSf6grunL5n3THtcAx6K_hYVrLLHNjeDZx54SIgze_yZIM9nzQppRnOm8svqzo-hI7ArhyGjgGutdrRVYRA49Jta1Ts5O7cCXu1BOd9EXdvDmjAqjTkz6kik0kO2HoG2e8x5pclgedKs-a2gsCLP_iXRu0_z3IJwwtbvJHhbHySUZDYlzcRVQXpbx6zxD2llYZgJOJMBRawtzT-AUhWCum6n4UrHcyj8F0frFt1ndqvuU1vZPLRZtO0wLxsYb0Xolyss-9wFWHTF2IX7PM4rNmD8VLxRqIANXk.Hs4xNJI9FAdKfZXxFwAAKw" + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", "value": "openam-frodo-dev.forgeblocks.com" } ], - "headersSize": 1513, + "headersSize": 1559, "httpVersion": "HTTP/1.1", "method": "GET", "queryString": [], "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-2" }, "response": { - "bodySize": 223, + "bodySize": 212, "content": { "mimeType": "application/json", - "size": 223, - "text": "{\"_id\":\"esv-frodo-test-variable-2\",\"description\":\"description2\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-10-24T17:40:54.286Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":false,\"valueBase64\":\"NDI=\"}\n" + "size": 212, + "text": "{\"_id\":\"esv-frodo-test-variable-2\",\"description\":\"description2\",\"expressionType\":\"int\",\"lastChangeDate\":\"2024-07-03T04:09:46.765137Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"NDI=\"}\n" }, "cookies": [], "headers": [ @@ -61,16 +65,20 @@ }, { "name": "date", - "value": "Tue, 24 Oct 2023 17:41:03 GMT" + "value": "Wed, 03 Jul 2024 04:09:55 GMT" }, { "name": "content-length", - "value": "223" + "value": "212" }, { "name": "strict-transport-security", "value": "max-age=31536000; includeSubDomains; preload;" }, + { + "name": "x-robots-tag", + "value": "none" + }, { "name": "via", "value": "1.1 google" @@ -80,14 +88,14 @@ "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" } ], - "headersSize": 240, + "headersSize": 260, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-24T17:41:03.437Z", - "time": 471, + "startedDateTime": "2024-07-03T04:09:55.074Z", + "time": 233, "timings": { "blocked": -1, "connect": -1, @@ -95,7 +103,7 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 471 + "wait": 233 } } ], diff --git a/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/3-Export-variable3-non-existent_4175820452/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/3-Export-variable3-non-existent_4175820452/recording.har index fbcd2b2b0..1d2c4637b 100644 --- a/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/3-Export-variable3-non-existent_4175820452/recording.har +++ b/src/test/mock-recordings/VariablesOps_1746822178/exportVariable_1902345524/3-Export-variable3-non-existent_4175820452/recording.har @@ -19,28 +19,32 @@ "name": "accept", "value": "application/json, text/plain, */*" }, - { - "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-45" - }, { "name": "content-type", "value": "application/json" }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, { "name": "accept-api-version", "value": "protocol=1.0,resource=1.0" }, { "name": "authorization", - "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..jGQHIoYDHbORCMlQVBkjmw.00qB-Dn-5KWwpkWJCW5Ywz9MD2VTydyxEPxMDws1PNVBSeF1UZF4GL7Dmi70bdG5KVFovb1PO6iQGr-AXphS6QYLMJW6HKtpUQYIMws63xse490MNOQ8k_RS8JxHX_iJdmfWTp9Agsbx5wEANdXX7txEHe8czpU-g_6QCYlEdfjDfHkw-XNHX927JNWE0_Uz9jYqWWFIzgl_Xi3SGjW2PNrXjdyJ5MfYhNMw7PqD-6ysDNsyHQBxxQDhVZx8t1KaD6jIamkUiddn438ffezX_hX4WfUnYmcxMUxRi98KDDdSyGb1SKoqR-JtWqJKPsqv2hlE4GJo0pRrLZB_PEKAR0aZjwv4FVbOnQ832-9Byr8WpHvb79v5cW6aTdGCfmsTa8RoR6BbcsrH5rfSBEBnv2V9elFj8L4NM725RSk8lwzQbvpZ292J7VgfaNgdlG8PMytPGMEqHECAjcX63VyrKY_47wNkeop1sJudzq7_jRUQo5Cq85aSbIU-jD-IFTop0i6JUKp2MSLdQzUdJ9fVAVfzuyyqlhnAoP5FUJOmuWjZNGWdYaja1x_4otth0-haaIyCZzuKbJ5eTS5fjf6sqwXBCNadMhSyMQetb89PkJ3OYU_pQ5wSdOsabg7p5-brTZ0Fnb52WYQSODAvEAVl48ILu0tFfg1radXf42glEyAm83tVTRxUg_8PeOeMhA3-EWZvz5d4_CJnicKjSf__ne7Q0Gih0z-yJXHjQKKHdaN-9VmIZcPOXkJl6ndrC96Ze2Nm4XfqFaSf6grunL5n3THtcAx6K_hYVrLLHNjeDZx54SIgze_yZIM9nzQppRnOm8svqzo-hI7ArhyGjgGutdrRVYRA49Jta1Ts5O7cCXu1BOd9EXdvDmjAqjTkz6kik0kO2HoG2e8x5pclgedKs-a2gsCLP_iXRu0_z3IJwwtbvJHhbHySUZDYlzcRVQXpbx6zxD2llYZgJOJMBRawtzT-AUhWCum6n4UrHcyj8F0frFt1ndqvuU1vZPLRZtO0wLxsYb0Xolyss-9wFWHTF2IX7PM4rNmD8VLxRqIANXk.Hs4xNJI9FAdKfZXxFwAAKw" + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", "value": "openam-frodo-dev.forgeblocks.com" } ], - "headersSize": 1513, + "headersSize": 1559, "httpVersion": "HTTP/1.1", "method": "GET", "queryString": [], @@ -61,7 +65,7 @@ }, { "name": "date", - "value": "Tue, 24 Oct 2023 17:41:04 GMT" + "value": "Wed, 03 Jul 2024 04:09:55 GMT" }, { "name": "content-length", @@ -71,6 +75,10 @@ "name": "strict-transport-security", "value": "max-age=31536000; includeSubDomains; preload;" }, + { + "name": "x-robots-tag", + "value": "none" + }, { "name": "via", "value": "1.1 google" @@ -80,14 +88,14 @@ "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" } ], - "headersSize": 239, + "headersSize": 259, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 404, "statusText": "Not Found" }, - "startedDateTime": "2023-10-24T17:41:03.922Z", - "time": 225, + "startedDateTime": "2024-07-03T04:09:55.319Z", + "time": 116, "timings": { "blocked": -1, "connect": -1, @@ -95,7 +103,7 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 225 + "wait": 116 } } ], diff --git a/src/test/mock-recordings/VariablesOps_1746822178/exportVariables_2500480215/1-Export-all-variables_3817480522/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/exportVariables_2500480215/1-Export-all-variables_3817480522/recording.har index eb3a7fd3a..9c081c54b 100644 --- a/src/test/mock-recordings/VariablesOps_1746822178/exportVariables_2500480215/1-Export-all-variables_3817480522/recording.har +++ b/src/test/mock-recordings/VariablesOps_1746822178/exportVariables_2500480215/1-Export-all-variables_3817480522/recording.har @@ -19,39 +19,43 @@ "name": "accept", "value": "application/json, text/plain, */*" }, - { - "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-45" - }, { "name": "content-type", "value": "application/json" }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, { "name": "accept-api-version", "value": "protocol=1.0,resource=1.0" }, { "name": "authorization", - "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..jGQHIoYDHbORCMlQVBkjmw.00qB-Dn-5KWwpkWJCW5Ywz9MD2VTydyxEPxMDws1PNVBSeF1UZF4GL7Dmi70bdG5KVFovb1PO6iQGr-AXphS6QYLMJW6HKtpUQYIMws63xse490MNOQ8k_RS8JxHX_iJdmfWTp9Agsbx5wEANdXX7txEHe8czpU-g_6QCYlEdfjDfHkw-XNHX927JNWE0_Uz9jYqWWFIzgl_Xi3SGjW2PNrXjdyJ5MfYhNMw7PqD-6ysDNsyHQBxxQDhVZx8t1KaD6jIamkUiddn438ffezX_hX4WfUnYmcxMUxRi98KDDdSyGb1SKoqR-JtWqJKPsqv2hlE4GJo0pRrLZB_PEKAR0aZjwv4FVbOnQ832-9Byr8WpHvb79v5cW6aTdGCfmsTa8RoR6BbcsrH5rfSBEBnv2V9elFj8L4NM725RSk8lwzQbvpZ292J7VgfaNgdlG8PMytPGMEqHECAjcX63VyrKY_47wNkeop1sJudzq7_jRUQo5Cq85aSbIU-jD-IFTop0i6JUKp2MSLdQzUdJ9fVAVfzuyyqlhnAoP5FUJOmuWjZNGWdYaja1x_4otth0-haaIyCZzuKbJ5eTS5fjf6sqwXBCNadMhSyMQetb89PkJ3OYU_pQ5wSdOsabg7p5-brTZ0Fnb52WYQSODAvEAVl48ILu0tFfg1radXf42glEyAm83tVTRxUg_8PeOeMhA3-EWZvz5d4_CJnicKjSf__ne7Q0Gih0z-yJXHjQKKHdaN-9VmIZcPOXkJl6ndrC96Ze2Nm4XfqFaSf6grunL5n3THtcAx6K_hYVrLLHNjeDZx54SIgze_yZIM9nzQppRnOm8svqzo-hI7ArhyGjgGutdrRVYRA49Jta1Ts5O7cCXu1BOd9EXdvDmjAqjTkz6kik0kO2HoG2e8x5pclgedKs-a2gsCLP_iXRu0_z3IJwwtbvJHhbHySUZDYlzcRVQXpbx6zxD2llYZgJOJMBRawtzT-AUhWCum6n4UrHcyj8F0frFt1ndqvuU1vZPLRZtO0wLxsYb0Xolyss-9wFWHTF2IX7PM4rNmD8VLxRqIANXk.Hs4xNJI9FAdKfZXxFwAAKw" + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", "value": "openam-frodo-dev.forgeblocks.com" } ], - "headersSize": 1487, + "headersSize": 1533, "httpVersion": "HTTP/1.1", "method": "GET", "queryString": [], "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables" }, "response": { - "bodySize": 4274, + "bodySize": 1746, "content": { "mimeType": "application/json", - "size": 4274, - "text": "{\"pagedResultsCookie\":null,\"remainingPagedResults\":-1,\"result\":[{\"_id\":\"esv-blue-piller\",\"description\":\"Zion membership criteria.\",\"expressionType\":\"bool\",\"lastChangeDate\":\"2023-07-18T22:21:38.640Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"ZmFsc2U=\"},{\"_id\":\"esv-frodo-test-variable-1\",\"description\":\"description1\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-10-24T17:40:50.223Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":false,\"valueBase64\":\"dmFsdWUx\"},{\"_id\":\"esv-frodo-test-variable-2\",\"description\":\"description2\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-10-24T17:40:54.286Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":false,\"valueBase64\":\"NDI=\"},{\"_id\":\"esv-ipv4-cidr-access-rules\",\"description\":\"IPv4 CIDR access rules:\\n{\\n \\\"allow\\\": [\\n \\\"address/mask\\\"\\n ]\\n}\",\"expressionType\":\"\",\"lastChangeDate\":\"2022-08-25T22:54:28.551Z\",\"lastChangedBy\":\"8efaa5b6-8c98-4489-9b21-ee41f5589ab7\",\"loaded\":true,\"valueBase64\":\"eyAgImFsbG93IjogWyAgICAiMTUwLjEyOC4wLjAvMTYiLCAgICAiMTM5LjM1LjAuMC8xNiIsICAgICIxMDEuMjE2LjAuMC8xNiIsICAgICI5OS43Mi4yOC4xODIvMzIiICBdfQ==\"},{\"_id\":\"esv-nebuchadnezzar-crew\",\"description\":\"The crew of the Nebuchadnezzar hovercraft.\",\"expressionType\":\"array\",\"lastChangeDate\":\"2023-07-18T21:59:58.974Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"WyJNb3JwaGV1cyIsIlRyaW5pdHkiLCJMaW5rIiwiVGFuayIsIkRvemVyIiwiQXBvYyIsIkN5cGhlciIsIk1vdXNlIiwiTmVvIiwiU3dpdGNoIl0=\"},{\"_id\":\"esv-nebuchadnezzar-crew-structure\",\"description\":\"The structure of the crew of the Nebuchadnezzar hovercraft.\",\"expressionType\":\"object\",\"lastChangeDate\":\"2023-07-18T22:09:54.630Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"eyJDYXB0YWluIjoiTW9ycGhldXMiLCJGaXJzdE1hdGUiOiJUcmluaXR5IiwiT3BlcmF0b3IiOlsiTGluayIsIlRhbmsiXSwiTWVkaWMiOiJEb3plciIsIkNyZXdtZW4iOlsiQXBvYyIsIkN5cGhlciIsIk1vdXNlIiwiTmVvIiwiU3dpdGNoIl19\"},{\"_id\":\"esv-neo-age\",\"description\":\"Neo's age in the matrix.\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-07-18T22:21:23.578Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"Mjg=\"},{\"_id\":\"esv-test-var\",\"description\":\"this is a test description\",\"expressionType\":\"\",\"lastChangeDate\":\"2022-09-02T04:23:56.075Z\",\"lastChangedBy\":\"8efaa5b6-8c98-4489-9b21-ee41f5589ab7\",\"loaded\":true,\"valueBase64\":\"dGhpcyBpcyBhIHRlc3QgdmFyaWFibGU=\"},{\"_id\":\"esv-test-var-1\",\"description\":\"test var one\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-08-09T17:42:41.684Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"dGVzdCB2YXIgMSB2YWx1ZTI=\"},{\"_id\":\"esv-test-var-2\",\"description\":\"A temporary test variable\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-08-02T21:09:01.847Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"dGVzdHZhbA==\"},{\"_id\":\"esv-test-var-3\",\"description\":\"This is a test variable\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-10-17T22:22:52.023Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"NDI=\"},{\"_id\":\"esv-test-var-pi\",\"description\":\"This is another test variable.\",\"expressionType\":\"number\",\"lastChangeDate\":\"2023-10-17T22:28:44.529Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"My4xNDE1OTI2\"},{\"_id\":\"esv-test-var-pi-string\",\"description\":\"This is another test variable.\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-10-18T22:05:30.300Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"My4xNDE1OTI2\"},{\"_id\":\"esv-trinity-phone\",\"description\":\"In the opening of The Matrix (1999), the phone number Trinity is calling from is traced to (312)-555-0690\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-07-18T20:33:28.922Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"KDMxMiktNTU1LTA2OTA=\"},{\"_id\":\"esv-volkerstestvariable1\",\"description\":\"variable created for api testing\",\"expressionType\":\"\",\"lastChangeDate\":\"2022-11-30T00:13:52.478Z\",\"lastChangedBy\":\"10ecab02-f357-4522-bc17-dfcc64744064\",\"loaded\":true,\"valueBase64\":\"Zm9yIGplc3Q=\"}],\"resultCount\":15,\"totalPagedResults\":-1,\"totalPagedResultsPolicy\":\"NONE\"}\n" + "size": 1746, + "text": "{\"pagedResultsCookie\":null,\"remainingPagedResults\":-1,\"result\":[{\"_id\":\"esv-frodo-test-variable-1\",\"description\":\"description1\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:45.503914Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUx\"},{\"_id\":\"esv-frodo-test-variable-14\",\"description\":\"description14\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:49.457874Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNA==\"},{\"_id\":\"esv-frodo-test-variable-15\",\"description\":\"description15\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:50.646982Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNQ==\"},{\"_id\":\"esv-frodo-test-variable-18\",\"description\":\"description18\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:52.187861Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxOA==\"},{\"_id\":\"esv-frodo-test-variable-19\",\"description\":\"description19\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:53.428262Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxOQ==\"},{\"_id\":\"esv-frodo-test-variable-2\",\"description\":\"description2\",\"expressionType\":\"int\",\"lastChangeDate\":\"2024-07-03T04:09:46.765137Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"NDI=\"},{\"_id\":\"esv-test-variable-light\",\"description\":\"Test variable containing the speed of light in meters per second (as an int).\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-12-14T15:34:13.446903Z\",\"lastChangedBy\":\"phales@trivir.com\",\"loaded\":true,\"valueBase64\":\"Mjk5NzkyNDU4\"}],\"resultCount\":7,\"totalPagedResults\":-1,\"totalPagedResultsPolicy\":\"NONE\"}\n" }, "cookies": [], "headers": [ @@ -61,16 +65,20 @@ }, { "name": "date", - "value": "Tue, 24 Oct 2023 17:41:00 GMT" + "value": "Wed, 03 Jul 2024 04:09:54 GMT" }, { - "name": "transfer-encoding", - "value": "chunked" + "name": "content-length", + "value": "1746" }, { "name": "strict-transport-security", "value": "max-age=31536000; includeSubDomains; preload;" }, + { + "name": "x-robots-tag", + "value": "none" + }, { "name": "via", "value": "1.1 google" @@ -80,14 +88,14 @@ "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" } ], - "headersSize": 247, + "headersSize": 261, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-24T17:40:57.810Z", - "time": 2646, + "startedDateTime": "2024-07-03T04:09:53.547Z", + "time": 603, "timings": { "blocked": -1, "connect": -1, @@ -95,7 +103,7 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 2646 + "wait": 603 } } ], diff --git a/src/test/mock-recordings/VariablesOps_1746822178/exportVariables_2500480215/2-Export-all-variables-without-decoding_841441648/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/exportVariables_2500480215/2-Export-all-variables-without-decoding_841441648/recording.har index 7c85f7a12..21d3e16eb 100644 --- a/src/test/mock-recordings/VariablesOps_1746822178/exportVariables_2500480215/2-Export-all-variables-without-decoding_841441648/recording.har +++ b/src/test/mock-recordings/VariablesOps_1746822178/exportVariables_2500480215/2-Export-all-variables-without-decoding_841441648/recording.har @@ -19,39 +19,43 @@ "name": "accept", "value": "application/json, text/plain, */*" }, - { - "name": "user-agent", - "value": "@rockcarver/frodo-lib/2.0.0-45" - }, { "name": "content-type", "value": "application/json" }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, { "name": "accept-api-version", "value": "protocol=1.0,resource=1.0" }, { "name": "authorization", - "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..jGQHIoYDHbORCMlQVBkjmw.00qB-Dn-5KWwpkWJCW5Ywz9MD2VTydyxEPxMDws1PNVBSeF1UZF4GL7Dmi70bdG5KVFovb1PO6iQGr-AXphS6QYLMJW6HKtpUQYIMws63xse490MNOQ8k_RS8JxHX_iJdmfWTp9Agsbx5wEANdXX7txEHe8czpU-g_6QCYlEdfjDfHkw-XNHX927JNWE0_Uz9jYqWWFIzgl_Xi3SGjW2PNrXjdyJ5MfYhNMw7PqD-6ysDNsyHQBxxQDhVZx8t1KaD6jIamkUiddn438ffezX_hX4WfUnYmcxMUxRi98KDDdSyGb1SKoqR-JtWqJKPsqv2hlE4GJo0pRrLZB_PEKAR0aZjwv4FVbOnQ832-9Byr8WpHvb79v5cW6aTdGCfmsTa8RoR6BbcsrH5rfSBEBnv2V9elFj8L4NM725RSk8lwzQbvpZ292J7VgfaNgdlG8PMytPGMEqHECAjcX63VyrKY_47wNkeop1sJudzq7_jRUQo5Cq85aSbIU-jD-IFTop0i6JUKp2MSLdQzUdJ9fVAVfzuyyqlhnAoP5FUJOmuWjZNGWdYaja1x_4otth0-haaIyCZzuKbJ5eTS5fjf6sqwXBCNadMhSyMQetb89PkJ3OYU_pQ5wSdOsabg7p5-brTZ0Fnb52WYQSODAvEAVl48ILu0tFfg1radXf42glEyAm83tVTRxUg_8PeOeMhA3-EWZvz5d4_CJnicKjSf__ne7Q0Gih0z-yJXHjQKKHdaN-9VmIZcPOXkJl6ndrC96Ze2Nm4XfqFaSf6grunL5n3THtcAx6K_hYVrLLHNjeDZx54SIgze_yZIM9nzQppRnOm8svqzo-hI7ArhyGjgGutdrRVYRA49Jta1Ts5O7cCXu1BOd9EXdvDmjAqjTkz6kik0kO2HoG2e8x5pclgedKs-a2gsCLP_iXRu0_z3IJwwtbvJHhbHySUZDYlzcRVQXpbx6zxD2llYZgJOJMBRawtzT-AUhWCum6n4UrHcyj8F0frFt1ndqvuU1vZPLRZtO0wLxsYb0Xolyss-9wFWHTF2IX7PM4rNmD8VLxRqIANXk.Hs4xNJI9FAdKfZXxFwAAKw" + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" }, { "name": "host", "value": "openam-frodo-dev.forgeblocks.com" } ], - "headersSize": 1487, + "headersSize": 1533, "httpVersion": "HTTP/1.1", "method": "GET", "queryString": [], "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables" }, "response": { - "bodySize": 4274, + "bodySize": 1746, "content": { "mimeType": "application/json", - "size": 4274, - "text": "{\"pagedResultsCookie\":null,\"remainingPagedResults\":-1,\"result\":[{\"_id\":\"esv-blue-piller\",\"description\":\"Zion membership criteria.\",\"expressionType\":\"bool\",\"lastChangeDate\":\"2023-07-18T22:21:38.640Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"ZmFsc2U=\"},{\"_id\":\"esv-frodo-test-variable-1\",\"description\":\"description1\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-10-24T17:40:50.223Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":false,\"valueBase64\":\"dmFsdWUx\"},{\"_id\":\"esv-frodo-test-variable-2\",\"description\":\"description2\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-10-24T17:40:54.286Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":false,\"valueBase64\":\"NDI=\"},{\"_id\":\"esv-ipv4-cidr-access-rules\",\"description\":\"IPv4 CIDR access rules:\\n{\\n \\\"allow\\\": [\\n \\\"address/mask\\\"\\n ]\\n}\",\"expressionType\":\"\",\"lastChangeDate\":\"2022-08-25T22:54:28.551Z\",\"lastChangedBy\":\"8efaa5b6-8c98-4489-9b21-ee41f5589ab7\",\"loaded\":true,\"valueBase64\":\"eyAgImFsbG93IjogWyAgICAiMTUwLjEyOC4wLjAvMTYiLCAgICAiMTM5LjM1LjAuMC8xNiIsICAgICIxMDEuMjE2LjAuMC8xNiIsICAgICI5OS43Mi4yOC4xODIvMzIiICBdfQ==\"},{\"_id\":\"esv-nebuchadnezzar-crew\",\"description\":\"The crew of the Nebuchadnezzar hovercraft.\",\"expressionType\":\"array\",\"lastChangeDate\":\"2023-07-18T21:59:58.974Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"WyJNb3JwaGV1cyIsIlRyaW5pdHkiLCJMaW5rIiwiVGFuayIsIkRvemVyIiwiQXBvYyIsIkN5cGhlciIsIk1vdXNlIiwiTmVvIiwiU3dpdGNoIl0=\"},{\"_id\":\"esv-nebuchadnezzar-crew-structure\",\"description\":\"The structure of the crew of the Nebuchadnezzar hovercraft.\",\"expressionType\":\"object\",\"lastChangeDate\":\"2023-07-18T22:09:54.630Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"eyJDYXB0YWluIjoiTW9ycGhldXMiLCJGaXJzdE1hdGUiOiJUcmluaXR5IiwiT3BlcmF0b3IiOlsiTGluayIsIlRhbmsiXSwiTWVkaWMiOiJEb3plciIsIkNyZXdtZW4iOlsiQXBvYyIsIkN5cGhlciIsIk1vdXNlIiwiTmVvIiwiU3dpdGNoIl19\"},{\"_id\":\"esv-neo-age\",\"description\":\"Neo's age in the matrix.\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-07-18T22:21:23.578Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"Mjg=\"},{\"_id\":\"esv-test-var\",\"description\":\"this is a test description\",\"expressionType\":\"\",\"lastChangeDate\":\"2022-09-02T04:23:56.075Z\",\"lastChangedBy\":\"8efaa5b6-8c98-4489-9b21-ee41f5589ab7\",\"loaded\":true,\"valueBase64\":\"dGhpcyBpcyBhIHRlc3QgdmFyaWFibGU=\"},{\"_id\":\"esv-test-var-1\",\"description\":\"test var one\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-08-09T17:42:41.684Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"dGVzdCB2YXIgMSB2YWx1ZTI=\"},{\"_id\":\"esv-test-var-2\",\"description\":\"A temporary test variable\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-08-02T21:09:01.847Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"dGVzdHZhbA==\"},{\"_id\":\"esv-test-var-3\",\"description\":\"This is a test variable\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-10-17T22:22:52.023Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"NDI=\"},{\"_id\":\"esv-test-var-pi\",\"description\":\"This is another test variable.\",\"expressionType\":\"number\",\"lastChangeDate\":\"2023-10-17T22:28:44.529Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"My4xNDE1OTI2\"},{\"_id\":\"esv-test-var-pi-string\",\"description\":\"This is another test variable.\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-10-18T22:05:30.300Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"My4xNDE1OTI2\"},{\"_id\":\"esv-trinity-phone\",\"description\":\"In the opening of The Matrix (1999), the phone number Trinity is calling from is traced to (312)-555-0690\",\"expressionType\":\"string\",\"lastChangeDate\":\"2023-07-18T20:33:28.922Z\",\"lastChangedBy\":\"b672336b-41ef-428d-ae4a-e0c082875377\",\"loaded\":true,\"valueBase64\":\"KDMxMiktNTU1LTA2OTA=\"},{\"_id\":\"esv-volkerstestvariable1\",\"description\":\"variable created for api testing\",\"expressionType\":\"\",\"lastChangeDate\":\"2022-11-30T00:13:52.478Z\",\"lastChangedBy\":\"10ecab02-f357-4522-bc17-dfcc64744064\",\"loaded\":true,\"valueBase64\":\"Zm9yIGplc3Q=\"}],\"resultCount\":15,\"totalPagedResults\":-1,\"totalPagedResultsPolicy\":\"NONE\"}\n" + "size": 1746, + "text": "{\"pagedResultsCookie\":null,\"remainingPagedResults\":-1,\"result\":[{\"_id\":\"esv-frodo-test-variable-1\",\"description\":\"description1\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:45.503914Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUx\"},{\"_id\":\"esv-frodo-test-variable-14\",\"description\":\"description14\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:49.457874Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNA==\"},{\"_id\":\"esv-frodo-test-variable-15\",\"description\":\"description15\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:50.646982Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNQ==\"},{\"_id\":\"esv-frodo-test-variable-18\",\"description\":\"description18\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:52.187861Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxOA==\"},{\"_id\":\"esv-frodo-test-variable-19\",\"description\":\"description19\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:53.428262Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxOQ==\"},{\"_id\":\"esv-frodo-test-variable-2\",\"description\":\"description2\",\"expressionType\":\"int\",\"lastChangeDate\":\"2024-07-03T04:09:46.765137Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"NDI=\"},{\"_id\":\"esv-test-variable-light\",\"description\":\"Test variable containing the speed of light in meters per second (as an int).\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-12-14T15:34:13.446903Z\",\"lastChangedBy\":\"phales@trivir.com\",\"loaded\":true,\"valueBase64\":\"Mjk5NzkyNDU4\"}],\"resultCount\":7,\"totalPagedResults\":-1,\"totalPagedResultsPolicy\":\"NONE\"}\n" }, "cookies": [], "headers": [ @@ -61,16 +65,20 @@ }, { "name": "date", - "value": "Tue, 24 Oct 2023 17:41:02 GMT" + "value": "Wed, 03 Jul 2024 04:09:54 GMT" }, { - "name": "transfer-encoding", - "value": "chunked" + "name": "content-length", + "value": "1746" }, { "name": "strict-transport-security", "value": "max-age=31536000; includeSubDomains; preload;" }, + { + "name": "x-robots-tag", + "value": "none" + }, { "name": "via", "value": "1.1 google" @@ -80,14 +88,14 @@ "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" } ], - "headersSize": 247, + "headersSize": 261, "httpVersion": "HTTP/1.1", "redirectURL": "", "status": 200, "statusText": "OK" }, - "startedDateTime": "2023-10-24T17:41:00.513Z", - "time": 2481, + "startedDateTime": "2024-07-03T04:09:54.167Z", + "time": 541, "timings": { "blocked": -1, "connect": -1, @@ -95,7 +103,7 @@ "receive": 0, "send": 0, "ssl": -1, - "wait": 2481 + "wait": 541 } } ], diff --git a/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/1-Import-variable4_118088999/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/1-Import-variable4_118088999/recording.har new file mode 100644 index 000000000..1df7dc4f1 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/1-Import-variable4_118088999/recording.har @@ -0,0 +1,122 @@ +{ + "log": { + "_recordingName": "VariablesOps/importVariable()/1: Import variable4", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "db8f5d4cab7cc09e15b935bdd17098cd", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 81, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "81" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1579, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWU0\",\"description\":\"description4\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-4" + }, + "response": { + "bodySize": 222, + "content": { + "mimeType": "application/json", + "size": 222, + "text": "{\"_id\":\"esv-frodo-test-variable-4\",\"description\":\"description4\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:57.898740932Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWU0\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:09:58 GMT" + }, + { + "name": "content-length", + "value": "222" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:09:57.073Z", + "time": 948, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 948 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/2-Import-variable5-decoded_2201813948/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/2-Import-variable5-decoded_2201813948/recording.har new file mode 100644 index 000000000..5b670cb8f --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/2-Import-variable5-decoded_2201813948/recording.har @@ -0,0 +1,122 @@ +{ + "log": { + "_recordingName": "VariablesOps/importVariable()/2: Import variable5 (decoded)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "30707a1ae1cc5415b30605bd4622be86", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 81, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "81" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1579, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWU1\",\"description\":\"description5\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-5" + }, + "response": { + "bodySize": 222, + "content": { + "mimeType": "application/json", + "size": 222, + "text": "{\"_id\":\"esv-frodo-test-variable-5\",\"description\":\"description5\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:58.705095993Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWU1\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:09:58 GMT" + }, + { + "name": "content-length", + "value": "222" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:09:58.029Z", + "time": 772, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 772 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/3-Import-first-variable6_1432166637/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/3-Import-first-variable6_1432166637/recording.har new file mode 100644 index 000000000..966cd0fef --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/3-Import-first-variable6_1432166637/recording.har @@ -0,0 +1,122 @@ +{ + "log": { + "_recordingName": "VariablesOps/importVariable()/3: Import first variable6", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ac492505ec55247efb2de879e1e3d25c", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 81, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "81" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1579, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWU2\",\"description\":\"description6\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-6" + }, + "response": { + "bodySize": 222, + "content": { + "mimeType": "application/json", + "size": 222, + "text": "{\"_id\":\"esv-frodo-test-variable-6\",\"description\":\"description6\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:59.681529329Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWU2\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:09:59 GMT" + }, + { + "name": "content-length", + "value": "222" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:09:58.808Z", + "time": 971, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 971 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/4-Import-first-variable7-decoded_500789694/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/4-Import-first-variable7-decoded_500789694/recording.har new file mode 100644 index 000000000..ce4cbadaa --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/importVariable_3631122847/4-Import-first-variable7-decoded_500789694/recording.har @@ -0,0 +1,122 @@ +{ + "log": { + "_recordingName": "VariablesOps/importVariable()/4: Import first variable7 (decoded)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "b3372e1b666206690e37a5cf4991d2a5", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 81, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "81" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1579, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWU3\",\"description\":\"description7\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-7" + }, + "response": { + "bodySize": 222, + "content": { + "mimeType": "application/json", + "size": 222, + "text": "{\"_id\":\"esv-frodo-test-variable-7\",\"description\":\"description7\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:10:00.558993642Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWU3\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:00 GMT" + }, + { + "name": "content-length", + "value": "222" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:09:59.785Z", + "time": 970, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 970 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/importVariables_782787906/1-Import-all-variables_2626107905/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/importVariables_782787906/1-Import-all-variables_2626107905/recording.har new file mode 100644 index 000000000..1a1690328 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/importVariables_782787906/1-Import-all-variables_2626107905/recording.har @@ -0,0 +1,230 @@ +{ + "log": { + "_recordingName": "VariablesOps/importVariables()/1: Import all variables", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "70ad95126027a4544356e8290b436a4b", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 81, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "81" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1579, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWU4\",\"description\":\"description8\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-8" + }, + "response": { + "bodySize": 222, + "content": { + "mimeType": "application/json", + "size": 222, + "text": "{\"_id\":\"esv-frodo-test-variable-8\",\"description\":\"description8\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:10:01.605958533Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWU4\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:01 GMT" + }, + { + "name": "content-length", + "value": "222" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:00.762Z", + "time": 969, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 969 + } + }, + { + "_id": "8dc9447826a095bd34ebf1158008b025", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 81, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "81" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1579, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWU5\",\"description\":\"description9\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-9" + }, + "response": { + "bodySize": 222, + "content": { + "mimeType": "application/json", + "size": 222, + "text": "{\"_id\":\"esv-frodo-test-variable-9\",\"description\":\"description9\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:10:02.520655713Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWU5\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:02 GMT" + }, + { + "name": "content-length", + "value": "222" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:01.736Z", + "time": 890, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 890 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/importVariables_782787906/2-Import-all-variables-decoded_2487548917/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/importVariables_782787906/2-Import-all-variables-decoded_2487548917/recording.har new file mode 100644 index 000000000..86a0cc074 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/importVariables_782787906/2-Import-all-variables-decoded_2487548917/recording.har @@ -0,0 +1,230 @@ +{ + "log": { + "_recordingName": "VariablesOps/importVariables()/2: Import all variables (decoded)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "2e512750e763ac1e2a2a7c8b50aa4313", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1580, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWUxMA==\",\"description\":\"description10\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-10" + }, + "response": { + "bodySize": 228, + "content": { + "mimeType": "application/json", + "size": 228, + "text": "{\"_id\":\"esv-frodo-test-variable-10\",\"description\":\"description10\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:10:03.580024352Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxMA==\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:03 GMT" + }, + { + "name": "content-length", + "value": "228" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:02.635Z", + "time": 1076, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 1076 + } + }, + { + "_id": "442a2cd25a06613e9933ac753434f4a8", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1580, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWUxMQ==\",\"description\":\"description11\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-11" + }, + "response": { + "bodySize": 228, + "content": { + "mimeType": "application/json", + "size": 228, + "text": "{\"_id\":\"esv-frodo-test-variable-11\",\"description\":\"description11\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:10:04.583252701Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxMQ==\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:04 GMT" + }, + { + "name": "content-length", + "value": "228" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:03.716Z", + "time": 986, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 986 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/readVariable_1622774010/1-Read-variable1_2462287757/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/readVariable_1622774010/1-Read-variable1_2462287757/recording.har new file mode 100644 index 000000000..910b8ae62 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/readVariable_1622774010/1-Read-variable1_2462287757/recording.har @@ -0,0 +1,113 @@ +{ + "log": { + "_recordingName": "VariablesOps/readVariable()/1: Read variable1", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "08d2dea99990c33037034cf27a34b5ad", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1559, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-1" + }, + "response": { + "bodySize": 219, + "content": { + "mimeType": "application/json", + "size": 219, + "text": "{\"_id\":\"esv-frodo-test-variable-1\",\"description\":\"description1\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:45.503914Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUx\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:09:56 GMT" + }, + { + "name": "content-length", + "value": "219" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:09:56.517Z", + "time": 202, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 202 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/readVariable_1622774010/2-Read-variable2-without-decoding_178426610/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/readVariable_1622774010/2-Read-variable2-without-decoding_178426610/recording.har new file mode 100644 index 000000000..0c9461333 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/readVariable_1622774010/2-Read-variable2-without-decoding_178426610/recording.har @@ -0,0 +1,113 @@ +{ + "log": { + "_recordingName": "VariablesOps/readVariable()/2: Read variable2 without decoding", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "004d2665b8752e3b0f64040d71694d79", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1559, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-2" + }, + "response": { + "bodySize": 212, + "content": { + "mimeType": "application/json", + "size": 212, + "text": "{\"_id\":\"esv-frodo-test-variable-2\",\"description\":\"description2\",\"expressionType\":\"int\",\"lastChangeDate\":\"2024-07-03T04:09:46.765137Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"NDI=\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:09:56 GMT" + }, + { + "name": "content-length", + "value": "212" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:09:56.726Z", + "time": 223, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 223 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/readVariable_1622774010/3-Read-variable3-non-existent_4216545786/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/readVariable_1622774010/3-Read-variable3-non-existent_4216545786/recording.har new file mode 100644 index 000000000..5d048c2f6 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/readVariable_1622774010/3-Read-variable3-non-existent_4216545786/recording.har @@ -0,0 +1,113 @@ +{ + "log": { + "_recordingName": "VariablesOps/readVariable()/3: Read variable3 (non-existent)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9875b020397c53e92bd855c668fe55d1", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1559, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-3" + }, + "response": { + "bodySize": 53, + "content": { + "mimeType": "application/json", + "size": 53, + "text": "{\"code\":404,\"message\":\"The variable does not exist\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:09:57 GMT" + }, + { + "name": "content-length", + "value": "53" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 259, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 404, + "statusText": "Not Found" + }, + "startedDateTime": "2024-07-03T04:09:56.957Z", + "time": 106, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 106 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/readVariables_753571573/1-Read-all-variables_174031444/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/readVariables_753571573/1-Read-all-variables_174031444/recording.har new file mode 100644 index 000000000..e62d20b7c --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/readVariables_753571573/1-Read-all-variables_174031444/recording.har @@ -0,0 +1,113 @@ +{ + "log": { + "_recordingName": "VariablesOps/readVariables()/1: Read all variables", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "49c64431f90c263c4e22873dcf498dcb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1533, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables" + }, + "response": { + "bodySize": 1746, + "content": { + "mimeType": "application/json", + "size": 1746, + "text": "{\"pagedResultsCookie\":null,\"remainingPagedResults\":-1,\"result\":[{\"_id\":\"esv-frodo-test-variable-1\",\"description\":\"description1\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:45.503914Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUx\"},{\"_id\":\"esv-frodo-test-variable-14\",\"description\":\"description14\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:49.457874Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNA==\"},{\"_id\":\"esv-frodo-test-variable-15\",\"description\":\"description15\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:50.646982Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNQ==\"},{\"_id\":\"esv-frodo-test-variable-18\",\"description\":\"description18\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:52.187861Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxOA==\"},{\"_id\":\"esv-frodo-test-variable-19\",\"description\":\"description19\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:53.428262Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxOQ==\"},{\"_id\":\"esv-frodo-test-variable-2\",\"description\":\"description2\",\"expressionType\":\"int\",\"lastChangeDate\":\"2024-07-03T04:09:46.765137Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"NDI=\"},{\"_id\":\"esv-test-variable-light\",\"description\":\"Test variable containing the speed of light in meters per second (as an int).\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-12-14T15:34:13.446903Z\",\"lastChangedBy\":\"phales@trivir.com\",\"loaded\":true,\"valueBase64\":\"Mjk5NzkyNDU4\"}],\"resultCount\":7,\"totalPagedResults\":-1,\"totalPagedResultsPolicy\":\"NONE\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:09:56 GMT" + }, + { + "name": "content-length", + "value": "1746" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 261, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:09:55.446Z", + "time": 537, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 537 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/readVariables_753571573/2-Read-all-variables-without-decoding_2155685234/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/readVariables_753571573/2-Read-all-variables-without-decoding_2155685234/recording.har new file mode 100644 index 000000000..b43ff8882 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/readVariables_753571573/2-Read-all-variables-without-decoding_2155685234/recording.har @@ -0,0 +1,113 @@ +{ + "log": { + "_recordingName": "VariablesOps/readVariables()/2: Read all variables without decoding", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "49c64431f90c263c4e22873dcf498dcb", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 0, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1533, + "httpVersion": "HTTP/1.1", + "method": "GET", + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables" + }, + "response": { + "bodySize": 1746, + "content": { + "mimeType": "application/json", + "size": 1746, + "text": "{\"pagedResultsCookie\":null,\"remainingPagedResults\":-1,\"result\":[{\"_id\":\"esv-frodo-test-variable-1\",\"description\":\"description1\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:45.503914Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUx\"},{\"_id\":\"esv-frodo-test-variable-14\",\"description\":\"description14\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:49.457874Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNA==\"},{\"_id\":\"esv-frodo-test-variable-15\",\"description\":\"description15\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:50.646982Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNQ==\"},{\"_id\":\"esv-frodo-test-variable-18\",\"description\":\"description18\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:52.187861Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxOA==\"},{\"_id\":\"esv-frodo-test-variable-19\",\"description\":\"description19\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:53.428262Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxOQ==\"},{\"_id\":\"esv-frodo-test-variable-2\",\"description\":\"description2\",\"expressionType\":\"int\",\"lastChangeDate\":\"2024-07-03T04:09:46.765137Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"NDI=\"},{\"_id\":\"esv-test-variable-light\",\"description\":\"Test variable containing the speed of light in meters per second (as an int).\",\"expressionType\":\"int\",\"lastChangeDate\":\"2023-12-14T15:34:13.446903Z\",\"lastChangedBy\":\"phales@trivir.com\",\"loaded\":true,\"valueBase64\":\"Mjk5NzkyNDU4\"}],\"resultCount\":7,\"totalPagedResults\":-1,\"totalPagedResultsPolicy\":\"NONE\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:09:56 GMT" + }, + { + "name": "content-length", + "value": "1746" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 261, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:09:55.989Z", + "time": 519, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 519 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/updateVariableDescription_290725273/1-Update-variable18-description_1973306278/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/updateVariableDescription_290725273/1-Update-variable18-description_1973306278/recording.har new file mode 100644 index 000000000..ab86aea71 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/updateVariableDescription_290725273/1-Update-variable18-description_1973306278/recording.har @@ -0,0 +1,122 @@ +{ + "log": { + "_recordingName": "VariablesOps/updateVariableDescription()/1: Update variable18 description", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "a4837d897f2156939d4a8f0c22287b01", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 31, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "31" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1604, + "httpVersion": "HTTP/1.1", + "method": "POST", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"description\":\"description18\"}" + }, + "queryString": [ + { + "name": "_action", + "value": "setDescription" + } + ], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-18?_action=setDescription" + }, + "response": { + "bodySize": 0, + "content": { + "mimeType": "text/plain", + "size": 0 + }, + "cookies": [], + "headers": [ + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:11 GMT" + }, + { + "name": "content-length", + "value": "0" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 226, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:10.574Z", + "time": 609, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 609 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/1-Update-existing-variable14-pre-encoded_3580895240/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/1-Update-existing-variable14-pre-encoded_3580895240/recording.har new file mode 100644 index 000000000..b2fccb836 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/1-Update-existing-variable14-pre-encoded_3580895240/recording.har @@ -0,0 +1,122 @@ +{ + "log": { + "_recordingName": "VariablesOps/updateVariable()/1: Update existing variable14 (pre-encoded)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "4aecb641c12cb2122f72bce85bf1df5a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1580, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWUxNA==\",\"description\":\"description14\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-14" + }, + "response": { + "bodySize": 225, + "content": { + "mimeType": "application/json", + "size": 225, + "text": "{\"_id\":\"esv-frodo-test-variable-14\",\"description\":\"description14\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:49.457874Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNA==\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:07 GMT" + }, + { + "name": "content-length", + "value": "225" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:06.922Z", + "time": 555, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 555 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/2-Update-existing-variable15-not-encoded_968957465/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/2-Update-existing-variable15-not-encoded_968957465/recording.har new file mode 100644 index 000000000..853ce7427 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/2-Update-existing-variable15-not-encoded_968957465/recording.har @@ -0,0 +1,122 @@ +{ + "log": { + "_recordingName": "VariablesOps/updateVariable()/2: Update existing variable15 (not encoded)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "ee4bbb765ef6f04f7940c1aeccac752d", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1580, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWUxNQ==\",\"description\":\"description15\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-15" + }, + "response": { + "bodySize": 225, + "content": { + "mimeType": "application/json", + "size": 225, + "text": "{\"_id\":\"esv-frodo-test-variable-15\",\"description\":\"description15\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:09:50.646982Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNQ==\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:08 GMT" + }, + { + "name": "content-length", + "value": "225" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:07.707Z", + "time": 779, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 779 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/3-Update_216291097/create-non-existing-variable16-pre-encoded_2367196774/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/3-Update_216291097/create-non-existing-variable16-pre-encoded_2367196774/recording.har new file mode 100644 index 000000000..93a31c99c --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/3-Update_216291097/create-non-existing-variable16-pre-encoded_2367196774/recording.har @@ -0,0 +1,122 @@ +{ + "log": { + "_recordingName": "VariablesOps/updateVariable()/3: Update/create non-existing variable16 (pre-encoded)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "9fd1042610a9b9611fed374f32bf85cc", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1580, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWUxNg==\",\"description\":\"description16\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-16" + }, + "response": { + "bodySize": 228, + "content": { + "mimeType": "application/json", + "size": 228, + "text": "{\"_id\":\"esv-frodo-test-variable-16\",\"description\":\"description16\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:10:09.402716019Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNg==\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:09 GMT" + }, + { + "name": "content-length", + "value": "228" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:08.495Z", + "time": 998, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 998 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/4-Update_3250943552/create-non-existing-variable17-not-encoded_3655512710/recording.har b/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/4-Update_3250943552/create-non-existing-variable17-not-encoded_3655512710/recording.har new file mode 100644 index 000000000..e831f2bb1 --- /dev/null +++ b/src/test/mock-recordings/VariablesOps_1746822178/updateVariable_2835272575/4-Update_3250943552/create-non-existing-variable17-not-encoded_3655512710/recording.har @@ -0,0 +1,122 @@ +{ + "log": { + "_recordingName": "VariablesOps/updateVariable()/4: Update/create non-existing variable17 (not encoded)", + "creator": { + "comment": "persister:fs", + "name": "Polly.JS", + "version": "6.0.6" + }, + "entries": [ + { + "_id": "a4d468b7fc43dd118fae39b1eede0a5a", + "_order": 0, + "cache": {}, + "request": { + "bodySize": 86, + "cookies": [], + "headers": [ + { + "name": "accept", + "value": "application/json, text/plain, */*" + }, + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "user-agent", + "value": "@rockcarver/frodo-lib/2.0.0-89" + }, + { + "name": "accept-api-version", + "value": "protocol=1.0,resource=1.0" + }, + { + "name": "authorization", + "value": "Bearer eyJ0eXAiOiJKV1QiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..HTfIcaxQboPc2WoQ0-EMQQ.5W-Hn_CvDZM8jtxPg5ozY7Yd_NM4my8aED5l4LzdOewm65E6vmzx1h0BQzRzlwhyipChKQ4pnOiVLhdbSq3w6AmaBBstKMmIvqU4j3HW5X5AoQzE6YGyZB3M9jKaRbwbB-tRJjd8snBCmOENri4bGlVgvJgfUaJGvDSbvDQM78fOgDLIpgIXP3QmvhcT8app0c1W8UlZBgqfXhN9NDeMyLx7tFB_aWgDP-bWePqxi92drF1SpUuAKV00_z3uRL4T-fvBIiwBoNjzs2_0ALKrTaG9klEcDF5WsgE5-FN-KcmZ8wm6pyU_aC9npPOW6Eemnn6SHdZvlCo_5C6Ds2oxWAnrx-NmqcgHBbW0sSHIYw7S-C-EGghqwiPmr8vDA0A3KeI5K1FetSemWe3y_TvBLzN40mVTVwn2sMfEzkgeRPh3wXBi6fwjM8uGpJFPXwuxCzzHCJRCoLPi8cXJcLpGfiQIz0CMJw8jXPGpsUx3qa1CSsQB4WXZWFJ9WkGXwuwvEcxxSZfxVgD5n13oGy032WK8slJw_Dn1qpEXHOblB5-h-K1dQJqaizgVgmkXx9q3bkjpxrzMmx86i9KbTD7xcJH_CGyxmHU2nnWkjBzxQhh8HJaWejI-5XgIcsDzxvn3sfZyQs67i_HJUvP3QZCtFn4uFMySUcNsr2T70HejTnMYuJfx8UzWG8Ve1xBx6C3ESVgo9VcZf0S8walgYpO_HQAD6IHPA5z5Pkh_LOqgilq_GS0-MpyBcCa4YZ6xGJF-I6G1GNb1NxEOIvGMH0bdgS5EBNHfCHUGCeaYcd00WJbMT6hqW0uqH-68D9NNrnM-WZ-01by7hUdOWAz4-CybaFqrP1NjdNkHZoPPwNKt2NiCYxltTps0sJ7-RHW2O8t8eY_qbb2RO2biVwFer39bYmHzPqh2tLenNeIKPwRzlE1LRTp8f4-zIkJHdQ6nQEcrNzJEd8hGcHACkbgSp3Ny0IOpQVCeehvTq2ghKcfTPxMVDVVDjH8w0Q82sLn40KLtZ2qBsNegobyjLh4rhfD79dQDOwcwoiLnXIslGlhvZKk.FQrtkj8Q0PNfd6k4H4wipw" + }, + { + "name": "content-length", + "value": "86" + }, + { + "name": "accept-encoding", + "value": "gzip, compress, deflate, br" + }, + { + "name": "host", + "value": "openam-frodo-dev.forgeblocks.com" + } + ], + "headersSize": 1580, + "httpVersion": "HTTP/1.1", + "method": "PUT", + "postData": { + "mimeType": "application/json", + "params": [], + "text": "{\"valueBase64\":\"dmFsdWUxNw==\",\"description\":\"description17\",\"expressionType\":\"string\"}" + }, + "queryString": [], + "url": "https://openam-frodo-dev.forgeblocks.com/environment/variables/esv-frodo-test-variable-17" + }, + "response": { + "bodySize": 228, + "content": { + "mimeType": "application/json", + "size": 228, + "text": "{\"_id\":\"esv-frodo-test-variable-17\",\"description\":\"description17\",\"expressionType\":\"string\",\"lastChangeDate\":\"2024-07-03T04:10:10.447749339Z\",\"lastChangedBy\":\"Frodo-SA-1701393386423\",\"loaded\":false,\"valueBase64\":\"dmFsdWUxNw==\"}\n" + }, + "cookies": [], + "headers": [ + { + "name": "content-type", + "value": "application/json" + }, + { + "name": "date", + "value": "Wed, 03 Jul 2024 04:10:10 GMT" + }, + { + "name": "content-length", + "value": "228" + }, + { + "name": "strict-transport-security", + "value": "max-age=31536000; includeSubDomains; preload;" + }, + { + "name": "x-robots-tag", + "value": "none" + }, + { + "name": "via", + "value": "1.1 google" + }, + { + "name": "alt-svc", + "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000" + } + ], + "headersSize": 260, + "httpVersion": "HTTP/1.1", + "redirectURL": "", + "status": 200, + "statusText": "OK" + }, + "startedDateTime": "2024-07-03T04:10:09.499Z", + "time": 1061, + "timings": { + "blocked": -1, + "connect": -1, + "dns": -1, + "receive": 0, + "send": 0, + "ssl": -1, + "wait": 1061 + } + } + ], + "pages": [], + "version": "1.2" + } +} diff --git a/src/test/snapshots/ops/ConfigOps.test.js.snap b/src/test/snapshots/ops/ConfigOps.test.js.snap index f93e1680f..4d1f49818 100644 --- a/src/test/snapshots/ops/ConfigOps.test.js.snap +++ b/src/test/snapshots/ops/ConfigOps.test.js.snap @@ -31283,7 +31283,6 @@ a{ "lastChangedBy": "sandeep.chaturvedi@forgerock.com", "loaded": true, "value": "ON", - "valueBase64": "T04=", }, "esv-test-var": { "_id": "esv-test-var", @@ -31293,7 +31292,6 @@ a{ "lastChangedBy": "unknown (76618ff6-e851-433e-9704-9d2852a17b7a)", "loaded": true, "value": "true", - "valueBase64": "dHJ1ZQ==", }, "esv-test-variable-belphegor": { "_id": "esv-test-variable-belphegor", @@ -31303,7 +31301,6 @@ a{ "lastChangedBy": "phales@trivir.com", "loaded": true, "value": "1000000000000066600000000000001", - "valueBase64": "MTAwMDAwMDAwMDAwMDA2NjYwMDAwMDAwMDAwMDAwMQ==", }, "esv-test-variable-light": { "_id": "esv-test-variable-light", @@ -31313,7 +31310,6 @@ a{ "lastChangedBy": "phales@trivir.com", "loaded": true, "value": "299792458", - "valueBase64": "Mjk5NzkyNDU4", }, }, } diff --git a/src/test/snapshots/ops/cloud/VariablesOps.test.js.snap b/src/test/snapshots/ops/cloud/VariablesOps.test.js.snap index 5d6260c88..b52c32541 100644 --- a/src/test/snapshots/ops/cloud/VariablesOps.test.js.snap +++ b/src/test/snapshots/ops/cloud/VariablesOps.test.js.snap @@ -1,5 +1,49 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`VariablesOps createVariable() 1: Create variable12 (pre-encoded) 1`] = ` +{ + "_id": "esv-frodo-test-variable-12", + "description": "description12", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:10:05.719644322Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxMg==", +} +`; + +exports[`VariablesOps createVariable() 2: Create variable13 (not encoded) 1`] = ` +{ + "_id": "esv-frodo-test-variable-13", + "description": "description13", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:10:06.824903102Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxMw==", +} +`; + +exports[`VariablesOps deleteVariable() 1: Delete variable19 1`] = ` +{ + "_id": "esv-frodo-test-variable-19", + "description": "description19", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:53.428262Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxOQ==", +} +`; + +exports[`VariablesOps deleteVariable() 2: Delete variable3 (non-existent) 1`] = ` +"Error deleting variable esv-frodo-test-variable-3 + HTTP client error + Code: ERR_BAD_REQUEST + Status: 404 + Message: The variable does not exist" +`; + exports[`VariablesOps exportVariable() 1: Export variable1 1`] = ` { "meta": Any, @@ -8,11 +52,10 @@ exports[`VariablesOps exportVariable() 1: Export variable1 1`] = ` "_id": "esv-frodo-test-variable-1", "description": "description1", "expressionType": "string", - "lastChangeDate": "2023-10-24T17:40:50.223Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", + "lastChangeDate": "2024-07-03T04:09:45.503914Z", + "lastChangedBy": "Frodo-SA-1701393386423", "loaded": false, "value": "value1", - "valueBase64": "dmFsdWUx", }, }, } @@ -26,8 +69,8 @@ exports[`VariablesOps exportVariable() 2: Export variable2 without decoding 1`] "_id": "esv-frodo-test-variable-2", "description": "description2", "expressionType": "int", - "lastChangeDate": "2023-10-24T17:40:54.286Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", + "lastChangeDate": "2024-07-03T04:09:46.765137Z", + "lastChangedBy": "Frodo-SA-1701393386423", "loaded": false, "valueBase64": "NDI=", }, @@ -47,160 +90,68 @@ exports[`VariablesOps exportVariables() 1: Export all variables 1`] = ` { "meta": Any, "variables": { - "esv-blue-piller": { - "_id": "esv-blue-piller", - "description": "Zion membership criteria.", - "expressionType": "bool", - "lastChangeDate": "2023-07-18T22:21:38.640Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "value": "false", - "valueBase64": "ZmFsc2U=", - }, "esv-frodo-test-variable-1": { "_id": "esv-frodo-test-variable-1", "description": "description1", "expressionType": "string", - "lastChangeDate": "2023-10-24T17:40:50.223Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", + "lastChangeDate": "2024-07-03T04:09:45.503914Z", + "lastChangedBy": "Frodo-SA-1701393386423", "loaded": false, "value": "value1", - "valueBase64": "dmFsdWUx", }, - "esv-frodo-test-variable-2": { - "_id": "esv-frodo-test-variable-2", - "description": "description2", - "expressionType": "int", - "lastChangeDate": "2023-10-24T17:40:54.286Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", + "esv-frodo-test-variable-14": { + "_id": "esv-frodo-test-variable-14", + "description": "description14", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:49.457874Z", + "lastChangedBy": "Frodo-SA-1701393386423", "loaded": false, - "value": "42", - "valueBase64": "NDI=", - }, - "esv-ipv4-cidr-access-rules": { - "_id": "esv-ipv4-cidr-access-rules", - "description": "IPv4 CIDR access rules: -{ - "allow": [ - "address/mask" - ] -}", - "expressionType": "", - "lastChangeDate": "2022-08-25T22:54:28.551Z", - "lastChangedBy": "8efaa5b6-8c98-4489-9b21-ee41f5589ab7", - "loaded": true, - "value": "{ "allow": [ "150.128.0.0/16", "139.35.0.0/16", "101.216.0.0/16", "99.72.28.182/32" ]}", - "valueBase64": "eyAgImFsbG93IjogWyAgICAiMTUwLjEyOC4wLjAvMTYiLCAgICAiMTM5LjM1LjAuMC8xNiIsICAgICIxMDEuMjE2LjAuMC8xNiIsICAgICI5OS43Mi4yOC4xODIvMzIiICBdfQ==", - }, - "esv-nebuchadnezzar-crew": { - "_id": "esv-nebuchadnezzar-crew", - "description": "The crew of the Nebuchadnezzar hovercraft.", - "expressionType": "array", - "lastChangeDate": "2023-07-18T21:59:58.974Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "value": "["Morpheus","Trinity","Link","Tank","Dozer","Apoc","Cypher","Mouse","Neo","Switch"]", - "valueBase64": "WyJNb3JwaGV1cyIsIlRyaW5pdHkiLCJMaW5rIiwiVGFuayIsIkRvemVyIiwiQXBvYyIsIkN5cGhlciIsIk1vdXNlIiwiTmVvIiwiU3dpdGNoIl0=", - }, - "esv-nebuchadnezzar-crew-structure": { - "_id": "esv-nebuchadnezzar-crew-structure", - "description": "The structure of the crew of the Nebuchadnezzar hovercraft.", - "expressionType": "object", - "lastChangeDate": "2023-07-18T22:09:54.630Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "value": "{"Captain":"Morpheus","FirstMate":"Trinity","Operator":["Link","Tank"],"Medic":"Dozer","Crewmen":["Apoc","Cypher","Mouse","Neo","Switch"]}", - "valueBase64": "eyJDYXB0YWluIjoiTW9ycGhldXMiLCJGaXJzdE1hdGUiOiJUcmluaXR5IiwiT3BlcmF0b3IiOlsiTGluayIsIlRhbmsiXSwiTWVkaWMiOiJEb3plciIsIkNyZXdtZW4iOlsiQXBvYyIsIkN5cGhlciIsIk1vdXNlIiwiTmVvIiwiU3dpdGNoIl19", - }, - "esv-neo-age": { - "_id": "esv-neo-age", - "description": "Neo's age in the matrix.", - "expressionType": "int", - "lastChangeDate": "2023-07-18T22:21:23.578Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "value": "28", - "valueBase64": "Mjg=", + "value": "value14", }, - "esv-test-var": { - "_id": "esv-test-var", - "description": "this is a test description", - "expressionType": "", - "lastChangeDate": "2022-09-02T04:23:56.075Z", - "lastChangedBy": "8efaa5b6-8c98-4489-9b21-ee41f5589ab7", - "loaded": true, - "value": "this is a test variable", - "valueBase64": "dGhpcyBpcyBhIHRlc3QgdmFyaWFibGU=", + "esv-frodo-test-variable-15": { + "_id": "esv-frodo-test-variable-15", + "description": "description15", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:50.646982Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value15", }, - "esv-test-var-1": { - "_id": "esv-test-var-1", - "description": "test var one", + "esv-frodo-test-variable-18": { + "_id": "esv-frodo-test-variable-18", + "description": "description18", "expressionType": "string", - "lastChangeDate": "2023-08-09T17:42:41.684Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "value": "test var 1 value2", - "valueBase64": "dGVzdCB2YXIgMSB2YWx1ZTI=", + "lastChangeDate": "2024-07-03T04:09:52.187861Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value18", }, - "esv-test-var-2": { - "_id": "esv-test-var-2", - "description": "A temporary test variable", + "esv-frodo-test-variable-19": { + "_id": "esv-frodo-test-variable-19", + "description": "description19", "expressionType": "string", - "lastChangeDate": "2023-08-02T21:09:01.847Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "value": "testval", - "valueBase64": "dGVzdHZhbA==", + "lastChangeDate": "2024-07-03T04:09:53.428262Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value19", }, - "esv-test-var-3": { - "_id": "esv-test-var-3", - "description": "This is a test variable", + "esv-frodo-test-variable-2": { + "_id": "esv-frodo-test-variable-2", + "description": "description2", "expressionType": "int", - "lastChangeDate": "2023-10-17T22:22:52.023Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, + "lastChangeDate": "2024-07-03T04:09:46.765137Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, "value": "42", - "valueBase64": "NDI=", - }, - "esv-test-var-pi": { - "_id": "esv-test-var-pi", - "description": "This is another test variable.", - "expressionType": "number", - "lastChangeDate": "2023-10-17T22:28:44.529Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "value": "3.1415926", - "valueBase64": "My4xNDE1OTI2", - }, - "esv-test-var-pi-string": { - "_id": "esv-test-var-pi-string", - "description": "This is another test variable.", - "expressionType": "string", - "lastChangeDate": "2023-10-18T22:05:30.300Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "value": "3.1415926", - "valueBase64": "My4xNDE1OTI2", - }, - "esv-trinity-phone": { - "_id": "esv-trinity-phone", - "description": "In the opening of The Matrix (1999), the phone number Trinity is calling from is traced to (312)-555-0690", - "expressionType": "string", - "lastChangeDate": "2023-07-18T20:33:28.922Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "value": "(312)-555-0690", - "valueBase64": "KDMxMiktNTU1LTA2OTA=", }, - "esv-volkerstestvariable1": { - "_id": "esv-volkerstestvariable1", - "description": "variable created for api testing", - "expressionType": "", - "lastChangeDate": "2022-11-30T00:13:52.478Z", - "lastChangedBy": "10ecab02-f357-4522-bc17-dfcc64744064", + "esv-test-variable-light": { + "_id": "esv-test-variable-light", + "description": "Test variable containing the speed of light in meters per second (as an int).", + "expressionType": "int", + "lastChangeDate": "2023-12-14T15:34:13.446903Z", + "lastChangedBy": "phales@trivir.com", "loaded": true, - "value": "for jest", - "valueBase64": "Zm9yIGplc3Q=", + "value": "299792458", }, }, } @@ -210,146 +161,381 @@ exports[`VariablesOps exportVariables() 2: Export all variables without decoding { "meta": Any, "variables": { - "esv-blue-piller": { - "_id": "esv-blue-piller", - "description": "Zion membership criteria.", - "expressionType": "bool", - "lastChangeDate": "2023-07-18T22:21:38.640Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "valueBase64": "ZmFsc2U=", - }, "esv-frodo-test-variable-1": { "_id": "esv-frodo-test-variable-1", "description": "description1", "expressionType": "string", - "lastChangeDate": "2023-10-24T17:40:50.223Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", + "lastChangeDate": "2024-07-03T04:09:45.503914Z", + "lastChangedBy": "Frodo-SA-1701393386423", "loaded": false, "valueBase64": "dmFsdWUx", }, - "esv-frodo-test-variable-2": { - "_id": "esv-frodo-test-variable-2", - "description": "description2", - "expressionType": "int", - "lastChangeDate": "2023-10-24T17:40:54.286Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", + "esv-frodo-test-variable-14": { + "_id": "esv-frodo-test-variable-14", + "description": "description14", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:49.457874Z", + "lastChangedBy": "Frodo-SA-1701393386423", "loaded": false, - "valueBase64": "NDI=", - }, - "esv-ipv4-cidr-access-rules": { - "_id": "esv-ipv4-cidr-access-rules", - "description": "IPv4 CIDR access rules: -{ - "allow": [ - "address/mask" - ] -}", - "expressionType": "", - "lastChangeDate": "2022-08-25T22:54:28.551Z", - "lastChangedBy": "8efaa5b6-8c98-4489-9b21-ee41f5589ab7", - "loaded": true, - "valueBase64": "eyAgImFsbG93IjogWyAgICAiMTUwLjEyOC4wLjAvMTYiLCAgICAiMTM5LjM1LjAuMC8xNiIsICAgICIxMDEuMjE2LjAuMC8xNiIsICAgICI5OS43Mi4yOC4xODIvMzIiICBdfQ==", + "valueBase64": "dmFsdWUxNA==", }, - "esv-nebuchadnezzar-crew": { - "_id": "esv-nebuchadnezzar-crew", - "description": "The crew of the Nebuchadnezzar hovercraft.", - "expressionType": "array", - "lastChangeDate": "2023-07-18T21:59:58.974Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "valueBase64": "WyJNb3JwaGV1cyIsIlRyaW5pdHkiLCJMaW5rIiwiVGFuayIsIkRvemVyIiwiQXBvYyIsIkN5cGhlciIsIk1vdXNlIiwiTmVvIiwiU3dpdGNoIl0=", - }, - "esv-nebuchadnezzar-crew-structure": { - "_id": "esv-nebuchadnezzar-crew-structure", - "description": "The structure of the crew of the Nebuchadnezzar hovercraft.", - "expressionType": "object", - "lastChangeDate": "2023-07-18T22:09:54.630Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "valueBase64": "eyJDYXB0YWluIjoiTW9ycGhldXMiLCJGaXJzdE1hdGUiOiJUcmluaXR5IiwiT3BlcmF0b3IiOlsiTGluayIsIlRhbmsiXSwiTWVkaWMiOiJEb3plciIsIkNyZXdtZW4iOlsiQXBvYyIsIkN5cGhlciIsIk1vdXNlIiwiTmVvIiwiU3dpdGNoIl19", - }, - "esv-neo-age": { - "_id": "esv-neo-age", - "description": "Neo's age in the matrix.", - "expressionType": "int", - "lastChangeDate": "2023-07-18T22:21:23.578Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "valueBase64": "Mjg=", - }, - "esv-test-var": { - "_id": "esv-test-var", - "description": "this is a test description", - "expressionType": "", - "lastChangeDate": "2022-09-02T04:23:56.075Z", - "lastChangedBy": "8efaa5b6-8c98-4489-9b21-ee41f5589ab7", - "loaded": true, - "valueBase64": "dGhpcyBpcyBhIHRlc3QgdmFyaWFibGU=", + "esv-frodo-test-variable-15": { + "_id": "esv-frodo-test-variable-15", + "description": "description15", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:50.646982Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxNQ==", }, - "esv-test-var-1": { - "_id": "esv-test-var-1", - "description": "test var one", + "esv-frodo-test-variable-18": { + "_id": "esv-frodo-test-variable-18", + "description": "description18", "expressionType": "string", - "lastChangeDate": "2023-08-09T17:42:41.684Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "valueBase64": "dGVzdCB2YXIgMSB2YWx1ZTI=", + "lastChangeDate": "2024-07-03T04:09:52.187861Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxOA==", }, - "esv-test-var-2": { - "_id": "esv-test-var-2", - "description": "A temporary test variable", + "esv-frodo-test-variable-19": { + "_id": "esv-frodo-test-variable-19", + "description": "description19", "expressionType": "string", - "lastChangeDate": "2023-08-02T21:09:01.847Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "valueBase64": "dGVzdHZhbA==", + "lastChangeDate": "2024-07-03T04:09:53.428262Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxOQ==", }, - "esv-test-var-3": { - "_id": "esv-test-var-3", - "description": "This is a test variable", + "esv-frodo-test-variable-2": { + "_id": "esv-frodo-test-variable-2", + "description": "description2", "expressionType": "int", - "lastChangeDate": "2023-10-17T22:22:52.023Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, + "lastChangeDate": "2024-07-03T04:09:46.765137Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, "valueBase64": "NDI=", }, - "esv-test-var-pi": { - "_id": "esv-test-var-pi", - "description": "This is another test variable.", - "expressionType": "number", - "lastChangeDate": "2023-10-17T22:28:44.529Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "valueBase64": "My4xNDE1OTI2", - }, - "esv-test-var-pi-string": { - "_id": "esv-test-var-pi-string", - "description": "This is another test variable.", - "expressionType": "string", - "lastChangeDate": "2023-10-18T22:05:30.300Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "valueBase64": "My4xNDE1OTI2", - }, - "esv-trinity-phone": { - "_id": "esv-trinity-phone", - "description": "In the opening of The Matrix (1999), the phone number Trinity is calling from is traced to (312)-555-0690", - "expressionType": "string", - "lastChangeDate": "2023-07-18T20:33:28.922Z", - "lastChangedBy": "b672336b-41ef-428d-ae4a-e0c082875377", - "loaded": true, - "valueBase64": "KDMxMiktNTU1LTA2OTA=", - }, - "esv-volkerstestvariable1": { - "_id": "esv-volkerstestvariable1", - "description": "variable created for api testing", - "expressionType": "", - "lastChangeDate": "2022-11-30T00:13:52.478Z", - "lastChangedBy": "10ecab02-f357-4522-bc17-dfcc64744064", + "esv-test-variable-light": { + "_id": "esv-test-variable-light", + "description": "Test variable containing the speed of light in meters per second (as an int).", + "expressionType": "int", + "lastChangeDate": "2023-12-14T15:34:13.446903Z", + "lastChangedBy": "phales@trivir.com", "loaded": true, - "valueBase64": "Zm9yIGplc3Q=", + "valueBase64": "Mjk5NzkyNDU4", }, }, } `; + +exports[`VariablesOps importVariable() 1: Import variable4 1`] = ` +{ + "_id": "esv-frodo-test-variable-4", + "description": "description4", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:57.898740932Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWU0", +} +`; + +exports[`VariablesOps importVariable() 2: Import variable5 (decoded) 1`] = ` +{ + "_id": "esv-frodo-test-variable-5", + "description": "description5", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:58.705095993Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWU1", +} +`; + +exports[`VariablesOps importVariable() 3: Import first variable6 1`] = ` +{ + "_id": "esv-frodo-test-variable-6", + "description": "description6", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:59.681529329Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWU2", +} +`; + +exports[`VariablesOps importVariable() 4: Import first variable7 (decoded) 1`] = ` +{ + "_id": "esv-frodo-test-variable-7", + "description": "description7", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:10:00.558993642Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWU3", +} +`; + +exports[`VariablesOps importVariables() 1: Import all variables 1`] = ` +[ + { + "_id": "esv-frodo-test-variable-8", + "description": "description8", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:10:01.605958533Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWU4", + }, + { + "_id": "esv-frodo-test-variable-9", + "description": "description9", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:10:02.520655713Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWU5", + }, +] +`; + +exports[`VariablesOps importVariables() 2: Import all variables (decoded) 1`] = ` +[ + { + "_id": "esv-frodo-test-variable-10", + "description": "description10", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:10:03.580024352Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxMA==", + }, + { + "_id": "esv-frodo-test-variable-11", + "description": "description11", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:10:04.583252701Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxMQ==", + }, +] +`; + +exports[`VariablesOps readVariable() 1: Read variable1 1`] = ` +{ + "_id": "esv-frodo-test-variable-1", + "description": "description1", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:45.503914Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value1", +} +`; + +exports[`VariablesOps readVariable() 2: Read variable2 without decoding 1`] = ` +{ + "_id": "esv-frodo-test-variable-2", + "description": "description2", + "expressionType": "int", + "lastChangeDate": "2024-07-03T04:09:46.765137Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "NDI=", +} +`; + +exports[`VariablesOps readVariable() 3: Read variable3 (non-existent) 1`] = ` +"Error reading variable esv-frodo-test-variable-3 + HTTP client error + Code: ERR_BAD_REQUEST + Status: 404 + Message: The variable does not exist" +`; + +exports[`VariablesOps readVariables() 1: Read all variables 1`] = ` +[ + { + "_id": "esv-frodo-test-variable-1", + "description": "description1", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:45.503914Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value1", + }, + { + "_id": "esv-frodo-test-variable-14", + "description": "description14", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:49.457874Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value14", + }, + { + "_id": "esv-frodo-test-variable-15", + "description": "description15", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:50.646982Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value15", + }, + { + "_id": "esv-frodo-test-variable-18", + "description": "description18", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:52.187861Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value18", + }, + { + "_id": "esv-frodo-test-variable-19", + "description": "description19", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:53.428262Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "value19", + }, + { + "_id": "esv-frodo-test-variable-2", + "description": "description2", + "expressionType": "int", + "lastChangeDate": "2024-07-03T04:09:46.765137Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "value": "42", + }, + { + "_id": "esv-test-variable-light", + "description": "Test variable containing the speed of light in meters per second (as an int).", + "expressionType": "int", + "lastChangeDate": "2023-12-14T15:34:13.446903Z", + "lastChangedBy": "phales@trivir.com", + "loaded": true, + "value": "299792458", + }, +] +`; + +exports[`VariablesOps readVariables() 2: Read all variables without decoding 1`] = ` +[ + { + "_id": "esv-frodo-test-variable-1", + "description": "description1", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:45.503914Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUx", + }, + { + "_id": "esv-frodo-test-variable-14", + "description": "description14", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:49.457874Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxNA==", + }, + { + "_id": "esv-frodo-test-variable-15", + "description": "description15", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:50.646982Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxNQ==", + }, + { + "_id": "esv-frodo-test-variable-18", + "description": "description18", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:52.187861Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxOA==", + }, + { + "_id": "esv-frodo-test-variable-19", + "description": "description19", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:53.428262Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxOQ==", + }, + { + "_id": "esv-frodo-test-variable-2", + "description": "description2", + "expressionType": "int", + "lastChangeDate": "2024-07-03T04:09:46.765137Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "NDI=", + }, + { + "_id": "esv-test-variable-light", + "description": "Test variable containing the speed of light in meters per second (as an int).", + "expressionType": "int", + "lastChangeDate": "2023-12-14T15:34:13.446903Z", + "lastChangedBy": "phales@trivir.com", + "loaded": true, + "valueBase64": "Mjk5NzkyNDU4", + }, +] +`; + +exports[`VariablesOps updateVariable() 1: Update existing variable14 (pre-encoded) 1`] = ` +{ + "_id": "esv-frodo-test-variable-14", + "description": "description14", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:49.457874Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxNA==", +} +`; + +exports[`VariablesOps updateVariable() 2: Update existing variable15 (not encoded) 1`] = ` +{ + "_id": "esv-frodo-test-variable-15", + "description": "description15", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:09:50.646982Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxNQ==", +} +`; + +exports[`VariablesOps updateVariable() 3: Update/create non-existing variable16 (pre-encoded) 1`] = ` +{ + "_id": "esv-frodo-test-variable-16", + "description": "description16", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:10:09.402716019Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxNg==", +} +`; + +exports[`VariablesOps updateVariable() 4: Update/create non-existing variable17 (not encoded) 1`] = ` +{ + "_id": "esv-frodo-test-variable-17", + "description": "description17", + "expressionType": "string", + "lastChangeDate": "2024-07-03T04:10:10.447749339Z", + "lastChangedBy": "Frodo-SA-1701393386423", + "loaded": false, + "valueBase64": "dmFsdWUxNw==", +} +`; + +exports[`VariablesOps updateVariableDescription() 1: Update variable18 description 1`] = `""`;