diff --git a/jest.config.typescript.js b/jest.config.typescript.js index 66f4236e7e..fde50e3d5e 100644 --- a/jest.config.typescript.js +++ b/jest.config.typescript.js @@ -2,186 +2,186 @@ // https://jestjs.io/docs/en/configuration.html module.exports = { - // All imported modules in your tests should be mocked automatically - // automock: false, + // All imported modules in your tests should be mocked automatically + // automock: false, - // Stop running tests after `n` failures - bail: 1, + // Stop running tests after `n` failures + bail: 1, - // Respect "browser" field in package.json when resolving modules - // browser: false, + // Respect "browser" field in package.json when resolving modules + // browser: false, - // The directory where Jest should store its cached dependency information - // cacheDirectory: "/private/var/folders/bj/xt4sffgd21z57fxhvqrd30_80000gn/T/jest_dx", + // The directory where Jest should store its cached dependency information + // cacheDirectory: "/private/var/folders/bj/xt4sffgd21z57fxhvqrd30_80000gn/T/jest_dx", - // Automatically clear mock calls and instances between every test - // clearMocks: false, + // Automatically clear mock calls and instances between every test + // clearMocks: false, - // Indicates whether the coverage information should be collected while executing the test - collectCoverage: false, + // Indicates whether the coverage information should be collected while executing the test + collectCoverage: false, - // An array of glob patterns indicating a set of files for which coverage information should be collected - // collectCoverageFrom: null, + // An array of glob patterns indicating a set of files for which coverage information should be collected + // collectCoverageFrom: null, - // The directory where Jest should output its coverage files - coverageDirectory: 'reports/ts-coverage', + // The directory where Jest should output its coverage files + coverageDirectory: 'reports/ts-coverage', - // An array of regexp pattern strings used to skip coverage collection - coveragePathIgnorePatterns: ['/node_modules/', '__tests__'], + // An array of regexp pattern strings used to skip coverage collection + coveragePathIgnorePatterns: ['/node_modules/', '__tests__'], - // A list of reporter names that Jest uses when writing coverage reports - coverageReporters: ['json', 'text', 'lcov', 'clover'], + // A list of reporter names that Jest uses when writing coverage reports + coverageReporters: ['json', 'text', 'lcov', 'clover'], - // An object that configures minimum threshold enforcement for coverage results - coverageThreshold: { - global: { - branches: 30, - functions: 40, - lines: 50, - statements: 50, - }, + // An object that configures minimum threshold enforcement for coverage results + coverageThreshold: { + global: { + branches: 30, + functions: 40, + lines: 50, + statements: 50, }, + }, - // A path to a custom dependency extractor - // dependencyExtractor: null, + // A path to a custom dependency extractor + // dependencyExtractor: null, - // Make calling deprecated APIs throw helpful error messages - errorOnDeprecated: true, + // Make calling deprecated APIs throw helpful error messages + errorOnDeprecated: true, - // Force coverage collection from ignored files using an array of glob patterns - // forceCoverageMatch: [], + // Force coverage collection from ignored files using an array of glob patterns + // forceCoverageMatch: [], - // A path to a module which exports an async function that is triggered once before all test suites - // globalSetup: null, + // A path to a module which exports an async function that is triggered once before all test suites + // globalSetup: null, - // A path to a module which exports an async function that is triggered once after all test suites - // globalTeardown: null, + // A path to a module which exports an async function that is triggered once after all test suites + // globalTeardown: null, - // A set of global variables that need to be available in all test environments - // globals: { - // 'ts-jest': { - // tsConfigFile: 'tsconfig.json', - // diagnostics: true - // }, - // }, + // A set of global variables that need to be available in all test environments + // globals: { + // 'ts-jest': { + // tsConfigFile: 'tsconfig.json', + // diagnostics: true + // }, + // }, - // The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers. - // maxWorkers: "50%", + // The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers. + // maxWorkers: "50%", - // An array of directory names to be searched recursively up from the requiring module's location - moduleDirectories: ['node_modules'], + // An array of directory names to be searched recursively up from the requiring module's location + moduleDirectories: ['node_modules'], - // An array of file extensions your modules use - moduleFileExtensions: ['js', 'json', 'ts', 'node'], + // An array of file extensions your modules use + moduleFileExtensions: ['js', 'json', 'ts', 'node'], - // A map from regular expressions to module names that allow to stub out resources with a single module - // moduleNameMapper: {}, + // A map from regular expressions to module names that allow to stub out resources with a single module + // moduleNameMapper: {}, - // An array of regexp pattern strings, matched against all module paths before considered 'visible' to the module loader - // modulePathIgnorePatterns: [], + // An array of regexp pattern strings, matched against all module paths before considered 'visible' to the module loader + modulePathIgnorePatterns: ['/test/__mocks__/axios.js'], - // Activates notifications for test results - notify: true, + // Activates notifications for test results + notify: true, - // An enum that specifies notification mode. Requires { notify: true } - notifyMode: 'failure-change', + // An enum that specifies notification mode. Requires { notify: true } + notifyMode: 'failure-change', - // A preset that is used as a base for Jest's configuration - preset: 'ts-jest', + // A preset that is used as a base for Jest's configuration + preset: 'ts-jest', - // Run tests from one or more projects - // projects: null, + // Run tests from one or more projects + // projects: null, - // Use this configuration option to add custom reporters to Jest - // reporters: undefined, + // Use this configuration option to add custom reporters to Jest + // reporters: undefined, - // Automatically reset mock state between every test - // resetMocks: false, + // Automatically reset mock state between every test + // resetMocks: false, - // Reset the module registry before running each individual test - // resetModules: false, + // Reset the module registry before running each individual test + // resetModules: false, - // A path to a custom resolver - // resolver: null, + // A path to a custom resolver + // resolver: null, - // Automatically restore mock state between every test - // restoreMocks: false, + // Automatically restore mock state between every test + // restoreMocks: false, - // The root directory that Jest should scan for tests and modules within - // rootDir: null, + // The root directory that Jest should scan for tests and modules within + // rootDir: null, - // A list of paths to directories that Jest should use to search for files in - // roots: [ - // "" - // ], + // A list of paths to directories that Jest should use to search for files in + // roots: [ + // "" + // ], - // Allows you to use a custom runner instead of Jest's default test runner - // runner: "jest-runner", + // Allows you to use a custom runner instead of Jest's default test runner + // runner: "jest-runner", - // The paths to modules that run some code to configure or set up the testing environment before each test - // setupFiles: [], + // The paths to modules that run some code to configure or set up the testing environment before each test + // setupFiles: [], - // A list of paths to modules that run some code to configure or set up the testing framework before each test - // setupFilesAfterEnv: [], + // A list of paths to modules that run some code to configure or set up the testing framework before each test + // setupFilesAfterEnv: [], - // A list of paths to snapshot serializer modules Jest should use for snapshot testing - // snapshotSerializers: [], + // A list of paths to snapshot serializer modules Jest should use for snapshot testing + // snapshotSerializers: [], - // The test environment that will be used for testing - testEnvironment: 'node', + // The test environment that will be used for testing + testEnvironment: 'node', - // Options that will be passed to the testEnvironment - // testEnvironmentOptions: {}, + // Options that will be passed to the testEnvironment + // testEnvironmentOptions: {}, - // Adds a location field to test results - // testLocationInResults: false, + // Adds a location field to test results + // testLocationInResults: false, - // The glob patterns Jest uses to detect test files - testMatch: ['**/*.(test).ts?(x)'], + // The glob patterns Jest uses to detect test files + testMatch: ['**/*.(test).ts?(x)'], - // An array of regexp pattern strings that are matched against all test paths, matched tests are skipped - testPathIgnorePatterns: ['/node_modules/'], + // An array of regexp pattern strings that are matched against all test paths, matched tests are skipped + testPathIgnorePatterns: ['/node_modules/'], - // The regexp pattern or array of patterns that Jest uses to detect test files - // testRegex: [], + // The regexp pattern or array of patterns that Jest uses to detect test files + // testRegex: [], - // This option allows the use of a custom results processor - // testResultsProcessor: null, + // This option allows the use of a custom results processor + // testResultsProcessor: null, - // This option allows use of a custom test runner - // testRunner: "jasmine2", + // This option allows use of a custom test runner + // testRunner: "jasmine2", - // This option sets the URL for the jsdom environment. It is reflected in properties such as location.href - // testURL: "http://localhost", + // This option sets the URL for the jsdom environment. It is reflected in properties such as location.href + // testURL: "http://localhost", - // Setting this value to "fake" allows the use of fake timers for functions such as "setTimeout" - // timers: "real", + // Setting this value to "fake" allows the use of fake timers for functions such as "setTimeout" + // timers: "real", - // A map from regular expressions to paths to transformers - transform: { - '^.+\\.tsx?$': [ - 'ts-jest', - { - tsconfig: 'tsconfig.json', - diagnostics: true, - }, - ], - }, + // A map from regular expressions to paths to transformers + transform: { + '^.+\\.tsx?$': [ + 'ts-jest', + { + tsconfig: 'tsconfig.json', + diagnostics: true, + }, + ], + }, - // An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation - // transformIgnorePatterns: [ - // "/node_modules/" - // ], + // An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation + // transformIgnorePatterns: [ + // "/node_modules/" + // ], - // An array of regexp pattern strings that are matched against all modules before the module loader will automatically return a mock for them - // unmockedModulePathPatterns: undefined, + // An array of regexp pattern strings that are matched against all modules before the module loader will automatically return a mock for them + // unmockedModulePathPatterns: undefined, - // Indicates whether each individual test should be reported during the run - // verbose: null, + // Indicates whether each individual test should be reported during the run + // verbose: null, - // An array of regexp patterns that are matched against all source file paths before re-running tests in watch mode - // watchPathIgnorePatterns: [], + // An array of regexp patterns that are matched against all source file paths before re-running tests in watch mode + // watchPathIgnorePatterns: [], - // Whether to use watchman for file crawling - // watchman: true, + // Whether to use watchman for file crawling + // watchman: true, }; diff --git a/package-lock.json b/package-lock.json index d1334cb0f6..0ebcb14c71 100644 --- a/package-lock.json +++ b/package-lock.json @@ -73,6 +73,7 @@ "devDependencies": { "@commitlint/config-conventional": "^17.6.3", "@digitalroute/cz-conventional-changelog-for-jira": "^8.0.1", + "@types/fast-json-stable-stringify": "^2.1.0", "@types/jest": "^29.5.1", "@types/koa": "^2.13.6", "@types/koa-bodyparser": "^4.3.10", @@ -80,6 +81,7 @@ "@types/node": "^20.2.5", "@typescript-eslint/eslint-plugin": "^5.61.0", "@typescript-eslint/parser": "^5.59.2", + "axios-mock-adapter": "^1.22.0", "benchmark-suite": "^0.1.8", "commander": "^10.0.1", "commitizen": "^4.3.0", @@ -7335,6 +7337,16 @@ "@types/send": "*" } }, + "node_modules/@types/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-IyNhGHu71jH1jCXTHmafuoAAdsbBON3kDh7u/UUhLmjYgN5TYB54e1R8ckTCiIevl2UuZaCsi9XRxineY5yUjw==", + "deprecated": "This is a stub types definition. fast-json-stable-stringify provides its own type definitions, so you do not need this installed.", + "dev": true, + "dependencies": { + "fast-json-stable-stringify": "*" + } + }, "node_modules/@types/graceful-fs": { "version": "4.1.6", "dev": true, @@ -8213,6 +8225,42 @@ "proxy-from-env": "^1.1.0" } }, + "node_modules/axios-mock-adapter": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/axios-mock-adapter/-/axios-mock-adapter-1.22.0.tgz", + "integrity": "sha512-dmI0KbkyAhntUR05YY96qg2H6gg0XMl2+qTW0xmYg6Up+BFBAJYRLROMXRdDEL06/Wqwa0TJThAYvFtSFdRCZw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "is-buffer": "^2.0.5" + }, + "peerDependencies": { + "axios": ">= 0.17.0" + } + }, + "node_modules/axios-mock-adapter/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, "node_modules/babel-jest": { "version": "29.6.0", "dev": true, diff --git a/package.json b/package.json index 37db654c9b..ed08c7a7cd 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "test:js:silent": "npm run test:js -- --silent", "test:js:ci": "npm run test:js -- --coverage --expand --maxWorkers=50%", "test:ts": "jest -c jest.config.typescript.js --detectOpenHandles", + "test:ts:component:generateNwMocks": "npm run test:ts -- component --generate=true", "test:ts:silent": "npm run test:ts -- --silent", "test:ts:ci": "npm run test:ts -- --coverage --expand --maxWorkers=50%", "test:ut:integration": "jest \"user_transformation.integration.test.js\" --detectOpenHandles --notify", @@ -113,6 +114,7 @@ "devDependencies": { "@commitlint/config-conventional": "^17.6.3", "@digitalroute/cz-conventional-changelog-for-jira": "^8.0.1", + "@types/fast-json-stable-stringify": "^2.1.0", "@types/jest": "^29.5.1", "@types/koa": "^2.13.6", "@types/koa-bodyparser": "^4.3.10", @@ -120,6 +122,7 @@ "@types/node": "^20.2.5", "@typescript-eslint/eslint-plugin": "^5.61.0", "@typescript-eslint/parser": "^5.59.2", + "axios-mock-adapter": "^1.22.0", "benchmark-suite": "^0.1.8", "commander": "^10.0.1", "commitizen": "^4.3.0", diff --git a/src/adapters/network.js b/src/adapters/network.js index 78552048f0..5ee62029a3 100644 --- a/src/adapters/network.js +++ b/src/adapters/network.js @@ -9,6 +9,8 @@ const log = require('../logger'); const stats = require('../util/stats'); const { removeUndefinedValues } = require('../v0/util'); const { processAxiosResponse } = require('./utils/networkUtils'); +// Only for tests +const { setResponsesForMockAxiosAdapter } = require('../../test/testHelper'); const MAX_CONTENT_LENGTH = parseInt(process.env.MAX_CONTENT_LENGTH, 10) || 100000000; const MAX_BODY_LENGTH = parseInt(process.env.MAX_BODY_LENGTH, 10) || 100000000; @@ -84,6 +86,7 @@ const httpSend = async (options, statTags = {}) => { const requestOptions = enhanceRequestOptions(options); const startTime = new Date(); + const { url, data, method } = requestOptions; try { const response = await axios(requestOptions); clientResponse = { success: true, response }; @@ -92,6 +95,8 @@ const httpSend = async (options, statTags = {}) => { } finally { fireHTTPStats(clientResponse, startTime, statTags); } + + setResponsesForMockAxiosAdapter({ url, data, method, options }, clientResponse); return clientResponse; }; @@ -117,6 +122,7 @@ const httpGET = async (url, options, statTags = {}) => { } finally { fireHTTPStats(clientResponse, startTime, statTags); } + setResponsesForMockAxiosAdapter({ url, options, method: 'GET' }, clientResponse); return clientResponse; }; @@ -142,6 +148,7 @@ const httpDELETE = async (url, options, statTags = {}) => { } finally { fireHTTPStats(clientResponse, startTime, statTags); } + setResponsesForMockAxiosAdapter({ url, options, method: 'DELETE' }, clientResponse); return clientResponse; }; @@ -168,6 +175,7 @@ const httpPOST = async (url, data, options, statTags = {}) => { } finally { fireHTTPStats(clientResponse, startTime, statTags); } + setResponsesForMockAxiosAdapter({ url, data, options, method: 'POST' }, clientResponse); return clientResponse; }; @@ -194,6 +202,7 @@ const httpPUT = async (url, data, options, statTags = {}) => { } finally { fireHTTPStats(clientResponse, startTime, statTags); } + setResponsesForMockAxiosAdapter({ url, data, options, method: 'PUT' }, clientResponse); return clientResponse; }; @@ -220,6 +229,7 @@ const httpPATCH = async (url, data, options, statTags = {}) => { } finally { fireHTTPStats(clientResponse, startTime, statTags); } + setResponsesForMockAxiosAdapter({ url, data, options, method: 'PATCH' }, clientResponse); return clientResponse; }; @@ -388,4 +398,5 @@ module.exports = { getPayloadData, getFormData, handleHttpRequest, + enhanceRequestOptions, }; diff --git a/src/v0/destinations/canny/util.js b/src/v0/destinations/canny/util.js index 9666f143df..002d9aa69f 100644 --- a/src/v0/destinations/canny/util.js +++ b/src/v0/destinations/canny/util.js @@ -25,7 +25,7 @@ const retrieveUserId = async (apiKey, message) => { message.traits?.email || message.context?.traits?.email || message.properties?.email; const { userId } = message; - const header = { + const headers = { 'Content-Type': 'application/x-www-form-urlencoded', Accept: JSON_MIME_TYPE, }; @@ -38,10 +38,15 @@ const retrieveUserId = async (apiKey, message) => { } else { requestBody.userID = `${userId}`; } - const response = await httpPOST(url, qs.stringify(requestBody), header, { - destType: 'canny', - feature: 'transformation', - }); + const response = await httpPOST( + url, + qs.stringify(requestBody), + { headers }, + { + destType: 'canny', + feature: 'transformation', + }, + ); logger.debug(response); // If the request fails, throwing error. if (response.success === false) { diff --git a/src/v0/destinations/mssql/transform.test.js b/src/v0/destinations/mssql/transform.test.js new file mode 100644 index 0000000000..0892651b21 --- /dev/null +++ b/src/v0/destinations/mssql/transform.test.js @@ -0,0 +1,48 @@ +const { getDataType } = require('../../../../src/warehouse/index'); +const { getDataTypeOverride } = require('./transform'); + +const testCases = [ + { + name: 'normalInt', + data: 1, + type: 'int', + }, + { + name: 'normalFloat', + data: 2.01, + type: 'float', + }, + { + name: 'normalBoolean', + data: true, + type: 'boolean', + }, + { + name: 'normalString', + data: 'mssql transformation[*007}', + type: 'string', + }, + { + name: 'violationErrors', + data: [ + { + message: + 'no schema for eventName : Product Purchased new, eventType : track in trackingPlanID : tp_20dfXJDpotQWHe7hMxfQfgWMZDv::1', + meta: {}, + type: 'Unplanned-Event', + }, + ], + type: 'string', + }, +]; + +describe('MSSQL data types testing', () => { + const options = {}; + options.getDataTypeOverride = getDataTypeOverride; + testCases.forEach((testCase) => { + it(`should return data type ${testCase.type} for this input data ${testCase.data} everytime`, () => { + const dataType = getDataType(testCase.name, testCase.data, options); + expect(dataType).toEqual(testCase.type); + }); + }); +}); diff --git a/src/v0/destinations/postgres/transform.test.js b/src/v0/destinations/postgres/transform.test.js new file mode 100644 index 0000000000..9256d5bcde --- /dev/null +++ b/src/v0/destinations/postgres/transform.test.js @@ -0,0 +1,48 @@ +const { getDataType } = require('../../../../src/warehouse/index'); +const { getDataTypeOverride } = require('./transform'); + +const testCases = [ + { + name: 'normalInt', + data: 1, + type: 'int', + }, + { + name: 'normalFloat', + data: 2.01, + type: 'float', + }, + { + name: 'normalBoolean', + data: true, + type: 'boolean', + }, + { + name: 'normalString', + data: 'postgres transformation[*007}', + type: 'string', + }, + { + name: 'violationErrors', + data: [ + { + message: + 'no schema for eventName : Product Purchased new, eventType : track in trackingPlanID : tp_20dfXJDpotQWHe7hMxfQfgWMZDv::1', + meta: {}, + type: 'Unplanned-Event', + }, + ], + type: 'json', + }, +]; + +describe('Postgres data types testing', () => { + const options = {}; + options.getDataTypeOverride = getDataTypeOverride; + testCases.forEach((testCase) => { + it(`should return data type ${testCase.type} for this input data ${testCase.data} everytime`, () => { + const dataType = getDataType(testCase.name, testCase.data, options); + expect(dataType).toEqual(testCase.type); + }); + }); +}); diff --git a/src/v0/destinations/yahoo_dsp/util.js b/src/v0/destinations/yahoo_dsp/util.js index f47717df51..a069660bde 100644 --- a/src/v0/destinations/yahoo_dsp/util.js +++ b/src/v0/destinations/yahoo_dsp/util.js @@ -1,7 +1,7 @@ const qs = require('qs'); const sha256 = require('sha256'); const { generateJWTToken } = require('../../../util/jwtTokenGenerator'); -const { httpPOST } = require('../../../adapters/network'); +const { httpSend } = require('../../../adapters/network'); const { isDefinedAndNotNullAndNotEmpty } = require('../../util'); const { getDynamicErrorType } = require('../../../adapters/utils/networkUtils'); const { ACCESS_TOKEN_CACHE_TTL, AUDIENCE_ATTRIBUTE, DSP_SUPPORTED_OPERATION } = require('./config'); @@ -119,7 +119,7 @@ const getAccessToken = async (destination) => { }; const request = { - header: { + headers: { 'Content-Type': 'application/x-www-form-urlencoded', Accept: JSON_MIME_TYPE, }, @@ -134,7 +134,7 @@ const getAccessToken = async (destination) => { }), method: 'POST', }; - const dspAuthorisationData = await httpPOST(request.url, request.data, request.header, { + const dspAuthorisationData = await httpSend(request, { destType: 'yahoo_dsp', feature: 'transformation', }); diff --git a/test/__mocks__/axios.js b/test/__mocks__/axios.js index dc3005d909..6a3139c4e9 100644 --- a/test/__mocks__/axios.js +++ b/test/__mocks__/axios.js @@ -40,7 +40,6 @@ const { sendgridGetRequestHandler } = require("./sendgrid.mock"); const { sendinblueGetRequestHandler } = require("./sendinblue.mock"); const { courierGetRequestHandler } = require("./courier.mock"); const { brazePostRequestHandler } = require("./braze.mock"); -const {optimizelyFullStackGetRequestHandler} = require("./optimizely_fullstack.mock"); const urlDirectoryMap = { "api.hubapi.com": "hs", @@ -55,7 +54,6 @@ const urlDirectoryMap = { "api.sendinblue.com": "sendinblue", "api.criteo.com": "criteo_audience", "api.courier.com": "courier", - "cdn.optimizely.com": "optimizely_fullstack", }; const fs = require("fs"); diff --git a/test/__mocks__/data/optimizely_fullstack/response.json b/test/__mocks__/data/optimizely_fullstack/response.json deleted file mode 100644 index e83dd8197f..0000000000 --- a/test/__mocks__/data/optimizely_fullstack/response.json +++ /dev/null @@ -1,180 +0,0 @@ -{ - "https://cdn.optimizely.com/datafiles/abc.json": { - "accountId": "test_account_id", - "projectId": "test_project_id", - "revision": "45", - "attributes": [ - { - "id": "test_attribute_id_1", - "key": "gender" - }, - { - "id": "test_attribute_id_2", - "key": "name" - }, - { - "id": "test_attribute_id_3", - "key": "userId" - }, - { - "id": "test_attribute_id_4", - "key": "anonymousId" - }, - { - "id": "test_attribute_id_5", - "key": "company" - } - ], - "audiences": [ - { - "id": "$opt_test_audience", - "name": "Optimizely-Generated Audience for Backwards Compatibility", - "conditions": "[\"or\", {\"match\": \"exact\", \"name\": \"$opt_test_attribute\", \"type\": \"custom_attribute\", \"value\": \"$opt_test_value\"}]" - } - ], - "version": "4", - "events": [ - { - "id": "test_event_id_1", - "experimentIds": ["test_experiment_id"], - "key": "Product Added" - }, - { - "id": "test_event_id_2", - "experimentIds": ["test_experiment_id"], - "key": "Product Removed" - }, - { - "id": "test_event_id_3", - "experimentIds": ["test_experiment_id"], - "key": "Order Placed" - }, - { - "id": "test_event_id_4", - "experimentIds": ["test_experiment_id"], - "key": "Viewed Meal page" - }, - { - "id": "test_event_id_5", - "experimentIds": ["test_experiment_id"], - "key": "Viewed food page" - }, - { - "id": "test_event_id_6", - "experimentIds": ["test_experiment_id"], - "key": "Viewed Main screen" - }, - { - "id": "test_event_id_7", - "experimentIds": ["test_experiment_id"], - "key": "Home" - }, - { - "id": "test_event_id_8", - "experimentIds": ["test_experiment_id"], - "key": "Index" - } - ], - "anonymizeIP": true, - "botFiltering": false, - "typedAudiences": [], - "variables": [], - "environmentKey": "production", - "sdkKey": "test_sdk_key", - "featureFlags": [ - { - "id": "test_feature_flag_id", - "key": "testfeature", - "experimentIds": ["test_experiment_id"], - "rolloutId": "test_rollout_id", - "variables": [ - { - "id": "test_variable_id", - "key": "sort_method", - "type": "string", - "defaultValue": "alphabetical" - } - ] - } - ], - "rollouts": [ - { - "id": "test_rollout_id", - "experiments": [ - { - "forcedVariations": {}, - "id": "test_experiment_id", - "key": "test_experiment_key", - "status": "Running", - "trafficAllocation": [ - { - "entityId": "test_variation_id", - "endOfRange": 10000 - } - ], - "variations": [ - { - "id": "test_variation_id", - "key": "test_variation_key", - "variables": [ - { - "id": "test_variable_id", - "value": "alphabetical" - } - ], - "featureEnabled": true - } - ], - "layerId": "test_layer_id", - "audienceIds": [] - } - ] - } - ], - "experiments": [ - { - "forcedVariations": {}, - "id": "test_experiment_id", - "key": "test_experiment_key", - "status": "Running", - "trafficAllocation": [ - { - "entityId": "test_variation_id_1", - "endOfRange": 5000 - }, - { - "entityId": "test_variation_id_2", - "endOfRange": 10000 - } - ], - "variations": [ - { - "id": "test_variation_id_1", - "key": "variation_1", - "variables": [ - { - "id": "test_variable_id", - "value": "popular_first" - } - ], - "featureEnabled": true - }, - { - "id": "test_variation_id_2", - "key": "variation_2", - "variables": [ - { - "id": "test_variable_id", - "value": "popular_first" - } - ], - "featureEnabled": true - } - ], - "layerId": "test_layer_id", - "audienceIds": [] - } - ], - "groups": [] - } -} diff --git a/test/__mocks__/data/pardot/proxy_response.json b/test/__mocks__/data/pardot/proxy_response.json deleted file mode 100644 index 53cf0d1255..0000000000 --- a/test/__mocks__/data/pardot/proxy_response.json +++ /dev/null @@ -1,352 +0,0 @@ -{ - "https://pi.pardot.com/api/prospect/version/4/do/upsert/id/123435": { - "data": { - "@attributes": { - "stat": "ok", - "version": 1 - }, - "prospect": { - "id": 123435, - "campaign_id": 42213, - "salutation": null, - "first_name": "Roger12", - "last_name": "Federer12", - "email": "Roger12@waltair.io", - "password": null, - "company": null, - "website": "https://rudderstack.com", - "job_title": null, - "department": null, - "country": "AU", - "address_one": null, - "address_two": null, - "city": null, - "state": null, - "territory": null, - "zip": null, - "phone": null, - "fax": null, - "source": null, - "annual_revenue": null, - "employees": null, - "industry": null, - "years_in_business": null, - "comments": null, - "notes": null, - "score": 14, - "grade": null, - "last_activity_at": null, - "recent_interaction": "Never active.", - "crm_lead_fid": null, - "crm_contact_fid": null, - "crm_owner_fid": "00G2v000004WYXaEAO", - "crm_account_fid": null, - "salesforce_fid": null, - "crm_last_sync": null, - "crm_url": null, - "is_do_not_email": null, - "is_do_not_call": null, - "opted_out": null, - "is_reviewed": 1, - "is_starred": null, - "created_at": "2022-01-21 18:21:46", - "updated_at": "2022-01-21 18:48:41", - "campaign": { - "id": 42113, - "name": "Test", - "crm_fid": "7012y000000MNOCLL4" - }, - "assigned_to": { - "user": { - "id": 38443703, - "email": "test_rudderstack@testcompany.com", - "first_name": "Rudderstack", - "last_name": "User", - "job_title": null, - "role": "Administrator", - "account": 489853, - "created_at": "2021-02-26 06:25:17", - "updated_at": "2021-02-26 06:25:17" - } - }, - "Are_you_shipping_large_fragile_or_bulky_items": false, - "Calendly": false, - "Country_Code": "AU", - "Currency": "AUD", - "Inventory_or_Warehouse_Management_System": false, - "Lead_Status": "New", - "Marketing_Stage": "SAL", - "Record_Type_ID": "TestCompany Lead", - "profile": { - "id": 304, - "name": "Default", - "profile_criteria": [ - { - "id": 1500, - "name": "Shipping Volume", - "matches": "Unknown" - }, - { - "id": 1502, - "name": "Industry", - "matches": "Unknown" - }, - { - "id": 1506, - "name": "Job Title", - "matches": "Unknown" - }, - { - "id": 1508, - "name": "Department", - "matches": "Unknown" - } - ] - }, - "visitors": null, - "visitor_activities": null, - "lists": null - } - }, - "status": 200, - "statusText": "OK" - }, - "https://pi.pardot.com/api/prospect/version/4/do/upsert/email/Roger_12@waltair.io": { - "data": { - "@attributes": { - "stat": "ok", - "version": 1 - }, - "prospect": { - "id": 123435, - "campaign_id": 42213, - "salutation": null, - "first_name": "Roger_12", - "last_name": "Federer_12", - "email": "Roger_12@waltair.io", - "password": null, - "company": null, - "website": "https://rudderstack.com", - "job_title": null, - "department": null, - "country": "AU", - "address_one": null, - "address_two": null, - "city": null, - "state": null, - "territory": null, - "zip": null, - "phone": null, - "fax": null, - "source": null, - "annual_revenue": null, - "employees": null, - "industry": null, - "years_in_business": null, - "comments": null, - "notes": null, - "score": 14, - "grade": null, - "last_activity_at": null, - "recent_interaction": "Never active.", - "crm_lead_fid": null, - "crm_contact_fid": null, - "crm_owner_fid": "00G2v000004WYXaEAO", - "crm_account_fid": null, - "salesforce_fid": null, - "crm_last_sync": null, - "crm_url": null, - "is_do_not_email": null, - "is_do_not_call": null, - "opted_out": null, - "is_reviewed": 1, - "is_starred": null, - "created_at": "2022-01-21 18:21:46", - "updated_at": "2022-01-21 18:48:41", - "campaign": { - "id": 42113, - "name": "Test", - "crm_fid": "7012y000000MNOCLL4" - }, - "assigned_to": { - "user": { - "id": 38443703, - "email": "test_rudderstack@testcompany.com", - "first_name": "Rudderstack", - "last_name": "User", - "job_title": null, - "role": "Administrator", - "account": 489853, - "created_at": "2021-02-26 06:25:17", - "updated_at": "2021-02-26 06:25:17" - } - }, - "Are_you_shipping_large_fragile_or_bulky_items": false, - "Calendly": false, - "Country_Code": "AU", - "Currency": "AUD", - "Inventory_or_Warehouse_Management_System": false, - "Lead_Status": "New", - "Marketing_Stage": "SAL", - "Record_Type_ID": "TestCompany Lead", - "profile": { - "id": 304, - "name": "Default", - "profile_criteria": [ - { - "id": 1500, - "name": "Shipping Volume", - "matches": "Unknown" - }, - { - "id": 1502, - "name": "Industry", - "matches": "Unknown" - }, - { - "id": 1506, - "name": "Job Title", - "matches": "Unknown" - }, - { - "id": 1508, - "name": "Department", - "matches": "Unknown" - } - ] - }, - "visitors": null, - "visitor_activities": null, - "lists": null - } - }, - "status": 201, - "statusText": "Created" - }, - "https://pi.pardot.com/api/prospect/version/4/do/upsert/fid/00Q6r000002LKhTPVR": { - "data": { - "@attributes": { - "stat": "ok", - "version": 1 - }, - "prospect": { - "id": 123435, - "campaign_id": 42213, - "salutation": null, - "first_name": "Roger_12", - "last_name": "Federer_12", - "email": "Roger_12@federer.io", - "password": null, - "company": null, - "website": "https://rudderstack.com", - "job_title": null, - "department": null, - "country": "AU", - "address_one": null, - "address_two": null, - "city": null, - "state": null, - "territory": null, - "zip": null, - "phone": null, - "fax": null, - "source": null, - "annual_revenue": null, - "employees": null, - "industry": null, - "years_in_business": null, - "comments": null, - "notes": null, - "score": 14, - "grade": null, - "last_activity_at": null, - "recent_interaction": "Never active.", - "crm_lead_fid": "00Q6r000002LKhTPVR", - "crm_contact_fid": null, - "crm_owner_fid": "00G2v000004WYXaEAO", - "crm_account_fid": null, - "salesforce_fid": "00Q6r000002LKhTPVR", - "crm_last_sync": "2022-01-21 18:47:37", - "crm_url": "https://testcompany.my.salesforce.com/00Q6r000002LKhTPVR", - "is_do_not_email": null, - "is_do_not_call": null, - "opted_out": null, - "is_reviewed": 1, - "is_starred": null, - "created_at": "2022-01-21 18:21:46", - "updated_at": "2022-01-21 18:48:41", - "campaign": { - "id": 42113, - "name": "Test", - "crm_fid": "7012y000000MNOCLL4" - }, - "assigned_to": { - "user": { - "id": 38443703, - "email": "test_rudderstack@testcompany.com", - "first_name": "Rudderstack", - "last_name": "User", - "job_title": null, - "role": "Administrator", - "account": 489853, - "created_at": "2021-02-26 06:25:17", - "updated_at": "2021-02-26 06:25:17" - } - }, - "Are_you_shipping_large_fragile_or_bulky_items": false, - "Calendly": false, - "Country_Code": "AU", - "Currency": "AUD", - "Inventory_or_Warehouse_Management_System": false, - "Lead_Status": "New", - "Marketing_Stage": "SAL", - "Record_Type_ID": "TestCompany Lead", - "profile": { - "id": 304, - "name": "Default", - "profile_criteria": [ - { - "id": 1500, - "name": "Shipping Volume", - "matches": "Unknown" - }, - { - "id": 1502, - "name": "Industry", - "matches": "Unknown" - }, - { - "id": 1506, - "name": "Job Title", - "matches": "Unknown" - }, - { - "id": 1508, - "name": "Department", - "matches": "Unknown" - } - ] - }, - "visitors": null, - "visitor_activities": null, - "lists": null - } - }, - "status": 200, - "statusText": "OK" - }, - "https://pi.pardot.com/api/prospect/version/4/do/upsert/email/rolex_waltair@mywebsite.io": { - "response": { - "data": { - "@attributes": { - "stat": "fail", - "version": 1, - "err_code": 184 - }, - "err": "access_token is invalid, unknown, or malformed: Inactive token" - } - }, - "status": 401, - "statusText": "Unauthorized" - } -} diff --git a/test/__mocks__/optimizely_fullstack.mock.js b/test/__mocks__/optimizely_fullstack.mock.js deleted file mode 100644 index f2eb3deb8c..0000000000 --- a/test/__mocks__/optimizely_fullstack.mock.js +++ /dev/null @@ -1,19 +0,0 @@ -const optimizelyFullStackGetRequestHandler = (url, mockData) => { - if (url === 'https://cdn.optimizely.com/datafiles/abc.json') { - return { data: mockData, status: 200 }; - } - - return Promise.reject({ - response: { - data: { - code: 'document_not_found', - message: 'document_not_found', - }, - status: 404, - }, - }); -}; - -module.exports = { - optimizelyFullStackGetRequestHandler, -}; diff --git a/test/__tests__/data/optimizely_fullstack.json b/test/__tests__/data/optimizely_fullstack.json deleted file mode 100644 index 1331d38033..0000000000 --- a/test/__tests__/data/optimizely_fullstack.json +++ /dev/null @@ -1,1641 +0,0 @@ -[ - { - "description": "Missing Data File URL", - "input": { - "message": { - "type": "identify", - "channel": "web", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "integrations": { - "All": true - } - }, - "destination": { - "Config": { - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id" - } - } - }, - "output": { - "error": "Data File Url is not present. Aborting" - } - }, - { - "description": "Identify call: Missing Variation ID in integration object", - "input": { - "message": { - "type": "identify", - "channel": "web", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "integrations": { - "All": true - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id" - } - } - }, - "output": { - "error": "Variation ID is not present in the integrations object" - } - }, - { - "description": "Missing Account ID", - "input": { - "message": { - "type": "identify", - "channel": "web", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "integrations": { - "All": true - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id" - } - } - }, - "output": { - "error": "Account ID is not present. Aborting" - } - }, - { - "description": "Missing Campaign ID", - "input": { - "message": { - "type": "identify", - "channel": "web", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "integrations": { - "All": true - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "experimentId": "test_experiment_id" - } - } - }, - "output": { - "error": "Campaign ID is not present. Aborting" - } - }, - { - "description": "Missing Experiment ID", - "input": { - "message": { - "type": "identify", - "channel": "web", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "integrations": { - "All": true - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id" - } - } - }, - "output": { - "error": "Experiment ID is not present. Aborting" - } - }, - { - "description": "Page: Track Categorized Page and Track Named Pages toggle are disabled", - "input": { - "message": { - "type": "page", - "channel": "web", - "name": "Home", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "123" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id", - "trackCategorizedPages": false, - "trackNamedPages": false - } - } - }, - "output": { - "error": "Both 'Track Categorized Pages' and 'Track Named Pages' toggles are disabled in webapp. Please enable at one of them to send page/screen events to Optimizely." - } - }, - { - "description": "Invalid Configuration (Track known users toggle is on and userId is missing in request)", - "input": { - "message": { - "type": "track", - "channel": "web", - "event": "Product Added", - "properties": { - "price": 999, - "quantity": 1 - }, - "context": { - "traits": { - "firstName": "John", - "age": 27 - } - }, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "optimizely_fullstack": { - "variationId": "123" - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id", - "trackCategorizedPages": false, - "trackNamedPages": false, - "trackKnownUsers": true - } - } - }, - "output": { - "error": "UserId is required for event tracking when the 'Track Known Users' setting is enabled. Please include a 'userId' in your event payload" - } - }, - { - "description": "Invalid Configuration (Track known users toggle is off and anonymousId is missing in request)", - "input": { - "message": { - "type": "track", - "channel": "web", - "event": "Product Added", - "properties": { - "price": 999, - "quantity": 1 - }, - "context": { - "traits": { - "firstName": "John", - "age": 27 - } - }, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "123" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id" - } - } - }, - "output": { - "error": "AnonymousId is required when 'Track Known Users' setting is disabled" - } - }, - { - "description": "Track call without event", - "input": { - "message": { - "type": "track", - "channel": "web", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35" - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id" - } - } - }, - "output": { - "error": "Event is not present. Aborting." - } - }, - { - "description": "Invalid data file url", - "input": { - "message": { - "type": "track", - "event": "Product Added", - "channel": "web", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35" - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/wrong_cdn.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id" - } - } - }, - "output": { - "error": "Data File Lookup Failed due to {\"code\":\"document_not_found\",\"message\":\"document_not_found\"}" - } - }, - { - "description": "Invalid data file url", - "input": { - "message": { - "type": "track", - "event": "Product Added", - "channel": "web", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "123" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id", - "eventMapping": [ - { - "from": "Product Added", - "to": "product_added" - } - ] - } - } - }, - "output": { - "error": "Event 'product_added' is not present in data file. Make sure event exists in Optimizely." - } - }, - { - "description": "Identify call (Decision Event) with userId", - "input": { - "message": { - "type": "identify", - "channel": "web", - "properties": {}, - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe", - "country": "US" - }, - "sessionId": 1685626914716 - }, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "timestamp": "2023-02-10T12:16:07.251Z", - "userId": "userId123", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "attributeMapping": [ - { - "from": "organization", - "to": "company" - }, - { - "from": "fullName", - "to": "name" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": false, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "attributes": [ - { - "entity_id": "test_attribute_id_5", - "key": "company", - "type": "custom", - "value": "RudderStack" - }, - { - "entity_id": "test_attribute_id_2", - "key": "name", - "type": "custom", - "value": "John Doe" - } - ], - "snapshots": [ - { - "decisions": [ - { - "campaign_id": "test_campaign_id", - "experiment_id": "test_experiment_id", - "variation_id": "test_variation_id_1" - } - ], - "events": [ - { - "entity_id": "test_campaign_id", - "type": "campaign_activated", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff" - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Identify call (Decision Event) with anonymousId", - "input": { - "message": { - "type": "identify", - "channel": "web", - "properties": {}, - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe", - "country": "US" - }, - "sessionId": 1685626914716 - }, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "timestamp": "2023-02-10T12:16:07.251Z", - "userId": "userId123", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": false - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": false, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "97c46c81-3140-456d-b2a9-690d70aaca35", - "snapshots": [ - { - "decisions": [ - { - "campaign_id": "test_campaign_id", - "experiment_id": "test_experiment_id", - "variation_id": "test_variation_id_1" - } - ], - "events": [ - { - "entity_id": "test_campaign_id", - "type": "campaign_activated", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff" - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Identify call (Decision Event) with projectId is empty", - "input": { - "message": { - "type": "identify", - "channel": "web", - "properties": {}, - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe", - "country": "US" - }, - "sessionId": 1685626914716 - }, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "timestamp": "2023-02-10T12:16:07.251Z", - "userId": "userId123", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "projectId": "", - "attributeMapping": [ - { - "from": "organization", - "to": "company" - }, - { - "from": "fullName", - "to": "name" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": false, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "attributes": [ - { - "entity_id": "test_attribute_id_5", - "key": "company", - "type": "custom", - "value": "RudderStack" - }, - { - "entity_id": "test_attribute_id_2", - "key": "name", - "type": "custom", - "value": "John Doe" - } - ], - "snapshots": [ - { - "decisions": [ - { - "campaign_id": "test_campaign_id", - "experiment_id": "test_experiment_id", - "variation_id": "test_variation_id_1" - } - ], - "events": [ - { - "entity_id": "test_campaign_id", - "type": "campaign_activated", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff" - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Track call (Conversion event) with userId", - "input": { - "message": { - "type": "track", - "event": "product_added", - "userId": "userId123", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar", - "revenue": 123, - "quantity": 2 - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_2" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "eventMapping": [ - { - "from": "Product Searched", - "to": "Searched" - }, - { - "from": "product_added", - "to": "Product Added" - } - ], - "attributeMapping": [ - { - "from": "organization", - "to": "company" - }, - { - "from": "fullName", - "to": "name" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "attributes": [ - { - "entity_id": "test_attribute_id_5", - "key": "company", - "type": "custom", - "value": "RudderStack" - }, - { - "entity_id": "test_attribute_id_2", - "key": "name", - "type": "custom", - "value": "John Doe" - } - ], - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_1", - "key": "Product Added", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "quantity": 2, - "revenue": 12300, - "tags": { - "foo": "bar" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Track call (Conversion event) without event mapping configured in webapp", - "input": { - "message": { - "type": "track", - "event": "Product Added", - "channel": "web", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "timestamp": "2023-02-10T12:16:07.251Z", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "123" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id" - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": false, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "97c46c81-3140-456d-b2a9-690d70aaca35", - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_1", - "key": "Product Added", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "tags": {} - } - ] - } - ] - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Track call: Missing Variation ID in integration object ", - "input": { - "message": { - "type": "track", - "event": "product_added", - "userId": "userId123", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar", - "revenue": 123, - "quantity": 2 - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "eventMapping": [ - { - "from": "Product Searched", - "to": "Searched" - }, - { - "from": "product_added", - "to": "Product Added" - } - ], - "attributeMapping": [ - { - "from": "organization", - "to": "company" - }, - { - "from": "fullName", - "to": "name" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "attributes": [ - { - "entity_id": "test_attribute_id_5", - "key": "company", - "type": "custom", - "value": "RudderStack" - }, - { - "entity_id": "test_attribute_id_2", - "key": "name", - "type": "custom", - "value": "John Doe" - } - ], - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_1", - "key": "Product Added", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "quantity": 2, - "revenue": 12300, - "tags": { - "foo": "bar" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Track Categorized and Named Page", - "input": { - "message": { - "type": "page", - "name": "Meal", - "userId": "userId123", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar", - "category": "food" - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "trackCategorizedPages": true, - "trackNamedPages": true, - "pageMapping": [ - { - "from": "meal", - "to": "Viewed Meal Page" - }, - { - "from": "food", - "to": "Product Added" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_1", - "key": "Product Added", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "tags": { - "foo": "bar", - "category": "food" - } - }, - { - "entity_id": "test_event_id_4", - "key": "Viewed Meal page", - "timestamp": 1676031367251, - "uuid": "generated_uuid", - "tags": { - "foo": "bar", - "category": "food" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Track Categorized and Named Page without event mapping configured in webapp", - "input": { - "message": { - "type": "page", - "name": "home", - "userId": "userId123", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar", - "category": "index" - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "trackCategorizedPages": true, - "trackNamedPages": true, - "pageMapping": [ - { - "from": "", - "to": "" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_8", - "key": "Index", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "tags": { - "foo": "bar", - "category": "index" - } - }, - { - "entity_id": "test_event_id_7", - "key": "Home", - "timestamp": 1676031367251, - "uuid": "generated_uuid", - "tags": { - "foo": "bar", - "category": "index" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Track Categorized Page: trackCategorizedPages,trackNamedPages toggle are enabled and name is not provided", - "input": { - "message": { - "type": "page", - "userId": "userId123", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar", - "category": "food" - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "trackCategorizedPages": true, - "trackNamedPages": true, - "pageMapping": [ - { - "from": "meal", - "to": "Viewed Meal Page" - }, - { - "from": "food", - "to": "Product Added" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_1", - "key": "Product Added", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "tags": { - "foo": "bar", - "category": "food" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Track Named Page: trackCategorizedPages,trackNamedPages toggle are enabled and category is not provided", - "input": { - "message": { - "type": "page", - "userId": "userId123", - "name": "Meal", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar" - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "trackCategorizedPages": true, - "trackNamedPages": true, - "pageMapping": [ - { - "from": "meal", - "to": "Viewed Meal Page" - }, - { - "from": "food", - "to": "Product Added" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_4", - "key": "Viewed Meal page", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "tags": { - "foo": "bar" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Track Named Page: trackCategorizedPages,trackNamedPages toggle are enabled and category mapping is wrong", - "input": { - "message": { - "type": "page", - "userId": "userId123", - "name": "Meal", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar" - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "trackCategorizedPages": true, - "trackNamedPages": true, - "pageMapping": [ - { - "from": "meal", - "to": "Viewed Meal Page" - }, - { - "from": "food", - "to": "ABC" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_4", - "key": "Viewed Meal page", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "tags": { - "foo": "bar" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - }, - { - "description": "Track Named Page: mapping is not provided for page name in webapp", - "input": { - "message": { - "type": "page", - "userId": "userId123", - "name": "Meal", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar" - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "trackCategorizedPages": false, - "trackNamedPages": true, - "pageMapping": [ - { - "from": "Home", - "to": "Viewed Home Page" - }, - { - "from": "food", - "to": "Product Added" - } - ] - } - } - }, - "output": { - "error": "Events [meal] are not present in the data file. Make sure events exist in Optimizely." - } - }, - { - "description": "Track Categorized and Named Screen", - "input": { - "message": { - "type": "screen", - "name": "Home", - "userId": "userId123", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar", - "category": "food" - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "trackCategorizedPages": true, - "trackNamedPages": true, - "pageMapping": [ - { - "from": "home", - "to": "Viewed Main Screen" - }, - { - "from": "food", - "to": "Product Added" - } - ] - } - } - }, - "output": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_1", - "key": "Product Added", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "tags": { - "foo": "bar", - "category": "food" - } - }, - { - "entity_id": "test_event_id_6", - "key": "Viewed Main screen", - "timestamp": 1676031367251, - "uuid": "generated_uuid", - "tags": { - "foo": "bar", - "category": "food" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - } - } -] diff --git a/test/__tests__/data/optimizely_fullstack_router.json b/test/__tests__/data/optimizely_fullstack_router.json deleted file mode 100644 index 6be928afc9..0000000000 --- a/test/__tests__/data/optimizely_fullstack_router.json +++ /dev/null @@ -1,494 +0,0 @@ -[ - { - "input": [ - { - "message": { - "type": "identify", - "channel": "web", - "properties": {}, - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe", - "country": "US" - }, - "sessionId": 1685626914716 - }, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "timestamp": "2023-02-10T12:16:07.251Z", - "userId": "userId123", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "attributeMapping": [ - { - "from": "organization", - "to": "company" - }, - { - "from": "fullName", - "to": "name" - } - ] - } - }, - "metadata": { - "jobId": 1 - } - }, - { - "message": { - "type": "track", - "event": "product_added", - "userId": "userId123", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar", - "revenue": 123, - "quantity": 2 - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_2" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "eventMapping": [ - { - "from": "Product Searched", - "to": "Searched" - }, - { - "from": "product_added", - "to": "Product Added" - } - ], - "attributeMapping": [ - { - "from": "organization", - "to": "company" - }, - { - "from": "fullName", - "to": "name" - } - ] - } - }, - "metadata": { - "jobId": 2 - } - }, - { - "message": { - "type": "page", - "userId": "userId123", - "channel": "web", - "context": { - "traits": { - "organization": "RudderStack", - "fullName": "John Doe" - }, - "sessionId": 1685626914716 - }, - "rudderId": "5354b3f2-cb72-4355-a2b5-a298c3837c7d", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "timestamp": "2023-02-10T12:16:07.251Z", - "properties": { - "foo": "bar", - "category": "food" - }, - "anonymousId": "856365b8-da4b-4c13-9098-84df18559446", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "test_variation_id_1" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "trackCategorizedPages": true, - "trackNamedPages": false, - "pageMapping": [ - { - "from": "meal", - "to": "Viewed Meal Page" - }, - { - "from": "food", - "to": "Product Added" - } - ] - } - }, - "metadata": { - "jobId": 3 - } - }, - { - "message": { - "type": "page", - "channel": "web", - "name": "Home", - "properties": {}, - "context": {}, - "rudderId": "8f8fa6b5-8e24-489c-8e22-61f23f2e364f", - "messageId": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "anonymousId": "97c46c81-3140-456d-b2a9-690d70aaca35", - "integrations": { - "All": true, - "optimizely_fullstack": { - "variationId": "123" - } - } - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "experimentId": "test_experiment_id", - "trackCategorizedPages": false, - "trackNamedPages": false - } - }, - "metadata": { - "jobId": 4 - } - } - ], - "output": [ - { - "batched": false, - "batchedRequest": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": false, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "attributes": [ - { - "entity_id": "test_attribute_id_5", - "key": "company", - "type": "custom", - "value": "RudderStack" - }, - { - "entity_id": "test_attribute_id_2", - "key": "name", - "type": "custom", - "value": "John Doe" - } - ], - "snapshots": [ - { - "decisions": [ - { - "campaign_id": "test_campaign_id", - "experiment_id": "test_experiment_id", - "variation_id": "test_variation_id_1" - } - ], - "events": [ - { - "entity_id": "test_campaign_id", - "type": "campaign_activated", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff" - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "attributeMapping": [ - { - "from": "organization", - "to": "company" - }, - { - "from": "fullName", - "to": "name" - } - ] - } - }, - "metadata": [ - { - "jobId": 1 - } - ], - "statusCode": 200 - }, - { - "batched": false, - "batchedRequest": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "attributes": [ - { - "entity_id": "test_attribute_id_5", - "key": "company", - "type": "custom", - "value": "RudderStack" - }, - { - "entity_id": "test_attribute_id_2", - "key": "name", - "type": "custom", - "value": "John Doe" - } - ], - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_1", - "key": "Product Added", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "quantity": 2, - "revenue": 12300, - "tags": { - "foo": "bar" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "eventMapping": [ - { - "from": "Product Searched", - "to": "Searched" - }, - { - "from": "product_added", - "to": "Product Added" - } - ], - "attributeMapping": [ - { - "from": "organization", - "to": "company" - }, - { - "from": "fullName", - "to": "name" - } - ] - } - }, - "metadata": [ - { - "jobId": 2 - } - ], - "statusCode": 200 - }, - { - "batched": false, - "batchedRequest": { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://logx.optimizely.com/v1/events", - "headers": { - "Content-Type": "application/json" - }, - "params": {}, - "body": { - "JSON": { - "account_id": "test_account_id", - "anonymize_ip": true, - "enrich_decisions": true, - "client_name": "RudderStack", - "client_version": "1.0.0", - "visitors": [ - { - "visitor_id": "userId123", - "snapshots": [ - { - "decisions": [], - "events": [ - { - "entity_id": "test_event_id_1", - "key": "Product Added", - "timestamp": 1676031367251, - "uuid": "2116ef8c-efc3-4ca4-851b-02ee60dad6ff", - "tags": { - "foo": "bar", - "category": "food" - } - } - ] - } - ], - "session_id": "1685626914716" - } - ] - }, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": {} - }, - "files": {} - }, - "destination": { - "Config": { - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "accountId": "test_account_id", - "campaignId": "test_campaign_id", - "experimentId": "test_experiment_id", - "trackKnownUsers": true, - "anonymizeIp": true, - "trackCategorizedPages": true, - "trackNamedPages": false, - "pageMapping": [ - { - "from": "meal", - "to": "Viewed Meal Page" - }, - { - "from": "food", - "to": "Product Added" - } - ] - } - }, - "metadata": [ - { - "jobId": 3 - } - ], - "statusCode": 200 - }, - { - "batched": false, - "destination": { - "Config": { - "accountId": "test_account_id", - "campaignId": "test_campagin_id", - "dataFileUrl": "https://cdn.optimizely.com/datafiles/abc.json", - "experimentId": "test_experiment_id", - "trackCategorizedPages": false, - "trackNamedPages": false - } - }, - "error": "Both 'Track Categorized Pages' and 'Track Named Pages' toggles are disabled in webapp. Please enable at one of them to send page/screen events to Optimizely.", - "metadata": [ - { - "jobId": 4 - } - ], - "statTags": { - "errorCategory": "dataValidation", - "errorType": "configuration" - }, - "statusCode": 400 - } - ] - } -] diff --git a/test/__tests__/data/pardot_proxy_input.json b/test/__tests__/data/pardot_proxy_input.json deleted file mode 100644 index f5f62dea72..0000000000 --- a/test/__tests__/data/pardot_proxy_input.json +++ /dev/null @@ -1,106 +0,0 @@ -[ - { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://pi.pardot.com/api/prospect/version/4/do/upsert/id/123435", - "headers": { - "Authorization": "Bearer myToken", - "Pardot-Business-Unit-Id": "0Uv2v000000k9tHCAQ" - }, - "body": { - "JSON": {}, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": { - "first_name": "Roger12", - "last_name": "Federer12", - "website": "https://rudderstack.com", - "score": 14, - "campaign_id": 42213 - } - }, - "files": {}, - "params": { - "destination": "pardot" - } - }, - { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://pi.pardot.com/api/prospect/version/4/do/upsert/email/Roger_12@waltair.io", - "headers": { - "Authorization": "Bearer myToken", - "Pardot-Business-Unit-Id": "0Uv2v000000k9tHCAQ" - }, - "body": { - "JSON": {}, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": { - "first_name": "Roger_12", - "last_name": "Federer_12", - "website": "https://rudderstack.com", - "score": 14, - "campaign_id": 42213 - } - }, - "files": {}, - "params": { - "destination": "pardot" - } - }, - { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://pi.pardot.com/api/prospect/version/4/do/upsert/fid/00Q6r000002LKhTPVR", - "headers": { - "Authorization": "Bearer myToken", - "Pardot-Business-Unit-Id": "0Uv2v000000k9tHCAQ" - }, - "body": { - "JSON": {}, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": { - "first_name": "Nick", - "last_name": "Kyrgios", - "website": "https://rudderstack.com", - "score": 12, - "campaign_id": 42213 - } - }, - "files": {}, - "params": { - "destination": "pardot" - } - }, - { - "version": "1", - "type": "REST", - "method": "POST", - "endpoint": "https://pi.pardot.com/api/prospect/version/4/do/upsert/email/rolex_waltair@mywebsite.io", - "headers": { - "Authorization": "Bearer myExpiredToken", - "Pardot-Business-Unit-Id": "0Uv2v000000k9tHCAQ" - }, - "body": { - "JSON": {}, - "JSON_ARRAY": {}, - "XML": {}, - "FORM": { - "first_name": "Rolex", - "last_name": "Waltair", - "website": "https://rudderstack.com", - "score": 15, - "campaign_id": 42213 - } - }, - "files": {}, - "params": { - "destination": "pardot" - } - } -] \ No newline at end of file diff --git a/test/__tests__/data/pardot_proxy_output.json b/test/__tests__/data/pardot_proxy_output.json deleted file mode 100644 index 46783b3d69..0000000000 --- a/test/__tests__/data/pardot_proxy_output.json +++ /dev/null @@ -1,378 +0,0 @@ -[ - { - "output": { - "message": "Request Processed Successfully", - "status": 200, - "destinationResponse": { - "response": { - "@attributes": { - "stat": "ok", - "version": 1 - }, - "prospect": { - "id": 123435, - "campaign_id": 42213, - "salutation": null, - "first_name": "Roger12", - "last_name": "Federer12", - "email": "Roger12@waltair.io", - "password": null, - "company": null, - "website": "https://rudderstack.com", - "job_title": null, - "department": null, - "country": "AU", - "address_one": null, - "address_two": null, - "city": null, - "state": null, - "territory": null, - "zip": null, - "phone": null, - "fax": null, - "source": null, - "annual_revenue": null, - "employees": null, - "industry": null, - "years_in_business": null, - "comments": null, - "notes": null, - "score": 14, - "grade": null, - "last_activity_at": null, - "recent_interaction": "Never active.", - "crm_lead_fid": null, - "crm_contact_fid": null, - "crm_owner_fid": "00G2v000004WYXaEAO", - "crm_account_fid": null, - "salesforce_fid": null, - "crm_last_sync": null, - "crm_url": null, - "is_do_not_email": null, - "is_do_not_call": null, - "opted_out": null, - "is_reviewed": 1, - "is_starred": null, - "created_at": "2022-01-21 18:21:46", - "updated_at": "2022-01-21 18:48:41", - "campaign": { - "id": 42113, - "name": "Test", - "crm_fid": "7012y000000MNOCLL4" - }, - "assigned_to": { - "user": { - "id": 38443703, - "email": "test_rudderstack@testcompany.com", - "first_name": "Rudderstack", - "last_name": "User", - "job_title": null, - "role": "Administrator", - "account": 489853, - "created_at": "2021-02-26 06:25:17", - "updated_at": "2021-02-26 06:25:17" - } - }, - "Are_you_shipping_large_fragile_or_bulky_items": false, - "Calendly": false, - "Country_Code": "AU", - "Currency": "AUD", - "Inventory_or_Warehouse_Management_System": false, - "Lead_Status": "New", - "Marketing_Stage": "SAL", - "Record_Type_ID": "TestCompany Lead", - "profile": { - "id": 304, - "name": "Default", - "profile_criteria": [ - { - "id": 1500, - "name": "Shipping Volume", - "matches": "Unknown" - }, - { - "id": 1502, - "name": "Industry", - "matches": "Unknown" - }, - { - "id": 1506, - "name": "Job Title", - "matches": "Unknown" - }, - { - "id": 1508, - "name": "Department", - "matches": "Unknown" - } - ] - }, - "visitors": null, - "visitor_activities": null, - "lists": null - } - }, - "status": 200 - } - } - }, - { - "output": { - "message": "Request Processed Successfully", - "status": 201, - "destinationResponse": { - "response": { - "@attributes": { - "stat": "ok", - "version": 1 - }, - "prospect": { - "id": 123435, - "campaign_id": 42213, - "salutation": null, - "first_name": "Roger_12", - "last_name": "Federer_12", - "email": "Roger_12@waltair.io", - "password": null, - "company": null, - "website": "https://rudderstack.com", - "job_title": null, - "department": null, - "country": "AU", - "address_one": null, - "address_two": null, - "city": null, - "state": null, - "territory": null, - "zip": null, - "phone": null, - "fax": null, - "source": null, - "annual_revenue": null, - "employees": null, - "industry": null, - "years_in_business": null, - "comments": null, - "notes": null, - "score": 14, - "grade": null, - "last_activity_at": null, - "recent_interaction": "Never active.", - "crm_lead_fid": null, - "crm_contact_fid": null, - "crm_owner_fid": "00G2v000004WYXaEAO", - "crm_account_fid": null, - "salesforce_fid": null, - "crm_last_sync": null, - "crm_url": null, - "is_do_not_email": null, - "is_do_not_call": null, - "opted_out": null, - "is_reviewed": 1, - "is_starred": null, - "created_at": "2022-01-21 18:21:46", - "updated_at": "2022-01-21 18:48:41", - "campaign": { - "id": 42113, - "name": "Test", - "crm_fid": "7012y000000MNOCLL4" - }, - "assigned_to": { - "user": { - "id": 38443703, - "email": "test_rudderstack@testcompany.com", - "first_name": "Rudderstack", - "last_name": "User", - "job_title": null, - "role": "Administrator", - "account": 489853, - "created_at": "2021-02-26 06:25:17", - "updated_at": "2021-02-26 06:25:17" - } - }, - "Are_you_shipping_large_fragile_or_bulky_items": false, - "Calendly": false, - "Country_Code": "AU", - "Currency": "AUD", - "Inventory_or_Warehouse_Management_System": false, - "Lead_Status": "New", - "Marketing_Stage": "SAL", - "Record_Type_ID": "TestCompany Lead", - "profile": { - "id": 304, - "name": "Default", - "profile_criteria": [ - { - "id": 1500, - "name": "Shipping Volume", - "matches": "Unknown" - }, - { - "id": 1502, - "name": "Industry", - "matches": "Unknown" - }, - { - "id": 1506, - "name": "Job Title", - "matches": "Unknown" - }, - { - "id": 1508, - "name": "Department", - "matches": "Unknown" - } - ] - }, - "visitors": null, - "visitor_activities": null, - "lists": null - } - }, - "status": 201 - } - } - }, - { - "output": { - "message": "Request Processed Successfully", - "status": 200, - "destinationResponse": { - "response": { - "@attributes": { - "stat": "ok", - "version": 1 - }, - "prospect": { - "id": 123435, - "campaign_id": 42213, - "salutation": null, - "first_name": "Roger_12", - "last_name": "Federer_12", - "email": "Roger_12@federer.io", - "password": null, - "company": null, - "website": "https://rudderstack.com", - "job_title": null, - "department": null, - "country": "AU", - "address_one": null, - "address_two": null, - "city": null, - "state": null, - "territory": null, - "zip": null, - "phone": null, - "fax": null, - "source": null, - "annual_revenue": null, - "employees": null, - "industry": null, - "years_in_business": null, - "comments": null, - "notes": null, - "score": 14, - "grade": null, - "last_activity_at": null, - "recent_interaction": "Never active.", - "crm_lead_fid": "00Q6r000002LKhTPVR", - "crm_contact_fid": null, - "crm_owner_fid": "00G2v000004WYXaEAO", - "crm_account_fid": null, - "salesforce_fid": "00Q6r000002LKhTPVR", - "crm_last_sync": "2022-01-21 18:47:37", - "crm_url": "https://testcompany.my.salesforce.com/00Q6r000002LKhTPVR", - "is_do_not_email": null, - "is_do_not_call": null, - "opted_out": null, - "is_reviewed": 1, - "is_starred": null, - "created_at": "2022-01-21 18:21:46", - "updated_at": "2022-01-21 18:48:41", - "campaign": { - "id": 42113, - "name": "Test", - "crm_fid": "7012y000000MNOCLL4" - }, - "assigned_to": { - "user": { - "id": 38443703, - "email": "test_rudderstack@testcompany.com", - "first_name": "Rudderstack", - "last_name": "User", - "job_title": null, - "role": "Administrator", - "account": 489853, - "created_at": "2021-02-26 06:25:17", - "updated_at": "2021-02-26 06:25:17" - } - }, - "Are_you_shipping_large_fragile_or_bulky_items": false, - "Calendly": false, - "Country_Code": "AU", - "Currency": "AUD", - "Inventory_or_Warehouse_Management_System": false, - "Lead_Status": "New", - "Marketing_Stage": "SAL", - "Record_Type_ID": "TestCompany Lead", - "profile": { - "id": 304, - "name": "Default", - "profile_criteria": [ - { - "id": 1500, - "name": "Shipping Volume", - "matches": "Unknown" - }, - { - "id": 1502, - "name": "Industry", - "matches": "Unknown" - }, - { - "id": 1506, - "name": "Job Title", - "matches": "Unknown" - }, - { - "id": 1508, - "name": "Department", - "matches": "Unknown" - } - ] - }, - "visitors": null, - "visitor_activities": null, - "lists": null - } - }, - "status": 200 - } - } - }, - { - "output": { - "message": "access_token is invalid, unknown, or malformed: Inactive token during Pardot response transformation", - "status": 500, - "authErrorCategory": "REFRESH_TOKEN", - "destinationResponse": { - "@attributes": { - "stat": "fail", - "version": 1, - "err_code": 184 - }, - "err": "access_token is invalid, unknown, or malformed: Inactive token" - }, - "statTags": { - "destType": "PARDOT", - "errorCategory": "network", - "destinationId": "Non-determininable", - "workspaceId": "Non-determininable", - "errorType": "retryable", - "feature": "dataDelivery", - "implementation": "native", - "module": "destination" - } - } - } -] diff --git a/test/__tests__/mssql.test.js b/test/__tests__/mssql.test.js deleted file mode 100644 index 7e883d2c30..0000000000 --- a/test/__tests__/mssql.test.js +++ /dev/null @@ -1,50 +0,0 @@ -const { getDataType } = require("../../src/warehouse/index"); -const { - getDataTypeOverride -} = require("../../src/v0/destinations/mssql/transform"); - -var testCases = [ - { - name: "normalInt", - data: 1, - type: "int" - }, - { - name: "normalFloat", - data: 2.01, - type: "float" - }, - { - name: "normalBoolean", - data: true, - type: "boolean" - }, - { - name: "normalString", - data: "mssql transformation[*007}", - type: "string" - }, - { - name: "violationErrors", - data: [ - { - message: - "no schema for eventName : Product Purchased new, eventType : track in trackingPlanID : tp_20dfXJDpotQWHe7hMxfQfgWMZDv::1", - meta: {}, - type: "Unplanned-Event" - } - ], - type: "string" - } -]; - -describe("MSSQL data types testing", () => { - let options = {}; - options.getDataTypeOverride = getDataTypeOverride; - testCases.forEach(testCase => { - it(`should return data type ${testCase.type} for this input data ${testCase.data} everytime`, () => { - var dataType = getDataType(testCase.name, testCase.data, options); - expect(dataType).toEqual(testCase.type); - }); - }); -}); diff --git a/test/__tests__/optimizely_fullstack-cdk.test.ts b/test/__tests__/optimizely_fullstack-cdk.test.ts deleted file mode 100644 index b51cd18b11..0000000000 --- a/test/__tests__/optimizely_fullstack-cdk.test.ts +++ /dev/null @@ -1,60 +0,0 @@ -import fs from 'fs'; -import path from 'path'; -import { processCdkV2Workflow } from '../../src/cdk/v2/handler'; -import tags from '../../src/v0/util/tags'; - -const integration = 'optimizely_fullstack'; -const destName = 'Optimizely Fullstack'; - -jest.mock('../../src/v0/util/index', () => { - const originalModule = jest.requireActual('../../src/v0/util/index'); - return { - ...originalModule, - generateUUID: jest.fn(() => 'generated_uuid'), - }; -}); - -// Processor Test files -const testDataFile = fs.readFileSync(path.resolve(__dirname, `./data/${integration}.json`), { - encoding: 'utf8', -}); -const testData = JSON.parse(testDataFile); - -// Router Test files -const routerTestDataFile = fs.readFileSync( - path.resolve(__dirname, `./data/${integration}_router.json`), - { encoding: 'utf8' }, -); -const routerTestData = JSON.parse(routerTestDataFile); - -describe(`${destName} Tests`, () => { - describe('Processor Tests', () => { - testData.forEach((dataPoint, index) => { - it(`${destName} - payload: ${index}`, async () => { - try { - const output = await processCdkV2Workflow( - integration, - dataPoint.input, - tags.FEATURES.PROCESSOR, - ); - expect(output).toEqual(dataPoint.output); - } catch (error: any) { - expect(error.message).toEqual(dataPoint.output.error); - } - }); - }); - }); - - describe('Router Tests', () => { - routerTestData.forEach((dataPoint) => { - it('Optimizely fullstack router test case', async () => { - const output = await processCdkV2Workflow( - integration, - dataPoint.input, - tags.FEATURES.ROUTER, - ); - expect(output).toEqual(dataPoint.output); - }); - }); - }); -}); diff --git a/test/__tests__/pardot.test.js b/test/__tests__/pardot.test.js deleted file mode 100644 index d766d3b856..0000000000 --- a/test/__tests__/pardot.test.js +++ /dev/null @@ -1,28 +0,0 @@ -const fs = require("fs"); -const path = require("path"); - -const integration = "pardot"; -const name = "pardot"; - -const version = "v0"; - -const transformer = require(`../../src/${version}/destinations/${integration}/transform`); - -//for router test -const inputRouterDataFile = fs.readFileSync( - path.resolve(__dirname, `./data/${integration}_router_input.json`) -); -const outputRouterDataFile = fs.readFileSync( - path.resolve(__dirname, `./data/${integration}_router_output.json`) -); -const inputRouterData = JSON.parse(inputRouterDataFile); -const expectedRouterData = JSON.parse(outputRouterDataFile); - -describe(`${name} Router Tests`, () => { - describe("Router Tests", () => { - it(`${name} Payload`, async () => { - const routerOutput = await transformer.processRouterDest(inputRouterData); - expect(routerOutput).toEqual(expectedRouterData); - }); - }); -}); diff --git a/test/__tests__/postgres.test.js b/test/__tests__/postgres.test.js deleted file mode 100644 index 354fedba09..0000000000 --- a/test/__tests__/postgres.test.js +++ /dev/null @@ -1,50 +0,0 @@ -const { getDataType } = require("../../src/warehouse/index"); -const { - getDataTypeOverride -} = require("../../src/v0/destinations/postgres/transform"); - -var testCases = [ - { - name: "normalInt", - data: 1, - type: "int" - }, - { - name: "normalFloat", - data: 2.01, - type: "float" - }, - { - name: "normalBoolean", - data: true, - type: "boolean" - }, - { - name: "normalString", - data: "postgres transformation[*007}", - type: "string" - }, - { - name: "violationErrors", - data: [ - { - message: - "no schema for eventName : Product Purchased new, eventType : track in trackingPlanID : tp_20dfXJDpotQWHe7hMxfQfgWMZDv::1", - meta: {}, - type: "Unplanned-Event" - } - ], - type: "json" - } -]; - -describe("Postgres data types testing", () => { - let options = {}; - options.getDataTypeOverride = getDataTypeOverride; - testCases.forEach(testCase => { - it(`should return data type ${testCase.type} for this input data ${testCase.data} everytime`, () => { - var dataType = getDataType(testCase.name, testCase.data, options); - expect(dataType).toEqual(testCase.type); - }); - }); -}); diff --git a/test/__tests__/proxy.test.ts b/test/__tests__/proxy.test.ts index 9f13c198fc..15769fc8dc 100644 --- a/test/__tests__/proxy.test.ts +++ b/test/__tests__/proxy.test.ts @@ -1,12 +1,13 @@ const name = 'Proxy'; -import fs from 'fs'; -import path from 'path'; +import fs, { appendFileSync } from 'fs'; +import path, { join } from 'path'; import request from 'supertest'; import { createHttpTerminator } from 'http-terminator'; import { mockedAxiosClient } from '../__mocks__/network'; import Koa from 'koa'; import bodyParser from 'koa-bodyparser'; import { applicationRoutes } from '../../src/routes'; +import { responses } from '../testHelper'; let server: any; const OLD_ENV = process.env; @@ -37,7 +38,6 @@ const version = '1'; const destinations = [ 'marketo', 'braze', - 'pardot', 'google_adwords_remarketing_lists', 'google_adwords_enhanced_conversions', 'facebook_pixel', @@ -48,7 +48,7 @@ const destinations = [ 'marketo_static_list', 'criteo_audience', 'tiktok_ads', - 'intercom' + 'intercom', ]; // start of generic tests @@ -89,6 +89,20 @@ destinations.forEach((destination) => { expect(response.body).toEqual(expectedData[index]); }); }); + afterAll(() => { + if (process.env.GEN_AXIOS_FOR_TESTS === 'true') { + const callsDataStr = responses.join('\n'); + const calls = ` + export const networkCallsData = [ + ${callsDataStr} + ] + `; + appendFileSync( + join(__dirname, '..', 'integrations', 'destinations', destination, 'network.ts'), + calls, + ); + } + }); }); }); // destination tests end diff --git a/test/deleteUsers/README.md b/test/deleteUsers/README.md deleted file mode 100644 index c3170f3a8c..0000000000 --- a/test/deleteUsers/README.md +++ /dev/null @@ -1,35 +0,0 @@ -# DeleteUsers Tests - -All the tests data for deleteUsers are to be present in **tests**/data/deleteUsers/${destination}/ - -### Files and their significance - -- **`handler_input.json`** - Input data for `handleDeletionOfUsers` function in `versionedRouter.js`(alias for `_deleteUsers_proxy_input.json`) -- **`handler_output.json`** - Output of `handleDeletionOfUsers` function in `versionedRouter.js`(alias for `_deleteUsers_proxy_output.json`) -- **`nw_client_data.json`** - the mock http responses(An example can be seen in the case of `ga`) - -### Fields in new files - -#### nw_client_data.json - -- Type: Array> -- The array of object is how many responses have to be sent back -- Each of the object contains below mentioned fields - - type: - - Indicates what type of http client invocation it is - - Recommended to be sent - - Supported values: - - post - - get - - delete - - constructor - - if nothing is mentioned, `post` is considered by default - - reqParams: - - Type: Array - - Optional - - Indicates the expected arguments that are to be sent to the http client instance - - We would `recommend` to also add this as part of your `nw_client_data.json` - - response: - - Type: object - - Required - - The response that needs to be returned from the http client diff --git a/test/deleteUsers/data/af/handler_input.json b/test/deleteUsers/data/af/handler_input.json deleted file mode 100644 index 7685ec7a73..0000000000 --- a/test/deleteUsers/data/af/handler_input.json +++ /dev/null @@ -1,177 +0,0 @@ -[ - { - "request": { - "body": [ - { - "destType": "AF", - "userAttributes": [ - { - "userId": "test_user_id", - "android_advertising_id": "1665148898336-5539842602053895577" - } - ], - "config": { - "devKey": "ef1d42390426e3f7c90ac78272e74344", - "appleAppId": "123456789", - "androidAppId": "AnAID", - "apiToken": "dummyApiToken" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "AF", - "userAttributes": [ - { - "userId": "test_user_id", - "ios_advertising_id": "1665148898336-5539842602053895577" - } - ], - "config": { - "devKey": "ef1d42390426e3f7c90ac78272e74344", - "appleAppId": "123456789", - "androidAppId": "AnAID", - "apiToken": "dummyApiToken", - "statusCallbackUrls": "https://examplecontroller.com/opengdpr_callbacks" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "AF", - "userAttributes": [ - { - "userId": "test_user_id", - "appsflyer_id": "jklhajksfh" - }, - { - "userId": "user_sdk2", - "appsflyer_id": "jklhajksfh" - } - ], - "config": { - "devKey": "ef1d42390426e3f7c90ac78272e74344", - "apiToken": "dummyApiToken" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "AF", - "userAttributes": [ - { - "userId": "test_user_id", - "appsflyer_id": "jklhajksfh" - }, - { - "userId": "user_sdk2", - "appsflyer_id": "jklhajksfh" - } - ], - "config": { - "devKey": "ef1d42390426e3f7c90ac78272e74344", - "appleAppId": "123456789", - "statusCallbackUrls": "https://examplecontroller.com/opengdpr_callbacks,https://examplecontroller.com/opengdpr_callbacks,https://examplecontroller.com/opengdpr_callbacks,https://examplecontroller.com/opengdpr_callbacks", - "apiToken": "dummyApiToken" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "AF", - "userAttributes": [ - { - "email": "testUser@testMail.com", - "android_advertising_id": "1234" - }, - { - "userId": "user_sdk2", - "android_advertising_id": "1234" - } - ], - "config": { - "devKey": "abcde", - "appleAppId": "asdfasdf", - "groupTypeTrait": "email", - "groupValueTrait": "age", - "trackProductsOnce": false, - "trackRevenuePerProduct": false, - "apiToken": "dummyApiToken" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "AF", - "userAttributes": [ - { - "email": "testUser@testMail.com", - "ios_advertising_id": "1234" - }, - { - "userId": "user_sdk2", - "ios_advertising_id": "1234" - } - ], - "config": { - "devKey": "abcde", - "androidAppId": "com.rudder.rs", - "groupTypeTrait": "email", - "groupValueTrait": "age", - "trackProductsOnce": false, - "trackRevenuePerProduct": false, - "apiToken": "dummyApiToken" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "AF", - "userAttributes": [ - { - "email": "testUser@testMail.com", - "userId": "user1234" - }, - { - "userId": "user_sdk2", - "ios_advertising_id": "1234" - } - ], - "config": { - "devKey": "abcde", - "androidAppId": "com.rudder.rs", - "groupTypeTrait": "email", - "groupValueTrait": "age", - "trackProductsOnce": false, - "trackRevenuePerProduct": false, - "apiToken": "dummyApiToken" - } - } - ] - } - } -] diff --git a/test/deleteUsers/data/af/handler_output.json b/test/deleteUsers/data/af/handler_output.json deleted file mode 100644 index 33363c69d3..0000000000 --- a/test/deleteUsers/data/af/handler_output.json +++ /dev/null @@ -1,44 +0,0 @@ -[ - [ - { - "statusCode": 400, - "error": "User deletion request failed" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ], - [ - { - "statusCode": 400, - "error": "API Token and one of Apple ID or Android App Id are required fields for user deletion" - } - ], - [ - { - "statusCode": 400, - "error": "You can send utmost 3 callBackUrls" - } - ], - [ - { - "statusCode": 400, - "error": "androidAppId is required for android_advertising_id type identifier" - } - ], - [ - { - "statusCode": 400, - "error": "appleAppId is required for ios_advertising_id type identifier" - } - ], - [ - { - "statusCode": 400, - "error": "none of the possible identityTypes i.e.(ios_advertising_id, android_advertising_id, appsflyer_id) is provided for deletion" - } - ] -] diff --git a/test/deleteUsers/data/af/nw_client_data.json b/test/deleteUsers/data/af/nw_client_data.json deleted file mode 100644 index b7ecfc1596..0000000000 --- a/test/deleteUsers/data/af/nw_client_data.json +++ /dev/null @@ -1,58 +0,0 @@ -[ - [ - { - "type": "post", - "reqParams": [ - "https://hq1.appsflyer.com/gdpr/opengdpr_requests?api_token=dummyApiToken", - { - "subject_request_type": "erasure", - "subject_identities": { - "identity_format": "raw", - "identity_type": "android_advertising_id", - "identity_value": "1665148898336-5539842602053895577" - }, - "property_id": "AnAID", - "subject_request_id": "f31a16f4-2357-47b5-aba0-d83742f2fd66", - "submitted_time": "2022-12-26T12:51:27.570Z" - } - ], - "response": { - "code": 400, - "statusText": "fail", - "response": { - "data": { - "error": { - "code": 400, - "af_gdpr_code": "e411", - "message": "AppID given in 'property_id' is incorrect or does not belong to your account" - } - }, - "status": 400 - } - } - } - ], - [ - { - "type": "post", - "reqParams": [ - "https://hq1.appsflyer.com/gdpr/opengdpr_requests?api_token=dummyApiToken", - { - "subject_request_type": "erasure", - "subject_identities": { - "identity_format": "raw", - "identity_type": "ios_advertising_id", - "identity_value": "1665148898336-5539842602053895577" - }, - "property_id": "123456789", - "subject_request_id": "f31a16f4-2357-47b5-aba0-d83742f2fd66", - "submitted_time": "2022-12-26T12:51:27.570Z" - } - ], - "response": { - "status": 200, - "statusText": "success" - } - } - ] -] diff --git a/test/deleteUsers/data/am/handler_input.json b/test/deleteUsers/data/am/handler_input.json deleted file mode 100644 index 66b97d4a4d..0000000000 --- a/test/deleteUsers/data/am/handler_input.json +++ /dev/null @@ -1,380 +0,0 @@ -[ - { - "request": { - "body": [ - { - "jobId": "423451324652346", - "destType": "AM", - "userAttributes": [ - { - "userIderror": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - } - ], - "config": { - "apiKey": "1234", - "apiSecret": "abcd" - } - } - ] - } - } -] - - diff --git a/test/deleteUsers/data/am/handler_output.json b/test/deleteUsers/data/am/handler_output.json deleted file mode 100644 index c453a831d9..0000000000 --- a/test/deleteUsers/data/am/handler_output.json +++ /dev/null @@ -1,26 +0,0 @@ -[ - [ - { - "statusCode": 400, - "error": "User deletion request failed" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ], - [ - { - "statusCode": 400, - "error": "Config for deletion not present" - } - ], - [ - { - "statusCode": 400, - "error": "api key/secret for deletion not present" - } - ] -] diff --git a/test/deleteUsers/data/am/nw_client_data.json b/test/deleteUsers/data/am/nw_client_data.json deleted file mode 100644 index 3abf39691a..0000000000 --- a/test/deleteUsers/data/am/nw_client_data.json +++ /dev/null @@ -1,91 +0,0 @@ -[ - [ - { - "type": "post", - "reqParams": [ - "https://amplitude.com/api/2/deletions/users", - { - "userIds": ["Batch1"] - }, - { - "Content-Type": "application/json", - "Authorization": "Basic MTIzNDphYmNk" - } - ], - "response": { - "code": 400, - "statusText": "fail", - "response": { - "data": { - "code": 403, - "message": "HTTP 403: Forbidden (Invalid API Key)", - "status": "Forbidden" - }, - "status": 400 - } - } - }, - { - "type": "post", - "reqParams": [ - "https://amplitude.com/api/2/deletions/users", - { - "userIds": ["Batch2"] - }, - { - "Content-Type": "application/json", - "Authorization": "Basic MTIzNDphYmNk" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "Nothing scheduled due to invalid amplitude/user ids for app XXXXX" - } - } - } - ], - [ - { - "type": "post", - "reqParams": [ - "https://amplitude.com/api/2/deletions/users", - { - "userIds": ["Batch1"] - }, - { - "Content-Type": "application/json", - "Authorization": "Basic MTIzNDphYmNk" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "Mocking" - } - } - }, - { - "type": "post", - "reqParams": [ - "https://amplitude.com/api/2/deletions/users", - { - "userIds": ["Batch2"] - }, - { - "Content-Type": "application/json", - "Authorization": "Basic MTIzNDphYmNk" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "Mocking" - } - } - } - ] -] diff --git a/test/deleteUsers/data/braze/handler_input.json b/test/deleteUsers/data/braze/handler_input.json deleted file mode 100644 index 6a8ad60f4d..0000000000 --- a/test/deleteUsers/data/braze/handler_input.json +++ /dev/null @@ -1,393 +0,0 @@ -[ - { - "request": { - "body": [ - { - "destType": "BRAZE", - "userAttributes": [ - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - } - ], - "config": { - "dataCenter": "US-03", - "restApiKey": "1234" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "BRAZE", - "userAttributes": [ - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - } - ], - "config": { - "dataCenter": "US-03", - "restApiKey": "1234" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "BRAZE", - "userAttributes": [ - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - } - ] - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "BRAZE", - "userAttributes": [ - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - } - ], - "config": { - "dataCenter": "US-03" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "BRAZE", - "userAttributes": [ - { - "name": "a" - } - ], - "config": { - "restApiKey": "b1bd90e2-d203-480a-962c-f7bb03ea0afe", - "dataCenter": "US-03" - } - } - ] - } - } -] diff --git a/test/deleteUsers/data/braze/handler_output.json b/test/deleteUsers/data/braze/handler_output.json deleted file mode 100644 index 7df562646a..0000000000 --- a/test/deleteUsers/data/braze/handler_output.json +++ /dev/null @@ -1,32 +0,0 @@ -[ - [ - { - "statusCode": 400, - "error": "User deletion request failed" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ], - [ - { - "statusCode": 400, - "error": "Config for deletion not present" - } - ], - [ - { - "statusCode": 400, - "error": "data center / api key for deletion not present" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ] -] diff --git a/test/deleteUsers/data/braze/nw_client_data.json b/test/deleteUsers/data/braze/nw_client_data.json deleted file mode 100644 index 34b2d488da..0000000000 --- a/test/deleteUsers/data/braze/nw_client_data.json +++ /dev/null @@ -1,97 +0,0 @@ -[ - [ - { - "type": "post", - "reqParams": [ - "https://rest.iad-03.braze.com/users/delete", - { - "externalIds": ["Batch1"] - }, - { - "Content-Type": "application/json", - "Authorization": "Bearer ${restApiKey}" - } - ], - "response": { - "code": 400, - "statusText": "fail", - "response": { - "data": { - "code": 400, - "message": "Bad Req", - "status": "Fail Case" - }, - "status": 400 - } - } - }, - { - "type": "post", - "reqParams": [ - "https://rest.iad-03.braze.com/users/delete", - { - "externalIds": ["Batch2"] - }, - { - "Content-Type": "application/json", - "Authorization": "Bearer ${restApiKey}" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "1" - } - } - } - ], - [ - { - "type": "post", - "reqParams": [ - "https://rest.iad-03.braze.com/users/delete", - { - "externalIds": ["Batch4"] - }, - { - "Content-Type": "application/json", - "Authorization": "Bearer ${restApiKey}" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": { - "deleted": 50, - "message": "success" - } - } - } - }, - { - "type": "post", - "reqParams": [ - "https://rest.iad-03.braze.com/users/delete", - { - "externalIds": ["Batch"] - }, - { - "Content-Type": "application/json", - "Authorization": "Bearer ${restApiKey}" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": { - "deleted": 50, - "message": "success" - } - } - } - } - ] -] diff --git a/test/deleteUsers/data/clevertap/handler_input.json b/test/deleteUsers/data/clevertap/handler_input.json deleted file mode 100644 index 61c9446cf7..0000000000 --- a/test/deleteUsers/data/clevertap/handler_input.json +++ /dev/null @@ -1,441 +0,0 @@ -[ - { - "request": { - "body": [ - { - "destType": "CLEVERTAP", - "userAttributes": [ - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - } - ], - "config": { - "accountId": "476550467", - "trackAnonymous": true, - "enableObjectIdMapping": false - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "CLEVERTAP", - "userAttributes": [ - { - "email": "testUser@testMail.com" - }, - { - "userId": "user_sdk2" - } - ], - "config": { - "passcode": "fbee74a147828e2932c701d19dc1f2dcfa4ac0048be3aa3a88d427090a59dc1c0fa002f1", - "trackAnonymous": true, - "enableObjectIdMapping": false - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "CLEVERTAP", - "userAttributes": [ - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - }, - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - } - ], - "config": { - "accountId": "testFail", - "passcode": "tofail", - "trackAnonymous": true, - "enableObjectIdMapping": false - } - } - ] - } - } -] diff --git a/test/deleteUsers/data/clevertap/handler_output.json b/test/deleteUsers/data/clevertap/handler_output.json deleted file mode 100644 index cff9494cef..0000000000 --- a/test/deleteUsers/data/clevertap/handler_output.json +++ /dev/null @@ -1,20 +0,0 @@ -[ - [ - { - "statusCode": 400, - "error": "Project ID and Passcode is required for delete user" - } - ], - [ - { - "statusCode": 400, - "error": "Project ID and Passcode is required for delete user" - } - ], - [ - { - "statusCode": 400, - "error": "User deletion request failed" - } - ] -] diff --git a/test/deleteUsers/data/clevertap/nw_client_data.json b/test/deleteUsers/data/clevertap/nw_client_data.json deleted file mode 100644 index 75a4f4550f..0000000000 --- a/test/deleteUsers/data/clevertap/nw_client_data.json +++ /dev/null @@ -1,177 +0,0 @@ -[ - [ - { - "type": "post", - "reqParams": [ - "https://api.clevertap.com/1/delete/profiles.json", - { - "identity": [ - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "user_sdk2" - ] - }, - { - "X-CleverTap-Account-Id": "testFail", - "X-CleverTap-Passcode": "tofail" - } - ], - "response": { - "code": 400, - "statusText": "fail", - "response": { - "data": { - "code": 400, - "message": "Bad Req", - "status": "Fail Case" - }, - "status": 400 - } - } - }, - { - "type": "post", - "reqParams": [ - "https://api.clevertap.com/1/delete/profiles.json", - { - "identity": [ - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2", - "test_user_id", - "user_sdk2" - ] - }, - { - "X-CleverTap-Account-Id": "testFail", - "X-CleverTap-Passcode": "tofail" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "rpoxy" - } - } - } - ] -] diff --git a/test/deleteUsers/data/engage/handler_input.json b/test/deleteUsers/data/engage/handler_input.json deleted file mode 100644 index c999787e60..0000000000 --- a/test/deleteUsers/data/engage/handler_input.json +++ /dev/null @@ -1,133 +0,0 @@ -[ - { - "request": { - "body": [ - { - "destType": "ENGAGE", - "userAttributes": [ - { - "userId": "1" - }, - { - "userId": "2" - }, - { - "userId": "3" - } - ], - "config": { - "publicKey": "abcd", - "privateKey": "efgh" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "ENGAGE", - "userAttributes": [ - { - "userId": "4" - }, - { - "userId": "5" - }, - { - "userId": "6" - } - ], - "config": { - "publicKey": "abcd", - "privateKey": "efgh" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "ENGAGE", - "userAttributes": [ - { - "userId": "7" - }, - { - "userId": "8" - }, - { - "userId": "9" - } - ], - "config": { - "publicKey": "abcd", - "privateKey": "efgh" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "ENGAGE", - "userAttributes": [ - { - "userId": "1" - } - ], - "config": { - "publicKey": "abcd", - "privateKey": "efgh" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "ENGAGE", - "userAttributes": [ - { - "userId": "userid1" - }, - { - "userId": "user_sdk2" - } - ], - "config": { - "privateKey": "abcd" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "ENGAGE", - "userAttributes": [ - { - "email": "testUser@testMail.com" - }, - { - "userId": "user_sdk2" - } - ], - "config": { - "publicKey": "abcd", - "privateKey": "efgh" - } - } - ] - } - } -] diff --git a/test/deleteUsers/data/engage/handler_output.json b/test/deleteUsers/data/engage/handler_output.json deleted file mode 100644 index 1c3f854391..0000000000 --- a/test/deleteUsers/data/engage/handler_output.json +++ /dev/null @@ -1,39 +0,0 @@ -[ - [ - { - "statusCode": 400, - "error": "User deletion request failed" - } - ], - [ - { - "statusCode": 400, - "error": "User deletion request failed" - } - ], - [ - { - "statusCode": 400, - "error": "User deletion request failed" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ], - - [ - { - "statusCode": 400, - "error": "Public key is a required field for user deletion" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ] -] diff --git a/test/deleteUsers/data/engage/nw_client_data.json b/test/deleteUsers/data/engage/nw_client_data.json deleted file mode 100644 index 833b440766..0000000000 --- a/test/deleteUsers/data/engage/nw_client_data.json +++ /dev/null @@ -1,197 +0,0 @@ -[ - [ - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/1", - {}, - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "code": 400, - "statusText": "fail", - "response": { - "data": { - "code": 400, - "message": "Bad Req", - "status": "Fail first" - }, - "status": 400 - } - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/2", - {}, - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "status": 200, - "statusText": "success" - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/3", - {}, - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "status": 200, - "statusText": "success" - } - } - ], - [ - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/4", - {}, - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "status": 200, - "statusText": "success" - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/5", - {}, - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "status": 200, - "statusText": "success" - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/6", - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "code": 400, - "statusText": "fail", - "response": { - "data": { - "code": 400, - "message": "Bad Req", - "status": "fail 6 " - }, - "status": 400 - } - } - } - ], - [ - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/7", - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "status": 200, - "statusText": "success" - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/8", - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "code": 400, - "statusText": "fail", - "response": { - "data": { - "code": 400, - "message": "Bad Req", - "status": "fail mid case 8" - }, - "status": 400 - } - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/9", - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "status": 200, - "statusText": "success" - } - } - ], - [ - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/1", - {}, - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "status": 200, - "statusText": "success" - } - } - ], - [ - { - "type": "delete", - "reqParams": [ - "https://api.engage.so/v1/users/user_sdk2", - {}, - { - "Content-Type": "application/json", - "Authorization": "Basic YWJjZDplZmdo" - } - ], - "response": { - "status": 200, - "statusText": "success" - } - } - ] -] diff --git a/test/deleteUsers/data/ga/handler_input.json b/test/deleteUsers/data/ga/handler_input.json deleted file mode 100644 index 7470e3cc29..0000000000 --- a/test/deleteUsers/data/ga/handler_input.json +++ /dev/null @@ -1,83 +0,0 @@ -[ - { - "getValue": { - "x-rudder-dest-info": "{\"secret\": { \"access_token\": \"valid_token\" }}" - }, - "request": { - "body": [ - { - "destType": "GA", - "userAttributes": [ - { - "userId": "test_user_1" - }, - { - "userId": "test_user_2" - } - ], - "config": { - "trackingID": "UA-123456789-5", - "useNativeSDK": false - } - } - ] - } - }, - { - "getValue": { - "x-rudder-dest-info": "{\"secret\": { \"access_token\": \"expired_token\" }}" - }, - "request": { - "body": [ - { - "destType": "GA", - "userAttributes": [ - { - "userId": "test_user_3" - }, - { - "userId": "test_user_4" - } - ], - "config": { - "trackingID": "UA-123456789-6", - "useNativeSDK": false - } - } - ] - } - }, - { - "getValue": { - "x-rudder-dest-info": "{\"secret\": { \"access_token\": \"valid_token_1\" }}" - }, - "request": { - "body": [ - { - "destType": "GA", - "userAttributes": [ - { - "userId": "test_user_5" - }, - { - "userId": "test_user_6" - }, - { - "userId": "test_user_7" - }, - { - "userId": "test_user_8" - }, - { - "userId": "test_user_9" - } - ], - "config": { - "trackingID": "UA-123456789-7", - "useNativeSDK": false - } - } - ] - } - } -] diff --git a/test/deleteUsers/data/ga/handler_output.json b/test/deleteUsers/data/ga/handler_output.json deleted file mode 100644 index db31670781..0000000000 --- a/test/deleteUsers/data/ga/handler_output.json +++ /dev/null @@ -1,21 +0,0 @@ -[ - [ - { - "statusCode": 200, - "status": "successful" - } - ], - [ - { - "statusCode": 500, - "authErrorCategory": "REFRESH_TOKEN", - "error": "invalid credentials" - } - ], - [ - { - "statusCode": 403, - "error": "Error occurred while completing deletion request: [dummy response] The parameter used to query is not correct" - } - ] -] diff --git a/test/deleteUsers/data/ga/nw_client_data.json b/test/deleteUsers/data/ga/nw_client_data.json deleted file mode 100644 index 7cbeaf726c..0000000000 --- a/test/deleteUsers/data/ga/nw_client_data.json +++ /dev/null @@ -1,316 +0,0 @@ -[ - [ - { - "type": "post", - "reqParams": [ - "https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert", - { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_1" - }, - "webPropertyId": "UA-123456789-5" - }, - { - "headers": { - "Authorization": "Bearer valid_token", - "Accept": "application/json", - "Content-Type": "application/json" - } - } - ], - "response": { - "data": { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_1" - }, - "webPropertyId": "UA-123456789-5", - "deletionRequestTime": "2022-11-04T10:39:57.933Z" - }, - "status": 200, - "statusText": "OK" - } - }, - { - "type": "post", - "reqParams": [ - "https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert", - { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_1" - }, - "webPropertyId": "UA-123456789-5" - }, - { - "headers": { - "Authorization": "Bearer valid_token", - "Accept": "application/json", - "Content-Type": "application/json" - } - } - ], - "response": { - "data": { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_2" - }, - "webPropertyId": "UA-123456789-5", - "deletionRequestTime": "2022-11-04T10:39:57.933Z" - }, - "status": 200, - "statusText": "OK" - } - } - ], - [ - { - "type": "post", - "reqParams": [ - "https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert", - { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_3" - }, - "webPropertyId": "UA-123456789-6" - }, - { - "headers": { - "Authorization": "Bearer expired_token", - "Accept": "application/json", - "Content-Type": "application/json" - } - } - ], - "response": { - "data": { - "error": { - "code": 401, - "message": "Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.", - "status": "UNAUTHENTICATED" - } - }, - "status": 200, - "statusText": "OK" - } - }, - { - "type": "post", - "reqParams": [ - "https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert", - { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_4" - }, - "webPropertyId": "UA-123456789-6" - }, - { - "headers": { - "Authorization": "Bearer expired_token", - "Accept": "application/json", - "Content-Type": "application/json" - } - } - ], - "response": { - "data": { - "error": { - "code": 401, - "message": "Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.", - "status": "UNAUTHENTICATED" - } - }, - "status": 200, - "statusText": "OK" - } - } - ], - [ - { - "type": "post", - "reqParams": [ - "https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert", - { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_5" - }, - "webPropertyId": "UA-123456789-7" - }, - { - "headers": { - "Authorization": "Bearer valid_token_1", - "Accept": "application/json", - "Content-Type": "application/json" - } - } - ], - "response": { - "data": { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_5" - }, - "webPropertyId": "UA-123456789-7", - "deletionRequestTime": "2022-11-04T10:39:57.933Z" - }, - "status": 200, - "statusText": "OK" - } - }, - { - "type": "post", - "reqParams": [ - "https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert", - { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_6" - }, - "webPropertyId": "UA-123456789-7" - }, - { - "headers": { - "Authorization": "Bearer valid_token_1", - "Accept": "application/json", - "Content-Type": "application/json" - } - } - ], - "response": { - "data": { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_6" - }, - "webPropertyId": "UA-123456789-7", - "deletionRequestTime": "2022-11-04T10:39:57.933Z" - }, - "status": 200, - "statusText": "OK" - } - }, - { - "type": "post", - "reqParams": [ - "https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert", - { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_7" - }, - "webPropertyId": "UA-123456789-7" - }, - { - "headers": { - "Authorization": "Bearer valid_token_1", - "Accept": "application/json", - "Content-Type": "application/json" - } - } - ], - "response": { - "response": { - "data": { - "error": { - "errors": [ - { - "domain": "global", - "reason": "invalidParameter", - "message": "[dummy response] The parameter used to query is not correct" - } - ], - "code": 403, - "message": "[dummy response] The parameter used to query is not correct" - } - }, - "status": 403, - "statusText": "Bad Request" - } - } - }, - { - "type": "post", - "reqParams": [ - "https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert", - { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_8" - }, - "webPropertyId": "UA-123456789-7" - }, - { - "headers": { - "Authorization": "Bearer valid_token_1", - "Accept": "application/json", - "Content-Type": "application/json" - } - } - ], - "response": { - "data": { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_8" - }, - "webPropertyId": "UA-123456789-7", - "deletionRequestTime": "2022-11-04T10:39:57.933Z" - }, - "status": 200, - "statusText": "OK" - } - }, - { - "type": "post", - "reqParams": [ - "https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert", - { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_9" - }, - "webPropertyId": "UA-123456789-7" - }, - { - "headers": { - "Authorization": "Bearer valid_token_1", - "Accept": "application/json", - "Content-Type": "application/json" - } - } - ], - "response": { - "data": { - "kind": "analytics#userDeletionRequest", - "id": { - "type": "USER_ID", - "userId": "test_user_9" - }, - "webPropertyId": "UA-123456789-7", - "deletionRequestTime": "2022-11-04T10:39:57.933Z" - }, - "status": 200, - "statusText": "OK" - } - } - ] -] diff --git a/test/deleteUsers/data/intercom/handler_input.json b/test/deleteUsers/data/intercom/handler_input.json deleted file mode 100644 index d843db83bc..0000000000 --- a/test/deleteUsers/data/intercom/handler_input.json +++ /dev/null @@ -1,90 +0,0 @@ -[ - { - "request": { - "body": [ - { - "destType": "INTERCOM", - "userAttributes": [ - { - "userId": "1" - }, - { - "userId": "12" - } - ], - "config": { - "apiKey": "API_KEY" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "INTERCOM", - "userAttributes": [ - { - "userId": "7" - }, - { - "userId": "9" - } - ], - "config": { - "apiKey": "API_KEY" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "INTERCOM", - "userAttributes": [ - { - "userId": "6188c2c5f47e464b4abf3235" - }, - { - "userId": "user_sdk2" - } - ] - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "INTERCOM", - "userAttributes": [ - { - "userId": "6188c2c5f47e464b4abf3235" - }, - { - "userId": "user_sdk2" - } - ], - "config": {} - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "INTERCOM", - "userAttributes": [{}], - "config": { - "apiKey": "a=" - } - } - ] - } - } -] diff --git a/test/deleteUsers/data/intercom/handler_output.json b/test/deleteUsers/data/intercom/handler_output.json deleted file mode 100644 index 156c6ec114..0000000000 --- a/test/deleteUsers/data/intercom/handler_output.json +++ /dev/null @@ -1,32 +0,0 @@ -[ - [ - { - "statusCode": 400, - "error": "User deletion request failed" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ], - [ - { - "statusCode": 400, - "error": "Config for deletion not present" - } - ], - [ - { - "statusCode": 400, - "error": "api key for deletion not present" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ] -] diff --git a/test/deleteUsers/data/intercom/nw_client_data.json b/test/deleteUsers/data/intercom/nw_client_data.json deleted file mode 100644 index 462a68cbfd..0000000000 --- a/test/deleteUsers/data/intercom/nw_client_data.json +++ /dev/null @@ -1,96 +0,0 @@ -[ - [ - { - "type": "post", - "reqParams": [ - "https://api.intercom.io/users/1", - { - "intercom_user_id": 1 - }, - { - "Accept": "application/json", - "Authorization": "Bearer API_KEY" - } - ], - "response": { - "code": 401, - "statusText": "Unauthorized", - "response": { - "data": { - "type": "error.list", - "request_id": "0022e6v5qc7m04jeu5pg", - "errors": [ - { - "code": "unauthorized", - "message": "Access Token Invalid" - } - ] - }, - "status": 400 - } - } - }, - { - "type": "post", - "reqParams": [ - "https://api.intercom.io/user_delete_requests", - { - "intercom_user_id": 12 - }, - { - "Accept": "application/json", - "Authorization": "Bearer API_KEY" - } - ], - "response": { - "status": 200, - "statusText": "ok", - "data": { - "id": 12 - } - } - } - ], - [ - { - "type": "post", - "reqParams": [ - "https://api.intercom.io/user_delete_requests", - { - "intercom_user_id": 7 - }, - { - "Accept": "application/json", - "Authorization": "Bearer API_KEY" - } - ], - "response": { - "status": 200, - "statusText": "ok", - "data": { - "id": 7 - } - } - }, - { - "type": "post", - "reqParams": [ - "https://api.intercom.io/user_delete_requests", - { - "intercom_user_id": 9 - }, - { - "Accept": "application/json", - "Authorization": "Bearer API_KEY" - } - ], - "response": { - "status": 200, - "statusText": "ok", - "data": { - "id": 9 - } - } - } - ] -] diff --git a/test/deleteUsers/data/mp/handler_input.json b/test/deleteUsers/data/mp/handler_input.json deleted file mode 100644 index 17bf5818c2..0000000000 --- a/test/deleteUsers/data/mp/handler_input.json +++ /dev/null @@ -1,3155 +0,0 @@ -[ - { - "request": { - "body": [ - { - "destType": "MP", - "userAttributes": [ - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - } - ], - "config": { - "token": "testToken", - "prefixProperties": true, - "useNativeSDK": false - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "MP", - "userAttributes": [ - { - "userId": "rudder1" - }, - { - "userId": "rudder1" - } - ], - "config": { - "token": "testToken", - "prefixProperties": true, - "useNativeSDK": false - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "MP", - "userAttributes": [ - { - "userId": "test_user_id" - }, - { - "userId": "user_sdk2" - } - ], - "config": { - "apiKey": "dummyApiKey", - "prefixProperties": true, - "useNativeSDK": false - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "MP", - "userAttributes": [ - { - "name": "test1" - } - ], - "config": { - "token": "testToken", - "prefixProperties": true, - "useNativeSDK": false - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "MP", - "userAttributes": [ - { - "userId": "rudder1" - }, - { - "userId": "rudder2" - }, - { - "userId": "rudder3" - } - ], - "config": { - "token": "test_token", - "prefixProperties": true, - "useNativeSDK": false, - "userDeletionApi": "task", - "gdprApiToken": "test_gdpr_token" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "MP", - "userAttributes": [ - { - "userId": "rudder1" - } - ], - "config": { - "token": "test_token", - "prefixProperties": true, - "useNativeSDK": false, - "userDeletionApi": "task", - "dataResidency": "eu" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "MP", - "userAttributes": [ - { - "userId": "rudder1" - } - ], - "config": { - "token": "test_token", - "prefixProperties": true, - "useNativeSDK": false, - "dataResidency": "eu" - } - } - ] - } - } -] diff --git a/test/deleteUsers/data/mp/handler_output.json b/test/deleteUsers/data/mp/handler_output.json deleted file mode 100644 index ddf8387375..0000000000 --- a/test/deleteUsers/data/mp/handler_output.json +++ /dev/null @@ -1,44 +0,0 @@ -[ - [ - { - "statusCode": 400, - "error": "User deletion request failed for `delete profile` api" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ], - [ - { - "statusCode": 400, - "error": "API Token is a required field for user deletion" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ], - [ - { - "statusCode": 400, - "error": "GDPR API Token is a required field for creating deletion task in mixpanel" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ] -] diff --git a/test/deleteUsers/data/mp/nw_client_data.json b/test/deleteUsers/data/mp/nw_client_data.json deleted file mode 100644 index 7a045d9065..0000000000 --- a/test/deleteUsers/data/mp/nw_client_data.json +++ /dev/null @@ -1,6159 +0,0 @@ -[ - [ - { - "type": "post", - "reqParams": [ - "https://api.mixpanel.com/engage", - [ - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - } - ], - { - "Content-Type": "application/json", - "Accept": "text/plain" - } - ], - "response": { - "code": 400, - "statusText": "fail", - "response": { - "data": { - "code": 400, - "message": "Bad Req", - "status": "Fail Case" - }, - "status": 400 - } - } - }, - { - "type": "post", - "reqParams": [ - "https://api.mixpanel.com/engage", - [ - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - } - ], - { - "Content-Type": "application/json", - "Accept": "text/plain" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "1" - } - } - } - ], - { - "type": "post", - "reqParams": [ - "https://api.mixpanel.com/engage", - [ - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - }, - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - } - ], - { - "Content-Type": "application/json", - "Accept": "text/plain" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "1" - } - } - }, - [ - { - "type": "post", - "reqParams": [ - "https://mixpanel.com/api/app/data-deletions/v3.0/?token=test_token", - { - "distinct_ids": ["rudder1", "rudder3"], - "compliance_type": "CCPA" - }, - { - "Content-Type": "application/json", - "Authorization": "Bearer test_gdpr_token" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "1" - } - } - }, - { - "type": "post", - "reqParams": [ - "https://mixpanel.com/api/app/data-deletions/v3.0/?token=test_token", - { - "distinct_ids": ["rudder2"], - "compliance_type": "GDPR" - }, - { - "Content-Type": "application/json", - "Authorization": "Bearer test_gdpr_token" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "1" - } - } - } - ], - { - "type": "post", - "reqParams": [ - "https://api-eu.mixpanel.com/engage", - [ - { - "$distinct_id": "rudder1", - "$token": "dummyAccessToken", - "$delete": null, - "$ignore_alias": true - } - ], - { - "Content-Type": "application/json", - "Accept": "text/plain" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": "1" - } - } - } -] diff --git a/test/deleteUsers/data/sendgrid/handler_input.json b/test/deleteUsers/data/sendgrid/handler_input.json deleted file mode 100644 index 253657dbde..0000000000 --- a/test/deleteUsers/data/sendgrid/handler_input.json +++ /dev/null @@ -1,921 +0,0 @@ -[ - { - "request": { - "body": [ - { - "destType": "SENDGRID", - "userAttributes": [ - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - } - ], - "config": { - "apiKey": "1234" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "SENDGRID", - "userAttributes": [ - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - }, - { - "userId": "test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id" - }, - { - "userId": "user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2" - } - ], - "config": { - "apiKey": "1234" - } - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "SENDGRID", - "userAttributes": [ - { - "userId": "eab57ccf-6322-498e-9338-7761c6dc0656" - }, - { - "userId": "47983ca9-7cc6-4942-8ff0-ac443g95658d" - } - ], - "config": {} - } - ] - } - }, - { - "request": { - "body": [ - { - "destType": "SENDGRID", - "userAttributes": { - "userId": "eab57ccf-6322-498e-9338-7761c6dc0656" - }, - "config": { - "apiKey": "1234" - } - } - ] - } - } -] diff --git a/test/deleteUsers/data/sendgrid/handler_output.json b/test/deleteUsers/data/sendgrid/handler_output.json deleted file mode 100644 index 201821f50a..0000000000 --- a/test/deleteUsers/data/sendgrid/handler_output.json +++ /dev/null @@ -1,26 +0,0 @@ -[ - [ - { - "statusCode": 400, - "error": "User deletion request failed" - } - ], - [ - { - "statusCode": 200, - "status": "successful" - } - ], - [ - { - "statusCode": 400, - "error": "apiKey is required for deleting user" - } - ], - [ - { - "statusCode": 400, - "error": "userAttributes is not an array" - } - ] -] diff --git a/test/deleteUsers/data/sendgrid/nw_client_data.json b/test/deleteUsers/data/sendgrid/nw_client_data.json deleted file mode 100644 index e6bc96bb7f..0000000000 --- a/test/deleteUsers/data/sendgrid/nw_client_data.json +++ /dev/null @@ -1,117 +0,0 @@ -[ - [ - { - "type": "delete", - "reqParams": [ - "https://api.sendgrid.com/v3/marketing/contacts?ids=[batch1]", - { - "Authorization": "Bearer 1234" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - "message": { - "job_id": "bb33b1f9-e7d6-4a6c-bf1c-a2143275e257" - } - } - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.sendgrid.com/v3/marketing/contacts?ids=[batch2]", - { - "Authorization": "Bearer 1234" - } - ], - "response": { - "code": 400, - "statusText": "fail", - "response": { - "data": { - "code": 400, - "message": "Bad Req", - "status": "Fail Case" - }, - "status": 400 - } - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.sendgrid.com/v3/marketing/contacts?ids=[batch3]", - { - "Authorization": "Bearer 1234" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": { - "job_id": "bb33b1f9-e7d6-4a6c-bf1c-a2143275e257" - } - } - } - } - ], - [ - { - "type": "delete", - "reqParams": [ - "https://api.sendgrid.com/v3/marketing/contacts?ids=[batch1]", - { - "Authorization": "Bearer 1234" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - "message": { - "job_id": "bb33b1f9-e7d6-4a6c-bf1c-a2143275e257" - } - } - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.sendgrid.com/v3/marketing/contacts?ids=[batch2]", - { - "Authorization": "Bearer 1234" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": { - "job_id": "bb33b1f9-e7d6-4a6c-bf1c-a2143275e257" - } - } - } - }, - { - "type": "delete", - "reqParams": [ - "https://api.sendgrid.com/v3/marketing/contacts?ids=[batch3]", - { - "Authorization": "Bearer 1234" - } - ], - "response": { - "status": 200, - "statusText": "OK", - "data": { - " message": { - "job_id": "bb33b1f9-e7d6-4a6c-bf1c-a2143275e257" - } - } - } - } - ] -] diff --git a/test/deleteUsers/deleteUsers.test.ts b/test/deleteUsers/deleteUsers.test.ts deleted file mode 100644 index 18cebc7085..0000000000 --- a/test/deleteUsers/deleteUsers.test.ts +++ /dev/null @@ -1,67 +0,0 @@ -const name = 'DeleteUsers'; -import logger from '../../src/logger'; -import { formAxiosMock, validateMockAxiosClientReqParams } from '../__mocks__/gen-axios.mock'; -const deleteUserDestinations = [ - 'am', - 'braze', - 'intercom', - 'mp', - 'af', - 'clevertap', - 'engage', - 'ga', - 'sendgrid', -]; -// Note: Useful for troubleshooting not to be used in production -const exclusionDestList: string[] = []; -import RegulationController from '../../src/controllers/regulation'; - -// delete user tests -deleteUserDestinations - .filter((d) => !exclusionDestList.includes(d)) - .forEach((destination) => { - const inputData = require(`./data/${destination}/handler_input.json`); - const expectedData = require(`./data/${destination}/handler_output.json`); - - let axiosResponses; - describe(`${name} Tests: ${destination}`, () => { - jest.unmock('axios'); - beforeAll(() => { - try { - axiosResponses = require(`./data/${destination}/nw_client_data.json`); - } catch (error) { - // Do nothing - logger.error(`Error while reading /${destination}/nw_client_data.json: ${error}`); - } - if (Array.isArray(axiosResponses)) { - formAxiosMock(axiosResponses); - } else { - // backward compatibility - jest.mock('axios'); - } - }); - - inputData.forEach((input, index) => { - it(`Payload - ${index}`, async () => { - try { - input.get = jest.fn((destInfoKey) => { - return input.getValue && input.getValue[destInfoKey]; - }); - - const output = await RegulationController.deleteUsers(input); - // validate the axios arguments - if (Array.isArray(axiosResponses) && Array.isArray(axiosResponses[index])) { - axiosResponses[index].forEach((axsRsp) => { - validateMockAxiosClientReqParams({ - resp: axsRsp, - }); - }); - } - expect(output.body).toEqual(expectedData[index]); - } catch (error: any) { - expect(error.message).toEqual(expectedData[index].error); - } - }); - }); - }); - }); diff --git a/test/integrations/component.test.ts b/test/integrations/component.test.ts index 374649dfad..5e011e4115 100644 --- a/test/integrations/component.test.ts +++ b/test/integrations/component.test.ts @@ -1,21 +1,51 @@ import { join } from 'path'; import Koa from 'koa'; import request from 'supertest'; +// Mocking of axios calls +import axios from 'axios'; +// new-library we are using import bodyParser from 'koa-bodyparser'; import { Command } from 'commander'; import { createHttpTerminator } from 'http-terminator'; -import { TestCaseData } from './testTypes'; +import { MockHttpCallsData, TestCaseData } from './testTypes'; import { applicationRoutes } from '../../src/routes/index'; -import { getTestDataFilePaths, getTestData } from './testUtils'; -import tags from '../../src/v0/util/tags'; +import MockAxiosAdapter from 'axios-mock-adapter'; +import { + getTestDataFilePaths, + getTestData, + getMockHttpCallsData, + getAllTestMockDataFilePaths, + addMock, +} from './testUtils'; +import tags, { FEATURES } from '../../src/v0/util/tags'; import { Server } from 'http'; +import { appendFileSync } from 'fs'; +import { responses } from '../testHelper'; +import utils from '../../src/v0/util'; +import isMatch from 'lodash/isMatch'; // To run single destination test cases // npm run test:ts -- component --destination=adobe_analytics + +// Use below command to generate mocks +// npm run test:ts -- component --destination=zendesk --generate=true +// npm run test:ts:component:generateNwMocks -- --destination=zendesk const command = new Command(); command.allowUnknownOption().option('-d, --destination ', 'Enter Destination Name').parse(); +// This option will only work when destination option is also provided +command + .allowUnknownOption() + .option('-g, --generate ', 'Enter "true" If you want to generate network file') + .parse(); const opts = command.opts(); +if (opts.generate === 'true' && !opts.destination) { + throw new Error('Invalid option, generate should be true for a destination'); +} + +if (opts.generate === 'true') { + process.env.GEN_AXIOS_FOR_TESTS = 'true'; +} let server: Server; @@ -31,9 +61,38 @@ beforeAll(async () => { }); afterAll(async () => { + if (opts.generate === 'true') { + const callsDataStr = responses.join('\n'); + const calls = ` + export const networkCallsData = [ + ${callsDataStr} + ] + `; + appendFileSync(join(__dirname, 'destinations', opts.destination, 'network.ts'), calls); + } await createHttpTerminator({ server }).terminate(); }); +let mock; +if (!opts.generate || opts.generate === 'false') { + // unmock already existing axios-mocking + mock = new MockAxiosAdapter(axios, { onNoMatch: 'passthrough' }); + const registerAxiosMocks = (axiosMocks: MockHttpCallsData[]) => { + axiosMocks.forEach((axiosMock) => addMock(mock, axiosMock)); + }; + // // all the axios requests will be stored in this map + const allTestMockDataFilePaths = getAllTestMockDataFilePaths(__dirname, opts.destination); + const allAxiosRequests = allTestMockDataFilePaths + .filter((d) => !d.includes('/af/')) + .map((currPath) => { + const mockNetworkCallsData: MockHttpCallsData[] = getMockHttpCallsData(currPath); + return mockNetworkCallsData; + }) + .flat(); + registerAxiosMocks(allAxiosRequests); +} + +// END const rootDir = __dirname; const allTestDataFilePaths = getTestDataFilePaths(rootDir, opts.destination); const DEFAULT_VERSION = 'v0'; @@ -65,7 +124,7 @@ const testRoute = async (route, tcData: TestCaseData) => { const outputResp = tcData.output.response || ({} as any); expect(response.status).toEqual(outputResp.status); - if (outputResp && outputResp.body) { + if (outputResp?.body) { expect(response.body).toEqual(outputResp.body); } @@ -87,7 +146,7 @@ const destinationTestHandler = async (tcData: TestCaseData) => { route = `/${join(tcData.version || DEFAULT_VERSION, 'destinations', tcData.name, 'proxy')}`; break; case tags.FEATURES.USER_DELETION: - route = 'deleteUsers'; + route = '/deleteUsers'; break; case tags.FEATURES.PROCESSOR: // Processor transformation @@ -114,8 +173,14 @@ const sourceTestHandler = async (tcData) => { // Trigger the test suites describe.each(allTestDataFilePaths)('%s Tests', (testDataPath) => { + beforeEach(() => { + jest.clearAllMocks(); + }); + // add special mocks for specific destinations const testData: TestCaseData[] = getTestData(testDataPath); test.each(testData)('$name - $module - $feature -> $description', async (tcData) => { + tcData?.mockFns?.(mock); + switch (tcData.module) { case tags.MODULES.DESTINATION: await destinationTestHandler(tcData); diff --git a/test/integrations/destinations/active_campaign/network.ts b/test/integrations/destinations/active_campaign/network.ts new file mode 100644 index 0000000000..34834096b1 --- /dev/null +++ b/test/integrations/destinations/active_campaign/network.ts @@ -0,0 +1,1966 @@ +export const networkCallsData = [ + { + httpReq: { + data: { + contact: { + email: 'jamesDoe@gmail.com', + firstName: 'James', + lastName: 'Doe', + phone: '92374162212', + }, + }, + headers: { + 'Api-Token': 'dummyApiToken', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contact/sync', + }, + httpRes: { + data: { + contact: { + cdate: '2018-09-28T13:50:41-05:00', + email: 'jamesDoe@gmail.com', + id: '2', + links: { + bounceLogs: 'https://:account.api-us1.com/api/:version/contacts/113/bounceLogs', + contactAutomations: + 'https://:account.api-us1.com/api/:version/contacts/113/contactAutomations', + contactData: 'https://:account.api-us1.com/api/:version/contacts/113/contactData', + contactDeals: 'https://:account.api-us1.com/api/:version/contacts/113/contactDeals', + contactGoals: 'https://:account.api-us1.com/api/:version/contacts/113/contactGoals', + contactLists: 'https://:account.api-us1.com/api/:version/contacts/113/contactLists', + contactLogs: 'https://:account.api-us1.com/api/:version/contacts/113/contactLogs', + contactTags: 'https://:account.api-us1.com/api/:version/contacts/113/contactTags', + deals: 'https://:account.api-us1.com/api/:version/contacts/113/deals', + fieldValues: 'https://:account.api-us1.com/api/:version/contacts/113/fieldValues', + geoIps: 'https://:account.api-us1.com/api/:version/contacts/113/geoIps', + notes: 'https://:account.api-us1.com/api/:version/contacts/113/notes', + organization: 'https://:account.api-us1.com/api/:version/contacts/113/organization', + plusAppend: 'https://:account.api-us1.com/api/:version/contacts/113/plusAppend', + scoreValues: 'https://:account.api-us1.com/api/:version/contacts/113/scoreValues', + trackingLogs: 'https://:account.api-us1.com/api/:version/contacts/113/trackingLogs', + }, + organization: '', + orgid: '', + udate: '2018-09-28T13:50:41-05:00', + }, + fieldValues: [ + { + cdate: '2020-08-01T10:54:59-05:00', + contact: '113', + field: '1', + id: '11797', + links: { + field: 'https://:account.api-us1.com/api/3/fieldValues/11797/field', + owner: 'https://:account.api-us1.com/api/3/fieldValues/11797/owner', + }, + owner: '113', + udate: '2020-08-01T14:13:34-05:00', + value: 'The Value for First Field', + }, + { + cdate: '2020-08-01T10:54:59-05:00', + contact: '113', + field: '6', + id: '11798', + links: { + field: 'https://:account.api-us1.com/api/3/fieldValues/11798/field', + owner: 'https://:account.api-us1.com/api/3/fieldValues/11798/owner', + }, + owner: '113', + udate: '2020-08-01T14:13:34-05:00', + value: '2008-01-20', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + headers: { + 'Api-Token': 'dummyApiToken', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://active.campaigns.rudder.com/api/3/tags?limit=100', + }, + httpRes: { + data: { + meta: { total: '5' }, + tag: { + cdate: '2018-09-29T19:21:25-05:00', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/16/contactGoalTags', + }, + }, + tags: [ + { + cdate: '2018-08-17T09:43:15-05:00', + description: '', + id: '1', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/1/contactGoalTags', + }, + tag: 'one', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:16-05:00', + description: '', + id: '2', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/2/contactGoalTags', + }, + tag: 'two', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:18-05:00', + description: '', + id: '3', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/3/contactGoalTags', + }, + tag: 'three', + tagType: 'contact', + }, + { + cdate: '2018-08-28T11:54:36-05:00', + description: '', + id: '4', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/4/contactGoalTags', + }, + tag: 'test1', + tagType: 'template', + }, + { + cdate: '2018-08-28T11:54:38-05:00', + description: '', + id: '5', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/5/contactGoalTags', + }, + tag: 'DIY_Hobby', + tagType: 'template', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + data: { tag: { description: '', tag: 'Test_User', tagType: 'contact' } }, + headers: { + 'Api-Token': 'dummyApiToken', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/tags', + }, + httpRes: { + data: { + meta: { total: '5' }, + tag: { + cdate: '2018-09-29T19:21:25-05:00', + description: '', + id: 1, + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/16/contactGoalTags', + }, + tag: 'Test_User', + tagType: 'contact', + }, + tags: [ + { + cdate: '2018-08-17T09:43:15-05:00', + description: '', + id: '1', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/1/contactGoalTags', + }, + tag: 'one', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:16-05:00', + description: '', + id: '2', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/2/contactGoalTags', + }, + tag: 'two', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:18-05:00', + description: '', + id: '3', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/3/contactGoalTags', + }, + tag: 'three', + tagType: 'contact', + }, + { + cdate: '2018-08-28T11:54:36-05:00', + description: '', + id: '4', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/4/contactGoalTags', + }, + tag: 'test1', + tagType: 'template', + }, + { + cdate: '2018-08-28T11:54:38-05:00', + description: '', + id: '5', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/5/contactGoalTags', + }, + tag: 'DIY_Hobby', + tagType: 'template', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + data: { tag: { description: '', tag: 'Interested_User', tagType: 'contact' } }, + headers: { + 'Api-Token': 'dummyApiToken', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/tags', + }, + httpRes: { + data: { + meta: { total: '5' }, + tag: { + cdate: '2018-09-29T19:21:25-05:00', + description: '', + id: 2, + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/16/contactGoalTags', + }, + tag: 'Interested_User', + tagType: 'contact', + }, + tags: [ + { + cdate: '2018-08-17T09:43:15-05:00', + description: '', + id: '1', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/1/contactGoalTags', + }, + tag: 'one', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:16-05:00', + description: '', + id: '2', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/2/contactGoalTags', + }, + tag: 'two', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:18-05:00', + description: '', + id: '3', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/3/contactGoalTags', + }, + tag: 'three', + tagType: 'contact', + }, + { + cdate: '2018-08-28T11:54:36-05:00', + description: '', + id: '4', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/4/contactGoalTags', + }, + tag: 'test1', + tagType: 'template', + }, + { + cdate: '2018-08-28T11:54:38-05:00', + description: '', + id: '5', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/5/contactGoalTags', + }, + tag: 'DIY_Hobby', + tagType: 'template', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactTag: { contact: '2', tag: '5' } }, + headers: { + 'Api-Token': 'dummyApiToken', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactTags', + }, + httpRes: { + data: { + contactTag: { + cdate: '2017-06-08T16:11:53-05:00', + contact: '2', + id: 3, + links: { contact: '/1/contact', tag: '/1/tag' }, + }, + tag: '5', + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactTag: { contact: '2', tag: 1 } }, + headers: { + 'Api-Token': 'dummyApiToken', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactTags', + }, + httpRes: { + data: { + contactTag: { + cdate: '2017-06-08T16:11:53-05:00', + contact: '2', + id: 4, + links: { contact: '/1/contact', tag: '/1/tag' }, + }, + tag: 1, + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactTag: { contact: '2', tag: 2 } }, + headers: { + 'Api-Token': 'dummyApiToken', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactTags', + }, + httpRes: { + data: { + contactTag: { + cdate: '2017-06-08T16:11:53-05:00', + contact: '2', + id: 5, + links: { contact: '/1/contact', tag: '/1/tag' }, + }, + tag: 2, + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactList: { contact: '2', list: 2, status: '1' } }, + headers: { + 'Api-Token': 'dummyApiToken', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactLists', + }, + httpRes: { data: { contactList: { contact: '2', list: 2, status: '1' } }, status: 200 }, + }, + { + httpReq: { + data: { contactList: { contact: '2', list: 3, status: '2' } }, + headers: { + 'Api-Token': 'dummyApiToken', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactLists', + }, + httpRes: { data: { contactList: { contact: '2', list: 3, status: '2' } }, status: 200 }, + }, + { + httpReq: { + headers: { Accept: 'application/json, text/plain, */*', 'Api-Token': 'dummyApiToken' }, + + method: 'GET', + + url: 'https://active.campaigns.rudder.com/api/3/fields?limit=100', + }, + httpRes: { + data: { + fieldOptions: [], + fieldRels: [], + fields: [ + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Random description', + id: '4', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Random', + type: 'multivalue', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Likes description', + id: '3', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Likes', + type: 'multivalue', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:43:38-06:00', + cols: '0', + defval: null, + descript: null, + id: '2', + isrequired: '0', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/2/options', + relations: 'https://:account.api-us1.com/api/:version/fields/2/relations', + }, + options: [], + ordernum: '2', + perstag: 'ANOTHER_TEST_TITLE', + relations: [], + rows: '0', + service: '', + show_in_list: '0', + title: 'Another Test Title', + type: '', + udate: '2018-11-15T21:43:38-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Country description', + id: '1', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Country', + type: 'textarea', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Office description', + id: '0', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Office', + type: 'textarea', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + ], + meta: { total: '4' }, + }, + status: 200, + }, + }, + { + httpReq: { + data: { + contact: { + email: 'jamesDoe@gmail.com', + firstName: 'James', + lastName: 'Doe', + phone: '92374162212', + }, + }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contact/sync', + }, + httpRes: { + data: { + contact: { + cdate: '2018-09-28T13:50:41-05:00', + email: 'jamesDoe@gmail.com', + id: '2', + links: { + bounceLogs: 'https://:account.api-us1.com/api/:version/contacts/113/bounceLogs', + contactAutomations: + 'https://:account.api-us1.com/api/:version/contacts/113/contactAutomations', + contactData: 'https://:account.api-us1.com/api/:version/contacts/113/contactData', + contactDeals: 'https://:account.api-us1.com/api/:version/contacts/113/contactDeals', + contactGoals: 'https://:account.api-us1.com/api/:version/contacts/113/contactGoals', + contactLists: 'https://:account.api-us1.com/api/:version/contacts/113/contactLists', + contactLogs: 'https://:account.api-us1.com/api/:version/contacts/113/contactLogs', + contactTags: 'https://:account.api-us1.com/api/:version/contacts/113/contactTags', + deals: 'https://:account.api-us1.com/api/:version/contacts/113/deals', + fieldValues: 'https://:account.api-us1.com/api/:version/contacts/113/fieldValues', + geoIps: 'https://:account.api-us1.com/api/:version/contacts/113/geoIps', + notes: 'https://:account.api-us1.com/api/:version/contacts/113/notes', + organization: 'https://:account.api-us1.com/api/:version/contacts/113/organization', + plusAppend: 'https://:account.api-us1.com/api/:version/contacts/113/plusAppend', + scoreValues: 'https://:account.api-us1.com/api/:version/contacts/113/scoreValues', + trackingLogs: 'https://:account.api-us1.com/api/:version/contacts/113/trackingLogs', + }, + organization: '', + orgid: '', + udate: '2018-09-28T13:50:41-05:00', + }, + fieldValues: [ + { + cdate: '2020-08-01T10:54:59-05:00', + contact: '113', + field: '1', + id: '11797', + links: { + field: 'https://:account.api-us1.com/api/3/fieldValues/11797/field', + owner: 'https://:account.api-us1.com/api/3/fieldValues/11797/owner', + }, + owner: '113', + udate: '2020-08-01T14:13:34-05:00', + value: 'The Value for First Field', + }, + { + cdate: '2020-08-01T10:54:59-05:00', + contact: '113', + field: '6', + id: '11798', + links: { + field: 'https://:account.api-us1.com/api/3/fieldValues/11798/field', + owner: 'https://:account.api-us1.com/api/3/fieldValues/11798/owner', + }, + owner: '113', + udate: '2020-08-01T14:13:34-05:00', + value: '2008-01-20', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactList: { contact: '2', list: 2, status: '1' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactLists', + }, + httpRes: { data: { contactList: { contact: '2', list: 2, status: '1' } }, status: 200 }, + }, + { + httpReq: { + data: { contactList: { contact: '2', list: 3, status: '2' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactLists', + }, + httpRes: { data: { contactList: { contact: '2', list: 3, status: '2' } }, status: 200 }, + }, + { + httpReq: { + headers: { Accept: 'application/json, text/plain, */*', 'Api-Token': 'dummyApiKey' }, + + method: 'GET', + + url: 'https://active.campaigns.rudder.com/api/3/fields?limit=100', + }, + httpRes: { + data: { + fieldOptions: [], + fieldRels: [], + fields: [ + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Random description', + id: '4', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Random', + type: 'multivalue', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Likes description', + id: '3', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Likes', + type: 'multivalue', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:43:38-06:00', + cols: '0', + defval: null, + descript: null, + id: '2', + isrequired: '0', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/2/options', + relations: 'https://:account.api-us1.com/api/:version/fields/2/relations', + }, + options: [], + ordernum: '2', + perstag: 'ANOTHER_TEST_TITLE', + relations: [], + rows: '0', + service: '', + show_in_list: '0', + title: 'Another Test Title', + type: '', + udate: '2018-11-15T21:43:38-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Country description', + id: '1', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Country', + type: 'textarea', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Office description', + id: '0', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Office', + type: 'textarea', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + ], + meta: { total: '4' }, + }, + status: 200, + }, + }, + { + httpReq: { + data: { + contact: { + email: 'jamesDoe@gmail.com', + firstName: 'James', + lastName: 'Doe', + phone: '92374162212', + }, + }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contact/sync', + }, + httpRes: { + data: { + contact: { + cdate: '2018-09-28T13:50:41-05:00', + email: 'jamesDoe@gmail.com', + id: '2', + links: { + bounceLogs: 'https://:account.api-us1.com/api/:version/contacts/113/bounceLogs', + contactAutomations: + 'https://:account.api-us1.com/api/:version/contacts/113/contactAutomations', + contactData: 'https://:account.api-us1.com/api/:version/contacts/113/contactData', + contactDeals: 'https://:account.api-us1.com/api/:version/contacts/113/contactDeals', + contactGoals: 'https://:account.api-us1.com/api/:version/contacts/113/contactGoals', + contactLists: 'https://:account.api-us1.com/api/:version/contacts/113/contactLists', + contactLogs: 'https://:account.api-us1.com/api/:version/contacts/113/contactLogs', + contactTags: 'https://:account.api-us1.com/api/:version/contacts/113/contactTags', + deals: 'https://:account.api-us1.com/api/:version/contacts/113/deals', + fieldValues: 'https://:account.api-us1.com/api/:version/contacts/113/fieldValues', + geoIps: 'https://:account.api-us1.com/api/:version/contacts/113/geoIps', + notes: 'https://:account.api-us1.com/api/:version/contacts/113/notes', + organization: 'https://:account.api-us1.com/api/:version/contacts/113/organization', + plusAppend: 'https://:account.api-us1.com/api/:version/contacts/113/plusAppend', + scoreValues: 'https://:account.api-us1.com/api/:version/contacts/113/scoreValues', + trackingLogs: 'https://:account.api-us1.com/api/:version/contacts/113/trackingLogs', + }, + organization: '', + orgid: '', + udate: '2018-09-28T13:50:41-05:00', + }, + fieldValues: [ + { + cdate: '2020-08-01T10:54:59-05:00', + contact: '113', + field: '1', + id: '11797', + links: { + field: 'https://:account.api-us1.com/api/3/fieldValues/11797/field', + owner: 'https://:account.api-us1.com/api/3/fieldValues/11797/owner', + }, + owner: '113', + udate: '2020-08-01T14:13:34-05:00', + value: 'The Value for First Field', + }, + { + cdate: '2020-08-01T10:54:59-05:00', + contact: '113', + field: '6', + id: '11798', + links: { + field: 'https://:account.api-us1.com/api/3/fieldValues/11798/field', + owner: 'https://:account.api-us1.com/api/3/fieldValues/11798/owner', + }, + owner: '113', + udate: '2020-08-01T14:13:34-05:00', + value: '2008-01-20', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://active.campaigns.rudder.com/api/3/tags?limit=100', + }, + httpRes: { + data: { + meta: { total: '5' }, + tag: { + cdate: '2018-09-29T19:21:25-05:00', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/16/contactGoalTags', + }, + }, + tags: [ + { + cdate: '2018-08-17T09:43:15-05:00', + description: '', + id: '1', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/1/contactGoalTags', + }, + tag: 'one', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:16-05:00', + description: '', + id: '2', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/2/contactGoalTags', + }, + tag: 'two', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:18-05:00', + description: '', + id: '3', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/3/contactGoalTags', + }, + tag: 'three', + tagType: 'contact', + }, + { + cdate: '2018-08-28T11:54:36-05:00', + description: '', + id: '4', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/4/contactGoalTags', + }, + tag: 'test1', + tagType: 'template', + }, + { + cdate: '2018-08-28T11:54:38-05:00', + description: '', + id: '5', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/5/contactGoalTags', + }, + tag: 'DIY_Hobby', + tagType: 'template', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + data: { tag: { description: '', tag: 'Test_User', tagType: 'contact' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/tags', + }, + httpRes: { + data: { + meta: { total: '5' }, + tag: { + cdate: '2018-09-29T19:21:25-05:00', + description: '', + id: 6, + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/16/contactGoalTags', + }, + tag: 'Test_User', + tagType: 'contact', + }, + tags: [ + { + cdate: '2018-08-17T09:43:15-05:00', + description: '', + id: '1', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/1/contactGoalTags', + }, + tag: 'one', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:16-05:00', + description: '', + id: '2', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/2/contactGoalTags', + }, + tag: 'two', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:18-05:00', + description: '', + id: '3', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/3/contactGoalTags', + }, + tag: 'three', + tagType: 'contact', + }, + { + cdate: '2018-08-28T11:54:36-05:00', + description: '', + id: '4', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/4/contactGoalTags', + }, + tag: 'test1', + tagType: 'template', + }, + { + cdate: '2018-08-28T11:54:38-05:00', + description: '', + id: '5', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/5/contactGoalTags', + }, + tag: 'DIY_Hobby', + tagType: 'template', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + data: { tag: { description: '', tag: 'Interested_User', tagType: 'contact' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/tags', + }, + httpRes: { + data: { + meta: { total: '5' }, + tag: { + cdate: '2018-09-29T19:21:25-05:00', + description: '', + id: 7, + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/16/contactGoalTags', + }, + tag: 'Interested_User', + tagType: 'contact', + }, + tags: [ + { + cdate: '2018-08-17T09:43:15-05:00', + description: '', + id: '1', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/1/contactGoalTags', + }, + tag: 'one', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:16-05:00', + description: '', + id: '2', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/2/contactGoalTags', + }, + tag: 'two', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:18-05:00', + description: '', + id: '3', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/3/contactGoalTags', + }, + tag: 'three', + tagType: 'contact', + }, + { + cdate: '2018-08-28T11:54:36-05:00', + description: '', + id: '4', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/4/contactGoalTags', + }, + tag: 'test1', + tagType: 'template', + }, + { + cdate: '2018-08-28T11:54:38-05:00', + description: '', + id: '5', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/5/contactGoalTags', + }, + tag: 'DIY_Hobby', + tagType: 'template', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactTag: { contact: '2', tag: '5' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactTags', + }, + httpRes: { + data: { + contactTag: { + cdate: '2017-06-08T16:11:53-05:00', + contact: '2', + id: 8, + links: { contact: '/1/contact', tag: '/1/tag' }, + }, + tag: '5', + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactTag: { contact: '2', tag: 6 } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactTags', + }, + httpRes: { + data: { + contactTag: { + cdate: '2017-06-08T16:11:53-05:00', + contact: '2', + id: 9, + links: { contact: '/1/contact', tag: '/1/tag' }, + }, + tag: 6, + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactTag: { contact: '2', tag: 7 } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactTags', + }, + httpRes: { + data: { + contactTag: { + cdate: '2017-06-08T16:11:53-05:00', + contact: '2', + id: 10, + links: { contact: '/1/contact', tag: '/1/tag' }, + }, + tag: 7, + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactList: { contact: '2', list: 2, status: '1' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactLists', + }, + httpRes: { data: { contactList: { contact: '2', list: 2, status: '1' } }, status: 200 }, + }, + { + httpReq: { + data: { contactList: { contact: '2', list: 3, status: '2' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactLists', + }, + httpRes: { data: { contactList: { contact: '2', list: 3, status: '2' } }, status: 200 }, + }, + { + httpReq: { + headers: { Accept: 'application/json, text/plain, */*', 'Api-Token': 'dummyApiKey' }, + + method: 'GET', + + url: 'https://active.campaigns.rudder.com/api/3/fields?limit=100', + }, + httpRes: { + data: { + fieldOptions: [], + fieldRels: [], + fields: [ + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Random description', + id: '4', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Random', + type: 'multivalue', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Likes description', + id: '3', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Likes', + type: 'multivalue', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:43:38-06:00', + cols: '0', + defval: null, + descript: null, + id: '2', + isrequired: '0', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/2/options', + relations: 'https://:account.api-us1.com/api/:version/fields/2/relations', + }, + options: [], + ordernum: '2', + perstag: 'ANOTHER_TEST_TITLE', + relations: [], + rows: '0', + service: '', + show_in_list: '0', + title: 'Another Test Title', + type: '', + udate: '2018-11-15T21:43:38-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Country description', + id: '1', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Country', + type: 'textarea', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Office description', + id: '0', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Office', + type: 'textarea', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + ], + meta: { total: '4' }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + 'Api-Token': 'dummyApiKey', + + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://active.campaigns.rudder.com/api/3/eventTrackingEvents', + }, + httpRes: { + data: { + eventTrackingEvents: [{ name: '__pagevisit' }, { name: '__redir' }], + meta: { total: 2 }, + }, + status: 200, + }, + }, + { + httpReq: { + data: { eventTrackingEvent: { name: 'ScreenViewed' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/eventTrackingEvents', + }, + httpRes: { data: { eventTrackingEvent: { name: 'ScreenViewed' } }, status: 201 }, + }, + { + httpReq: { + headers: { 'Api-Token': 'dummyApiKey', Accept: 'application/json, text/plain, */*' }, + + method: 'GET', + + url: 'https://active.campaigns.rudder.com/api/3/eventTrackingEvents', + }, + httpRes: { + data: { + eventTrackingEvents: [{ name: '__pagevisit' }, { name: '__redir' }], + meta: { total: 2 }, + }, + status: 200, + }, + }, + { + httpReq: { + data: { eventTrackingEvent: { name: 'Tracking Action' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/eventTrackingEvents', + }, + httpRes: { data: { eventTrackingEvent: { name: 'Tracking Action' } }, status: 201 }, + }, + { + httpReq: { + data: { contact: { email: 'jamesDoe@gmail.com', phone: '92374162212' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contact/sync', + }, + httpRes: { + data: { + contact: { + cdate: '2018-09-28T13:50:41-05:00', + email: 'jamesDoe@gmail.com', + id: '2', + links: { + bounceLogs: 'https://:account.api-us1.com/api/:version/contacts/113/bounceLogs', + contactAutomations: + 'https://:account.api-us1.com/api/:version/contacts/113/contactAutomations', + contactData: 'https://:account.api-us1.com/api/:version/contacts/113/contactData', + contactDeals: 'https://:account.api-us1.com/api/:version/contacts/113/contactDeals', + contactGoals: 'https://:account.api-us1.com/api/:version/contacts/113/contactGoals', + contactLists: 'https://:account.api-us1.com/api/:version/contacts/113/contactLists', + contactLogs: 'https://:account.api-us1.com/api/:version/contacts/113/contactLogs', + contactTags: 'https://:account.api-us1.com/api/:version/contacts/113/contactTags', + deals: 'https://:account.api-us1.com/api/:version/contacts/113/deals', + fieldValues: 'https://:account.api-us1.com/api/:version/contacts/113/fieldValues', + geoIps: 'https://:account.api-us1.com/api/:version/contacts/113/geoIps', + notes: 'https://:account.api-us1.com/api/:version/contacts/113/notes', + organization: 'https://:account.api-us1.com/api/:version/contacts/113/organization', + plusAppend: 'https://:account.api-us1.com/api/:version/contacts/113/plusAppend', + scoreValues: 'https://:account.api-us1.com/api/:version/contacts/113/scoreValues', + trackingLogs: 'https://:account.api-us1.com/api/:version/contacts/113/trackingLogs', + }, + organization: '', + orgid: '', + udate: '2018-09-28T13:50:41-05:00', + }, + fieldValues: [ + { + cdate: '2020-08-01T10:54:59-05:00', + contact: '113', + field: '1', + id: '11797', + links: { + field: 'https://:account.api-us1.com/api/3/fieldValues/11797/field', + owner: 'https://:account.api-us1.com/api/3/fieldValues/11797/owner', + }, + owner: '113', + udate: '2020-08-01T14:13:34-05:00', + value: 'The Value for First Field', + }, + { + cdate: '2020-08-01T10:54:59-05:00', + contact: '113', + field: '6', + id: '11798', + links: { + field: 'https://:account.api-us1.com/api/3/fieldValues/11798/field', + owner: 'https://:account.api-us1.com/api/3/fieldValues/11798/owner', + }, + owner: '113', + udate: '2020-08-01T14:13:34-05:00', + value: '2008-01-20', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://active.campaigns.rudder.com/api/3/tags?limit=100', + }, + httpRes: { + data: { + meta: { total: '5' }, + tag: { + cdate: '2018-09-29T19:21:25-05:00', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/16/contactGoalTags', + }, + }, + tags: [ + { + cdate: '2018-08-17T09:43:15-05:00', + description: '', + id: '1', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/1/contactGoalTags', + }, + tag: 'one', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:16-05:00', + description: '', + id: '2', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/2/contactGoalTags', + }, + tag: 'two', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:18-05:00', + description: '', + id: '3', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/3/contactGoalTags', + }, + tag: 'three', + tagType: 'contact', + }, + { + cdate: '2018-08-28T11:54:36-05:00', + description: '', + id: '4', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/4/contactGoalTags', + }, + tag: 'test1', + tagType: 'template', + }, + { + cdate: '2018-08-28T11:54:38-05:00', + description: '', + id: '5', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/5/contactGoalTags', + }, + tag: 'DIY_Hobby', + tagType: 'template', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + data: { tag: { description: '', tag: 'Test_User', tagType: 'contact' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/tags', + }, + httpRes: { + data: { + meta: { total: '5' }, + tag: { + cdate: '2018-09-29T19:21:25-05:00', + description: '', + id: 11, + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/16/contactGoalTags', + }, + tag: 'Test_User', + tagType: 'contact', + }, + tags: [ + { + cdate: '2018-08-17T09:43:15-05:00', + description: '', + id: '1', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/1/contactGoalTags', + }, + tag: 'one', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:16-05:00', + description: '', + id: '2', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/2/contactGoalTags', + }, + tag: 'two', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:18-05:00', + description: '', + id: '3', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/3/contactGoalTags', + }, + tag: 'three', + tagType: 'contact', + }, + { + cdate: '2018-08-28T11:54:36-05:00', + description: '', + id: '4', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/4/contactGoalTags', + }, + tag: 'test1', + tagType: 'template', + }, + { + cdate: '2018-08-28T11:54:38-05:00', + description: '', + id: '5', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/5/contactGoalTags', + }, + tag: 'DIY_Hobby', + tagType: 'template', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + data: { tag: { description: '', tag: 'Interested_User', tagType: 'contact' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/tags', + }, + httpRes: { + data: { + meta: { total: '5' }, + tag: { + cdate: '2018-09-29T19:21:25-05:00', + description: '', + id: 12, + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/16/contactGoalTags', + }, + tag: 'Interested_User', + tagType: 'contact', + }, + tags: [ + { + cdate: '2018-08-17T09:43:15-05:00', + description: '', + id: '1', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/1/contactGoalTags', + }, + tag: 'one', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:16-05:00', + description: '', + id: '2', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/2/contactGoalTags', + }, + tag: 'two', + tagType: 'contact', + }, + { + cdate: '2018-08-17T13:41:18-05:00', + description: '', + id: '3', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/3/contactGoalTags', + }, + tag: 'three', + tagType: 'contact', + }, + { + cdate: '2018-08-28T11:54:36-05:00', + description: '', + id: '4', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/4/contactGoalTags', + }, + tag: 'test1', + tagType: 'template', + }, + { + cdate: '2018-08-28T11:54:38-05:00', + description: '', + id: '5', + links: { + contactGoalTags: 'https://:account.api-us1.com/api/:version/tags/5/contactGoalTags', + }, + tag: 'DIY_Hobby', + tagType: 'template', + }, + ], + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactTag: { contact: '2', tag: '5' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactTags', + }, + httpRes: { + data: { + contactTag: { + cdate: '2017-06-08T16:11:53-05:00', + contact: '2', + id: 13, + links: { contact: '/1/contact', tag: '/1/tag' }, + }, + tag: '5', + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactTag: { contact: '2', tag: 11 } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactTags', + }, + httpRes: { + data: { + contactTag: { + cdate: '2017-06-08T16:11:53-05:00', + contact: '2', + id: 14, + links: { contact: '/1/contact', tag: '/1/tag' }, + }, + tag: 11, + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactTag: { contact: '2', tag: 12 } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactTags', + }, + httpRes: { + data: { + contactTag: { + cdate: '2017-06-08T16:11:53-05:00', + contact: '2', + id: 15, + links: { contact: '/1/contact', tag: '/1/tag' }, + }, + tag: 12, + }, + status: 201, + }, + }, + { + httpReq: { + data: { contactList: { contact: '2', list: 2, status: '1' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactLists', + }, + httpRes: { data: { contactList: { contact: '2', list: 2, status: '1' } }, status: 200 }, + }, + { + httpReq: { + data: { contactList: { contact: '2', list: 3, status: '2' } }, + headers: { + 'Api-Token': 'dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'POST', + + url: 'https://active.campaigns.rudder.com/api/3/contactLists', + }, + httpRes: { data: { contactList: { contact: '2', list: 3, status: '2' } }, status: 200 }, + }, + { + httpReq: { + headers: { Accept: 'application/json, text/plain, */*', 'Api-Token': 'dummyApiKey' }, + + method: 'GET', + + url: 'https://active.campaigns.rudder.com/api/3/fields?limit=100', + }, + httpRes: { + data: { + fieldOptions: [], + fieldRels: [], + fields: [ + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Random description', + id: '4', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Random', + type: 'multivalue', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Likes description', + id: '3', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Likes', + type: 'multivalue', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:43:38-06:00', + cols: '0', + defval: null, + descript: null, + id: '2', + isrequired: '0', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/2/options', + relations: 'https://:account.api-us1.com/api/:version/fields/2/relations', + }, + options: [], + ordernum: '2', + perstag: 'ANOTHER_TEST_TITLE', + relations: [], + rows: '0', + service: '', + show_in_list: '0', + title: 'Another Test Title', + type: '', + udate: '2018-11-15T21:43:38-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Country description', + id: '1', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Country', + type: 'textarea', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + { + cdate: '2018-11-15T21:42:40-06:00', + cols: '2', + defval: 'Defaut Value', + descript: 'Office description', + id: '0', + isrequired: '1', + links: { + options: 'https://:account.api-us1.com/api/:version/fields/1/options', + relations: 'https://:account.api-us1.com/api/:version/fields/1/relations', + }, + options: [], + ordernum: '3', + perstag: 'PERSONALIZEDTAG', + relations: [], + rows: '2', + service: 'google', + show_in_list: '1', + title: 'Office', + type: 'textarea', + udate: '2018-11-15T21:49:52-06:00', + visible: '1', + }, + ], + meta: { total: '4' }, + }, + status: 200, + }, + }, +]; diff --git a/test/integrations/destinations/af/deleteUsers/data.ts b/test/integrations/destinations/af/deleteUsers/data.ts new file mode 100644 index 0000000000..c552b79f67 --- /dev/null +++ b/test/integrations/destinations/af/deleteUsers/data.ts @@ -0,0 +1,302 @@ +import { cloneDeep } from 'lodash'; +import { FEATURES } from '../../../../../src/v0/util/tags'; +import { networkCallsData } from '../network'; +import { addMock } from '../../../testUtils'; +import MockAdapter from 'axios-mock-adapter'; +import utils from '../../../../../src/v0/util'; + +const defaultMockFns = () => { + jest.spyOn(Date.prototype, 'toISOString').mockReturnValue('2023-09-24T11:22:24.018Z'); + jest.spyOn(utils, 'generateUUID').mockReturnValue('97fcd7b2-cc24-47d7-b776-057b7b199513'); +}; + +const requests = [ + { + request: { + body: [ + { + destType: 'AF', + userAttributes: [ + { + userId: 'test_user_id', + appsflyer_id: 'jklhajksfh', + }, + { + userId: 'user_sdk2', + appsflyer_id: 'jklhajksfh', + }, + ], + config: { + devKey: 'ef1d42390426e3f7c90ac78272e74344', + apiToken: 'dummyApiToken', + }, + }, + ], + }, + }, + { + request: { + body: [ + { + destType: 'AF', + userAttributes: [ + { + userId: 'test_user_id', + appsflyer_id: 'jklhajksfh', + }, + { + userId: 'user_sdk2', + appsflyer_id: 'jklhajksfh', + }, + ], + config: { + devKey: 'ef1d42390426e3f7c90ac78272e74344', + appleAppId: '123456789', + statusCallbackUrls: + 'https://examplecontroller.com/opengdpr_callbacks,https://examplecontroller.com/opengdpr_callbacks,https://examplecontroller.com/opengdpr_callbacks,https://examplecontroller.com/opengdpr_callbacks', + apiToken: 'dummyApiToken', + }, + }, + ], + }, + }, + { + request: { + body: [ + { + destType: 'AF', + userAttributes: [ + { + email: 'testUser@testMail.com', + android_advertising_id: '1234', + }, + { + userId: 'user_sdk2', + android_advertising_id: '1234', + }, + ], + config: { + devKey: 'abcde', + appleAppId: 'asdfasdf', + groupTypeTrait: 'email', + groupValueTrait: 'age', + trackProductsOnce: false, + trackRevenuePerProduct: false, + apiToken: 'dummyApiToken', + }, + }, + ], + }, + }, + { + request: { + body: [ + { + destType: 'AF', + userAttributes: [ + { + email: 'testUser@testMail.com', + ios_advertising_id: '1234', + }, + { + userId: 'user_sdk2', + ios_advertising_id: '1234', + }, + ], + config: { + devKey: 'abcde', + androidAppId: 'com.rudder.rs', + groupTypeTrait: 'email', + groupValueTrait: 'age', + trackProductsOnce: false, + trackRevenuePerProduct: false, + apiToken: 'dummyApiToken', + }, + }, + ], + }, + }, + { + request: { + body: [ + { + destType: 'AF', + userAttributes: [ + { + email: 'testUser@testMail.com', + userId: 'user1234', + }, + { + userId: 'user_sdk2', + ios_advertising_id: '1234', + }, + ], + config: { + devKey: 'abcde', + androidAppId: 'com.rudder.rs', + groupTypeTrait: 'email', + groupValueTrait: 'age', + trackProductsOnce: false, + trackRevenuePerProduct: false, + apiToken: 'dummyApiToken', + }, + }, + ], + }, + }, +]; +const resultBodies = [ + [ + { + statusCode: 400, + error: + 'API Token and one of Apple ID or Android App Id are required fields for user deletion', + }, + ], + [ + { + statusCode: 400, + error: 'You can send utmost 3 callBackUrls', + }, + ], + [ + { + statusCode: 400, + error: 'androidAppId is required for android_advertising_id type identifier', + }, + ], + [ + { + statusCode: 400, + error: 'appleAppId is required for ios_advertising_id type identifier', + }, + ], + [ + { + statusCode: 400, + error: + 'none of the possible identityTypes i.e.(ios_advertising_id, android_advertising_id, appsflyer_id) is provided for deletion', + }, + ], +]; +const parentCaseVars = { + name: 'af', + description: 'Test ', + feature: FEATURES.USER_DELETION, + module: 'destination', + version: 'v0', + input: {}, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, +}; +const nonNetworkCases = requests.map((req, index) => { + const testCase = cloneDeep(parentCaseVars); + testCase.description = `Test ${2 + index}`; + testCase.input = req; + testCase.output.response.status = resultBodies[index][0].statusCode; + //@ts-ignore + testCase.output.response.body = resultBodies[index]; + return testCase; +}); + +export const data = [ + { + name: 'af', + description: 'Test 0', + feature: FEATURES.USER_DELETION, + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'AF', + userAttributes: [ + { + userId: 'test_user_id', + android_advertising_id: '1665148898336-5539842602053895577', + }, + ], + config: { + devKey: 'ef1d42390426e3f7c90ac78272e74344', + appleAppId: '123456789', + androidAppId: 'AnAID', + apiToken: 'dummyApiToken', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed', + }, + ], + }, + }, + mockFns: (mockAdapter: MockAdapter) => { + const nwData = networkCallsData[0]; + addMock(mockAdapter, nwData); + defaultMockFns(); + }, + }, + { + name: 'af', + description: 'Test 1', + feature: FEATURES.USER_DELETION, + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'AF', + userAttributes: [ + { + userId: 'test_user_id', + ios_advertising_id: '1665148898336-5539842602053895577', + }, + ], + config: { + devKey: 'ef1d42390426e3f7c90ac78272e74344', + appleAppId: '123456789', + androidAppId: 'AnAID', + apiToken: 'dummyApiToken', + statusCallbackUrls: 'https://examplecontroller.com/opengdpr_callbacks', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + mockFns: (mockAdapter: MockAdapter) => { + const nwData = networkCallsData[1]; + addMock(mockAdapter, nwData); + defaultMockFns(); + }, + }, + ...nonNetworkCases, +]; diff --git a/test/integrations/destinations/af/network.ts b/test/integrations/destinations/af/network.ts new file mode 100644 index 0000000000..2e9557539e --- /dev/null +++ b/test/integrations/destinations/af/network.ts @@ -0,0 +1,67 @@ +import { JSON_MIME_TYPE } from '../../../../src/v0/util/constant'; + +export const networkCallsData = [ + { + httpReq: { + method: 'post', + url: 'https://hq1.appsflyer.com/api/gdpr/v1/opendsr_request', + headers: { + 'Content-Type': JSON_MIME_TYPE, + + Authorization: 'Bearer dummyApiToken', + }, + data: { + subject_request_type: 'erasure', + subject_identities: [ + { + identity_format: 'raw', + identity_type: 'android_advertising_id', + identity_value: '1665148898336-5539842602053895577', + }, + ], + property_id: 'AnAID', + subject_request_id: '97fcd7b2-cc24-47d7-b776-057b7b199513', + submitted_time: '2023-09-24T11:22:24.018Z', + }, + }, + httpRes: { + data: { + error: { + code: 400, + af_gdpr_code: 'e411', + message: "AppID given in 'property_id' is incorrect or does not belong to your account", + }, + }, + status: 400, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://hq1.appsflyer.com/api/gdpr/v1/opendsr_request', + data: { + subject_request_type: 'erasure', + subject_identities: [ + { + identity_format: 'raw', + identity_type: 'ios_advertising_id', + identity_value: '1665148898336-5539842602053895577', + }, + ], + status_callback_urls: ['https://examplecontroller.com/opengdpr_callbacks'], + property_id: '123456789', + subject_request_id: '97fcd7b2-cc24-47d7-b776-057b7b199513', + submitted_time: '2023-09-24T11:22:24.018Z', + }, + headers: { + 'Content-Type': JSON_MIME_TYPE, + + Authorization: 'Bearer dummyApiToken', + }, + }, + httpRes: { + status: 200, + statusText: 'success', + }, + }, +]; diff --git a/test/integrations/destinations/am/deleteUsers/data.ts b/test/integrations/destinations/am/deleteUsers/data.ts new file mode 100644 index 0000000000..bd10a4d7e0 --- /dev/null +++ b/test/integrations/destinations/am/deleteUsers/data.ts @@ -0,0 +1,396 @@ +export const data = [ + { + name: 'am', + description: 'Test 0', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + jobId: '423451324652346', + destType: 'AM', + userAttributes: [ + { + userIderror: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + ], + config: { + apiKey: '1234', + apiSecret: 'abcd', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed', + }, + ], + }, + }, + }, +]; diff --git a/test/integrations/destinations/am/network.ts b/test/integrations/destinations/am/network.ts new file mode 100644 index 0000000000..81daa29621 --- /dev/null +++ b/test/integrations/destinations/am/network.ts @@ -0,0 +1,209 @@ +const deleteNwData = [ + { + httpReq: { + method: 'post', + url: 'https://amplitude.com/api/2/deletions/users', + data: { + user_ids: [ + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + ], + requester: 'RudderStack', + ignore_invalid_id: 'true', + }, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic MTIzNDphYmNk', + }, + }, + httpRes: { + data: { + code: 403, + message: 'HTTP 403: Forbidden (Invalid API Key)', + status: 'Forbidden', + }, + status: 400, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://amplitude.com/api/2/deletions/users', + data: { + user_ids: [ + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + ], + requester: 'RudderStack', + ignore_invalid_id: 'true', + }, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic MTIzNDphYmNk', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': 'Nothing scheduled due to invalid amplitude/user ids for app XXXXX', + }, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://amplitude.com/api/2/deletions/users', + data: { + userIds: ['Batch1'], + }, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic MTIzNDphYmNk', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': 'Mocking', + }, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://amplitude.com/api/2/deletions/users', + data: { + userIds: ['Batch2'], + }, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Basic MTIzNDphYmNk', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': 'Mocking', + }, + }, + }, +]; +export const networkCallsData = [...deleteNwData]; diff --git a/test/integrations/destinations/braze/deleteUsers/data.ts b/test/integrations/destinations/braze/deleteUsers/data.ts new file mode 100644 index 0000000000..cad61fd12d --- /dev/null +++ b/test/integrations/destinations/braze/deleteUsers/data.ts @@ -0,0 +1,483 @@ +export const data = [ + { + name: 'braze', + description: 'Test 0', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'BRAZE', + userAttributes: [ + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + ], + config: { + dataCenter: 'US-03', + restApiKey: '1234', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed', + }, + ], + }, + }, + }, + { + name: 'braze', + description: 'Test 1', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'BRAZE', + userAttributes: [ + { + userId: 'test_user_id10', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id18', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id51', + }, + ], + config: { + dataCenter: 'US-03', + restApiKey: '1234', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, + { + name: 'braze', + description: 'Test 2', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'BRAZE', + userAttributes: [ + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + ], + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'Config for deletion not present', + }, + ], + }, + }, + }, + { + name: 'braze', + description: 'Test 3', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'BRAZE', + userAttributes: [ + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + ], + config: { + dataCenter: 'US-03', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'data center / api key for deletion not present', + }, + ], + }, + }, + }, + { + name: 'braze', + description: 'Test 4', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'BRAZE', + userAttributes: [ + { + name: 'a', + }, + ], + config: { + restApiKey: 'b1bd90e2-d203-480a-962c-f7bb03ea0afe', + dataCenter: 'US-03', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, +]; diff --git a/test/integrations/destinations/braze/network.ts b/test/integrations/destinations/braze/network.ts new file mode 100644 index 0000000000..4dfd5fa2a5 --- /dev/null +++ b/test/integrations/destinations/braze/network.ts @@ -0,0 +1,191 @@ +const deleteNwData = [ + { + httpReq: { + method: 'post', + url: 'https://rest.iad-03.braze.com/users/delete', + data: { + external_ids: [ + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + ], + }, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + data: { + code: 400, + message: 'Bad Req', + status: 'Fail Case', + }, + status: 400, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://rest.iad-03.braze.com/users/delete', + data: { + external_ids: [ + 'test_user_id10', + 'user_sdk2', + 'test_user_id18', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + ], + }, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + deleted: 50, + message: 'success', + }, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://rest.iad-03.braze.com/users/delete', + data: { external_ids: ['test_user_id51'] }, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': { + deleted: '1', + message: 'success', + }, + }, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://rest.iad-03.braze.com/users/delete', + data: { + externalIds: ['test_user_id'], + }, + headers: { + 'Content-Type': 'application/json', + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': { + deleted: 1, + message: 'success', + }, + }, + }, + }, +]; +export const networkCallsData = [...deleteNwData]; diff --git a/test/integrations/destinations/canny/data.ts b/test/integrations/destinations/canny/data.ts index dfd6028908..3c6823ca1b 100644 --- a/test/integrations/destinations/canny/data.ts +++ b/test/integrations/destinations/canny/data.ts @@ -1,3 +1,6 @@ +import { enhanceRequestOptions } from '../../../../src/adapters/network'; +import qs from 'qs'; + export const data = [ { name: 'canny', diff --git a/test/integrations/destinations/canny/network.ts b/test/integrations/destinations/canny/network.ts new file mode 100644 index 0000000000..db1b639632 --- /dev/null +++ b/test/integrations/destinations/canny/network.ts @@ -0,0 +1,83 @@ +export const networkCallsData = [ + { + httpReq: { + headers: { + Accept: 'application/json', + 'Content-Type': 'application/x-www-form-urlencoded', + }, + data: 'apiKey=apikey123&email=test%40rudderstack.com', + method: 'POST', + url: 'https://canny.io/api/v1/users/retrieve', + }, + httpRes: { + data: { + data: { + avatarURL: 'https://canny.io/images/cddfd145056cd4bc04132ee0e7de04ee.png', + created: '2022-07-15T11:16:32.648Z', + email: 'test@rudderstack.com', + id: '52d14c90fff7c80abcd12345', + isAdmin: true, + lastActivity: '2022-07-18T14:24:43.632Z', + name: 'Rudder Test', + url: 'https://ruderstack.canny.io/admin/users/dummyUser', + userID: null, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Accept: 'application/json', + 'Content-Type': 'application/x-www-form-urlencoded', + }, + data: 'apiKey=apikey123&email=test%40rudderstack.com', + method: 'POST', + url: 'https://canny.io/api/v1/users/retrieve', + }, + httpRes: { + data: { + data: { + avatarURL: 'https://canny.io/images/cddfd145056cd4bc04132ee0e7de04ee.png', + created: '2022-07-15T11:16:32.648Z', + email: 'test@rudderstack.com', + id: '52d14c90fff7c80abcd12345', + isAdmin: true, + lastActivity: '2022-07-18T14:24:43.632Z', + name: 'Rudder Test', + url: 'https://ruderstack.canny.io/admin/users/dummyUser', + userID: null, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Accept: 'application/json', + 'Content-Type': 'application/x-www-form-urlencoded', + }, + data: 'apiKey=apikey123&email=test%40rudderstack.com', + method: 'POST', + url: 'https://canny.io/api/v1/users/retrieve', + }, + httpRes: { + data: { + data: { + avatarURL: 'https://canny.io/images/cddfd145056cd4bc04132ee0e7de04ee.png', + created: '2022-07-15T11:16:32.648Z', + email: 'test@rudderstack.com', + id: '52d14c90fff7c80abcd12345', + isAdmin: true, + lastActivity: '2022-07-18T14:24:43.632Z', + name: 'Rudder Test', + url: 'https://ruderstack.canny.io/admin/users/dummyUser', + userID: null, + }, + }, + status: 200, + }, + }, +]; diff --git a/test/integrations/destinations/clevertap/deleteUsers/data.ts b/test/integrations/destinations/clevertap/deleteUsers/data.ts new file mode 100644 index 0000000000..c0eb447a53 --- /dev/null +++ b/test/integrations/destinations/clevertap/deleteUsers/data.ts @@ -0,0 +1,495 @@ +export const data = [ + { + name: 'clevertap', + description: 'Test 0', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'CLEVERTAP', + userAttributes: [ + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + ], + config: { + accountId: '476550467', + trackAnonymous: true, + enableObjectIdMapping: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'Project ID and Passcode is required for delete user', + }, + ], + }, + }, + }, + { + name: 'clevertap', + description: 'Test 1', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'CLEVERTAP', + userAttributes: [ + { + email: 'testUser@testMail.com', + }, + { + userId: 'user_sdk2', + }, + ], + config: { + passcode: 'fbee74a147828e2932c701d19dc1f2dcfa4ac0048be3aa3a88d427090a59dc1c0fa002f1', + trackAnonymous: true, + enableObjectIdMapping: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'Project ID and Passcode is required for delete user', + }, + ], + }, + }, + }, + { + name: 'clevertap', + description: 'Test 2', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'CLEVERTAP', + userAttributes: [ + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + ], + config: { + accountId: 'testFail', + passcode: 'tofail', + trackAnonymous: true, + enableObjectIdMapping: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed', + }, + ], + }, + }, + }, +]; diff --git a/test/integrations/destinations/clevertap/network.ts b/test/integrations/destinations/clevertap/network.ts new file mode 100644 index 0000000000..458d6faba0 --- /dev/null +++ b/test/integrations/destinations/clevertap/network.ts @@ -0,0 +1,175 @@ +const deleteNwData = [ + { + httpReq: { + method: 'post', + url: 'https://api.clevertap.com/1/delete/profiles.json', + data: { + identity: [ + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'user_sdk2', + ], + }, + headers: { + 'Content-Type': 'application/json', + 'X-CleverTap-Account-Id': 'testFail', + 'X-CleverTap-Passcode': 'tofail', + }, + }, + httpRes: { + data: { + code: 400, + message: 'Bad Req', + status: 'Fail Case', + }, + status: 400, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://api.clevertap.com/1/delete/profiles.json', + data: { + identity: [ + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + 'test_user_id', + 'user_sdk2', + ], + }, + headers: { + 'Content-Type': 'application/json', + 'X-CleverTap-Account-Id': 'testFail', + 'X-CleverTap-Passcode': 'tofail', + }, + maxContentLength: 100000000, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': 'rpoxy', + }, + }, + }, +]; +export const networkCallsData = [...deleteNwData]; diff --git a/test/integrations/destinations/engage/deleteUsers/data.ts b/test/integrations/destinations/engage/deleteUsers/data.ts new file mode 100644 index 0000000000..5a6ea9d268 --- /dev/null +++ b/test/integrations/destinations/engage/deleteUsers/data.ts @@ -0,0 +1,241 @@ +export const data = [ + { + name: 'engage', + description: 'Test 0', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'ENGAGE', + userAttributes: [ + { + userId: '1', + }, + { + userId: '2', + }, + { + userId: '3', + }, + ], + config: { + publicKey: 'abcd', + privateKey: 'efgh', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed', + }, + ], + }, + }, + }, + { + name: 'engage', + description: 'Test 1', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'ENGAGE', + userAttributes: [ + { + userId: '4', + }, + { + userId: '5', + }, + { + userId: '6', + }, + ], + config: { + publicKey: 'abcd', + privateKey: 'efgh', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed', + }, + ], + }, + }, + }, + { + name: 'engage', + description: 'Test 2', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'ENGAGE', + userAttributes: [ + { + userId: '7', + }, + { + userId: '8', + }, + { + userId: '9', + }, + ], + config: { + publicKey: 'abcd', + privateKey: 'efgh', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed', + }, + ], + }, + }, + }, + { + name: 'engage', + description: 'Test 3', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'ENGAGE', + userAttributes: [ + { + userId: '12', + }, + ], + config: { + publicKey: 'abcd', + privateKey: 'efgh', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, + { + name: 'engage', + description: 'Test 4', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'ENGAGE', + userAttributes: [ + { + userId: 'userid1', + }, + { + userId: 'user_sdk2', + }, + ], + config: { + privateKey: 'abcd', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'Public key is a required field for user deletion', + }, + ], + }, + }, + }, + { + name: 'engage', + description: 'Test 5', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'ENGAGE', + userAttributes: [ + { + email: 'testUser@testMail.com', + }, + { + userId: 'user_sdk2', + }, + ], + config: { + publicKey: 'abcd', + privateKey: 'efgh', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, +]; diff --git a/test/integrations/destinations/engage/network.ts b/test/integrations/destinations/engage/network.ts new file mode 100644 index 0000000000..a675603d4e --- /dev/null +++ b/test/integrations/destinations/engage/network.ts @@ -0,0 +1,141 @@ +const deleteNwData = [ + { + httpReq: { + method: 'delete', + url: 'https://api.engage.so/v1/users/1', + }, + httpRes: { + data: { + code: 400, + message: 'Bad Req', + status: 'Fail first', + }, + status: 400, + }, + }, + { + httpReq: { + method: 'delete', + url: 'https://api.engage.so/v1/users/2', + }, + httpRes: { + status: 200, + statusText: 'success', + }, + }, + { + httpReq: { + method: 'delete', + url: 'https://api.engage.so/v1/users/3', + }, + httpRes: { + status: 200, + statusText: 'success', + }, + }, + { + httpReq: { + method: 'delete', + + url: 'https://api.engage.so/v1/users/4', + }, + httpRes: { + status: 200, + statusText: 'success', + }, + }, + { + httpReq: { + method: 'delete', + + url: 'https://api.engage.so/v1/users/5', + }, + httpRes: { + status: 200, + statusText: 'success', + }, + }, + { + httpReq: { + method: 'delete', + + url: 'https://api.engage.so/v1/users/6', + 'Content-Type': 'application/json', + Authorization: 'Basic YWJjZDplZmdo', + }, + httpRes: { + data: { + code: 400, + message: 'Bad Req', + status: 'fail 6 ', + }, + status: 400, + }, + }, + { + httpReq: { + method: 'delete', + + url: 'https://api.engage.so/v1/users/7', + 'Content-Type': 'application/json', + Authorization: 'Basic YWJjZDplZmdo', + }, + httpRes: { + status: 200, + statusText: 'success', + }, + }, + { + httpReq: { + method: 'delete', + + url: 'https://api.engage.so/v1/users/8', + 'Content-Type': 'application/json', + Authorization: 'Basic YWJjZDplZmdo', + }, + httpRes: { + data: { + code: 400, + message: 'Bad Req', + status: 'fail mid case 8', + }, + status: 400, + }, + }, + { + httpReq: { + method: 'delete', + + url: 'https://api.engage.so/v1/users/9', + 'Content-Type': 'application/json', + Authorization: 'Basic YWJjZDplZmdo', + }, + httpRes: { + status: 200, + statusText: 'success', + }, + }, + { + httpReq: { + method: 'delete', + + url: 'https://api.engage.so/v1/users/12', + }, + httpRes: { + status: 200, + statusText: 'success', + }, + }, + { + httpReq: { + method: 'delete', + + url: 'https://api.engage.so/v1/users/user_sdk2', + }, + httpRes: { + status: 200, + statusText: 'success', + }, + }, +]; +export const networkCallsData = [...deleteNwData]; diff --git a/test/integrations/destinations/ga/deleteUsers/data.ts b/test/integrations/destinations/ga/deleteUsers/data.ts new file mode 100644 index 0000000000..d11881e8fe --- /dev/null +++ b/test/integrations/destinations/ga/deleteUsers/data.ts @@ -0,0 +1,139 @@ +export const data = [ + { + name: 'ga', + description: 'Test 0', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + headers: { + 'x-rudder-dest-info': '{"secret": { "access_token": "valid_token" }}', + }, + body: [ + { + destType: 'GA', + userAttributes: [ + { + userId: 'test_user_1', + }, + { + userId: 'test_user_2', + }, + ], + config: { + trackingID: 'UA-123456789-5', + useNativeSDK: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, + { + name: 'ga', + description: 'Test 1', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + headers: { + 'x-rudder-dest-info': '{"secret": { "access_token": "expired_token" }}', + }, + body: [ + { + destType: 'GA', + userAttributes: [ + { + userId: 'test_user_3', + }, + { + userId: 'test_user_4', + }, + ], + config: { + trackingID: 'UA-123456789-6', + useNativeSDK: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 500, + body: [ + { + statusCode: 500, + authErrorCategory: 'REFRESH_TOKEN', + error: 'invalid credentials', + }, + ], + }, + }, + }, + { + name: 'ga', + description: 'Test 2', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + headers: { + 'x-rudder-dest-info': '{"secret": { "access_token": "valid_token_1" }}', + }, + body: [ + { + destType: 'GA', + userAttributes: [ + { + userId: 'test_user_5', + }, + { + userId: 'test_user_6', + }, + { + userId: 'test_user_7', + }, + { + userId: 'test_user_8', + }, + { + userId: 'test_user_9', + }, + ], + config: { + trackingID: 'UA-123456789-7', + useNativeSDK: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 403, + body: [ + { + statusCode: 403, + error: + 'Error occurred while completing deletion request: [dummy response] The parameter used to query is not correct', + }, + ], + }, + }, + }, +]; diff --git a/test/integrations/destinations/ga/network.ts b/test/integrations/destinations/ga/network.ts new file mode 100644 index 0000000000..bef0b7a047 --- /dev/null +++ b/test/integrations/destinations/ga/network.ts @@ -0,0 +1,293 @@ +const deleteNwData = [ + { + httpReq: { + method: 'post', + url: 'https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert', + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_1', + }, + webPropertyId: 'UA-123456789-5', + }, + headers: { + Authorization: 'Bearer valid_token', + Accept: 'application/json', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_1', + }, + webPropertyId: 'UA-123456789-5', + deletionRequestTime: '2022-11-04T10:39:57.933Z', + }, + status: 200, + statusText: 'OK', + }, + }, + { + httpReq: { + method: 'post', + url: 'https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert', + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_2', + }, + webPropertyId: 'UA-123456789-5', + }, + headers: { + Authorization: 'Bearer valid_token', + Accept: 'application/json', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_2', + }, + webPropertyId: 'UA-123456789-5', + deletionRequestTime: '2022-11-04T10:39:57.933Z', + }, + status: 200, + statusText: 'OK', + }, + }, + { + httpReq: { + method: 'post', + url: 'https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert', + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_3', + }, + webPropertyId: 'UA-123456789-6', + }, + headers: { + Authorization: 'Bearer expired_token', + Accept: 'application/json', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + error: { + code: 401, + message: + 'Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.', + status: 'UNAUTHENTICATED', + }, + }, + status: 200, + statusText: 'OK', + }, + }, + { + httpReq: { + method: 'post', + url: 'https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert', + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_4', + }, + webPropertyId: 'UA-123456789-6', + }, + headers: { + Authorization: 'Bearer expired_token', + Accept: 'application/json', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + error: { + code: 401, + message: + 'Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.', + status: 'UNAUTHENTICATED', + }, + }, + status: 200, + statusText: 'OK', + }, + }, + { + httpReq: { + method: 'post', + url: 'https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert', + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_5', + }, + webPropertyId: 'UA-123456789-7', + }, + headers: { + Authorization: 'Bearer valid_token_1', + Accept: 'application/json', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_5', + }, + webPropertyId: 'UA-123456789-7', + deletionRequestTime: '2022-11-04T10:39:57.933Z', + }, + status: 200, + statusText: 'OK', + }, + }, + { + httpReq: { + method: 'post', + url: 'https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert', + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_6', + }, + webPropertyId: 'UA-123456789-7', + }, + headers: { + Authorization: 'Bearer valid_token_1', + Accept: 'application/json', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_6', + }, + webPropertyId: 'UA-123456789-7', + deletionRequestTime: '2022-11-04T10:39:57.933Z', + }, + status: 200, + statusText: 'OK', + }, + }, + { + httpReq: { + method: 'post', + url: 'https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert', + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_7', + }, + webPropertyId: 'UA-123456789-7', + }, + headers: { + Authorization: 'Bearer valid_token_1', + Accept: 'application/json', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + error: { + errors: [ + { + domain: 'global', + reason: 'invalidParameter', + message: '[dummy response] The parameter used to query is not correct', + }, + ], + code: 403, + message: '[dummy response] The parameter used to query is not correct', + }, + }, + status: 403, + statusText: 'Bad Request', + }, + }, + { + httpReq: { + method: 'post', + url: 'https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert', + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_8', + }, + webPropertyId: 'UA-123456789-7', + }, + headers: { + Authorization: 'Bearer valid_token_1', + Accept: 'application/json', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_8', + }, + webPropertyId: 'UA-123456789-7', + deletionRequestTime: '2022-11-04T10:39:57.933Z', + }, + status: 200, + statusText: 'OK', + }, + }, + { + httpReq: { + method: 'post', + url: 'https://www.googleapis.com/analytics/v3/userDeletion/userDeletionRequests:upsert', + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_9', + }, + webPropertyId: 'UA-123456789-7', + }, + headers: { + Authorization: 'Bearer valid_token_1', + Accept: 'application/json', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + kind: 'analytics#userDeletionRequest', + id: { + type: 'USER_ID', + userId: 'test_user_9', + }, + webPropertyId: 'UA-123456789-7', + deletionRequestTime: '2022-11-04T10:39:57.933Z', + }, + status: 200, + statusText: 'OK', + }, + }, +]; +export const networkCallsData = [...deleteNwData]; diff --git a/test/integrations/destinations/intercom/deleteUsers/data.ts b/test/integrations/destinations/intercom/deleteUsers/data.ts new file mode 100644 index 0000000000..a45af0a98f --- /dev/null +++ b/test/integrations/destinations/intercom/deleteUsers/data.ts @@ -0,0 +1,180 @@ +export const data = [ + { + name: 'intercom', + description: 'Test 0', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'INTERCOM', + userAttributes: [ + { + userId: '1', + }, + { + userId: '12', + }, + ], + config: { + apiKey: 'API_KEY', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed', + }, + ], + }, + }, + }, + { + name: 'intercom', + description: 'Test 1', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'INTERCOM', + userAttributes: [ + { + userId: '7', + }, + { + userId: '9', + }, + ], + config: { + apiKey: 'API_KEY', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, + { + name: 'intercom', + description: 'Test 2', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'INTERCOM', + userAttributes: [ + { + userId: '6188c2c5f47e464b4abf3235', + }, + { + userId: 'user_sdk2', + }, + ], + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'Config for deletion not present', + }, + ], + }, + }, + }, + { + name: 'intercom', + description: 'Test 3', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'INTERCOM', + userAttributes: [ + { + userId: '6188c2c5f47e464b4abf3235', + }, + { + userId: 'user_sdk2', + }, + ], + config: {}, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'api key for deletion not present', + }, + ], + }, + }, + }, + { + name: 'intercom', + description: 'Test 4', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'INTERCOM', + userAttributes: [{}], + config: { + apiKey: 'a=', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, +]; diff --git a/test/integrations/destinations/intercom/network.ts b/test/integrations/destinations/intercom/network.ts new file mode 100644 index 0000000000..9f064d63ea --- /dev/null +++ b/test/integrations/destinations/intercom/network.ts @@ -0,0 +1,93 @@ +const deleteNwData = [ + { + httpReq: { + method: 'post', + url: 'https://api.intercom.io/user_delete_requests', + data: { + intercom_user_id: '1', + }, + headers: { + Accept: 'application/json', + Authorization: 'Bearer API_KEY', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + data: { + type: 'error.list', + request_id: '0022e6v5qc7m04jeu5pg', + errors: [ + { + code: 'unauthorized', + message: 'Access Token Invalid', + }, + ], + }, + status: 400, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://api.intercom.io/user_delete_requests', + data: { + intercom_user_id: '12', + }, + headers: { + Accept: 'application/json', + Authorization: 'Bearer API_KEY', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + status: 200, + statusText: 'ok', + data: { + id: 12, + }, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://api.intercom.io/user_delete_requests', + data: { + intercom_user_id: '7', + }, + headers: { + Accept: 'application/json', + Authorization: 'Bearer API_KEY', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + status: 200, + statusText: 'ok', + data: { + id: 7, + }, + }, + }, + { + httpReq: { + method: 'post', + url: 'https://api.intercom.io/user_delete_requests', + data: { + intercom_user_id: '9', + }, + headers: { + Accept: 'application/json', + Authorization: 'Bearer API_KEY', + 'Content-Type': 'application/json', + }, + }, + httpRes: { + status: 200, + statusText: 'ok', + data: { + id: 9, + }, + }, + }, +]; +export const networkCallsData = [...deleteNwData]; diff --git a/test/integrations/destinations/marketo_static_list/network.ts b/test/integrations/destinations/marketo_static_list/network.ts new file mode 100644 index 0000000000..c369e1af26 --- /dev/null +++ b/test/integrations/destinations/marketo_static_list/network.ts @@ -0,0 +1,22 @@ +export const networkCallsData = [ + { + httpReq: { + method: 'GET', + params: { + client_id: 'marketo_client_id_success', + client_secret: 'marketo_client_secret_success', + grant_type: 'client_credentials', + }, + url: 'https://marketo_acct_id_success.mktorest.com/identity/oauth/token', + }, + httpRes: { + data: { + access_token: 'access_token_success', + expires_in: 3599, + scope: 'integrations@rudderstack.com', + token_type: 'bearer', + }, + status: 200, + }, + }, +]; diff --git a/test/integrations/destinations/mautic/network.ts b/test/integrations/destinations/mautic/network.ts new file mode 100644 index 0000000000..593a630641 --- /dev/null +++ b/test/integrations/destinations/mautic/network.ts @@ -0,0 +1,3232 @@ +export const networkCallsData = [ + { + httpReq: { + headers: { + Authorization: 'Basic VGVzdFJ1ZGRlcmxhYnM0NTgyM0BnbWFpbC5jb206ZHVtbXlQYXNzd29yZA==', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://ruddertest2.mautic.net/api/contacts?where%5B0%5D%5Bcol%5D=email&where%5B0%5D%5Bexpr%5D=eq&where%5B0%5D%5Bval%5D=abc@xyz.com', + }, + httpRes: { data: { contacts: {}, total: 0 }, status: 200 }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic VGVzdFJ1ZGRlcmxhYnM0NTgyM0BnbWFpbC5jb206ZHVtbXlQYXNzd29yZA==', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://ruddertest2.mautic.net/api/contacts?where%5B0%5D%5Bcol%5D=email&where%5B0%5D%5Bexpr%5D=eq&where%5B0%5D%5Bval%5D=abc@xyz.com', + }, + httpRes: { data: { contacts: {}, total: 0 }, status: 200 }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic VGVzdFJ1ZGRlcmxhYnM0NTgyM0BnbWFpbC5jb206ZHVtbXlQYXNzd29yZA==', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://ruddertest2.mautic.net/api/contacts?where%5B0%5D%5Bcol%5D=email&where%5B0%5D%5Bexpr%5D=eq&where%5B0%5D%5Bval%5D=hijibi@gmail.com', + }, + httpRes: { + data: { + contacts: { + '247': { + color: null, + createdBy: 1, + createdByUser: 'shruti rudderlabs', + dateAdded: '2022-08-21T16:30:21+00:00', + dateIdentified: '2022-08-21T16:30:21+00:00', + dateModified: '2022-08-21T18:08:06+00:00', + doNotContact: [], + fields: { + all: { + address1: null, + address2: null, + attribution: null, + attribution_date: null, + b2b_or_b2c: null, + car_or_truck: null, + cart_status: 'Full', + city: 'kolkata', + company: null, + company_size: null, + country: 'India', + crm_id: null, + datetime: null, + email: 'hijibi@gmail.com', + facebook: null, + fax: null, + firstname: 'hijibiji', + foursquare: null, + haspurchased: '0', + id: '247', + instagram: null, + last_active: null, + lastname: 'Test', + linkedin: null, + mobile: null, + nps__recommend: 9, + phone: '123456789', + points: 123, + position: 'lead', + preferred_locale: null, + products: null, + prospect_or_customer: 'Customer', + role: 'Individual Contributor', + sandbox: '0', + skype: null, + state: null, + subscription_status: 'New', + timezone: null, + title: 'abcd', + twitter: null, + website: 'https://test.com', + zipcode: null, + }, + core: { + address1: { + alias: 'address1', + default_value: null, + group: 'core', + id: '11', + is_fixed: '1', + label: 'Address Line 1', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + address2: { + alias: 'address2', + default_value: null, + group: 'core', + id: '12', + is_fixed: '1', + label: 'Address Line 2', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + attribution: { + alias: 'attribution', + default_value: null, + group: 'core', + id: '21', + is_fixed: '1', + label: 'Attribution', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";i:4;s:9:"precision";i:2;}', + type: 'number', + value: null, + }, + attribution_date: { + alias: 'attribution_date', + default_value: null, + group: 'core', + id: '20', + is_fixed: '1', + label: 'Attribution Date', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + b2b_or_b2c: { + alias: 'b2b_or_b2c', + default_value: null, + group: 'core', + id: '47', + is_fixed: '0', + label: 'B2B or B2C', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:3:"B2B";s:5:"value";s:3:"B2B";}i:1;a:2:{s:5:"label";s:3:"B2C";s:5:"value";s:3:"B2C";}}}', + type: 'select', + value: null, + }, + car_or_truck: { + alias: 'car_or_truck', + default_value: null, + group: 'core', + id: '52', + is_fixed: '0', + label: 'Car or Truck', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"Car";s:5:"value";s:3:"Car";}i:1;a:2:{s:5:"label";s:5:"Truck";s:5:"value";s:5:"Truck";}i:2;a:2:{s:5:"label";s:4:"Both";s:5:"value";s:4:"Both";}}}', + type: 'select', + value: null, + }, + cart_status: { + alias: 'cart_status', + default_value: null, + group: 'core', + id: '55', + is_fixed: '0', + label: 'Cart Status', + normalizedValue: 'Full', + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:5:"Empty";s:5:"value";s:5:"Empty";}i:1;a:2:{s:5:"label";s:4:"Full";s:5:"value";s:4:"Full";}}}', + type: 'select', + value: 'Full', + }, + city: { + alias: 'city', + default_value: null, + group: 'core', + id: '13', + is_fixed: '1', + label: 'City', + normalizedValue: 'kolkata', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'kolkata', + }, + company: { + alias: 'company', + default_value: null, + group: 'core', + id: '4', + is_fixed: '1', + label: 'Primary company', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + company_size: { + alias: 'company_size', + default_value: null, + group: 'core', + id: '53', + is_fixed: '0', + label: 'Company size Custom', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:7:{i:0;a:2:{s:5:"label";s:15:"Less than 1,000";s:5:"value";s:15:"Less than 1,000";}i:1;a:2:{s:5:"label";s:14:"1,000 - 10,000";s:5:"value";s:14:"1,000 - 10,000";}i:2;a:2:{s:5:"label";s:16:"10,000 - 100,000";s:5:"value";s:16:"10,000 - 100,000";}i:3;a:2:{s:5:"label";s:17:"100,000 - 500,000";s:5:"value";s:17:"100,000 - 500,000";}i:4;a:2:{s:5:"label";s:12:"500,000 - 1M";s:5:"value";s:12:"500,000 - 1M";}i:5;a:2:{s:5:"label";s:7:"1M - 5M";s:5:"value";s:7:"1M - 5M";}i:6;a:2:{s:5:"label";s:3:"5M+";s:5:"value";s:3:"5M+";}}}', + type: 'select', + value: null, + }, + country: { + alias: 'country', + default_value: null, + group: 'core', + id: '16', + is_fixed: '1', + label: 'Country', + normalizedValue: 'India', + object: 'lead', + properties: 'a:0:{}', + type: 'country', + value: 'India', + }, + crm_id: { + alias: 'crm_id', + default_value: null, + group: 'core', + id: '45', + is_fixed: '0', + label: 'CRM ID', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + datetime: { + alias: 'datetime', + default_value: null, + group: 'core', + id: '50', + is_fixed: '0', + label: 'Webinar date/time signup', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + email: { + alias: 'email', + default_value: null, + group: 'core', + id: '6', + is_fixed: '1', + label: 'Email', + normalizedValue: 'hijibi@gmail.com', + object: 'lead', + properties: 'a:0:{}', + type: 'email', + value: 'hijibi@gmail.com', + }, + fax: { + alias: 'fax', + default_value: null, + group: 'core', + id: '10', + is_fixed: '0', + label: 'Fax', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + firstname: { + alias: 'firstname', + default_value: null, + group: 'core', + id: '2', + is_fixed: '1', + label: 'First Name', + normalizedValue: 'hijibiji', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'hijibiji', + }, + haspurchased: { + alias: 'haspurchased', + default_value: null, + group: 'core', + id: '46', + is_fixed: '0', + label: 'hasPurchased', + normalizedValue: 'No', + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: '0', + }, + last_active: { + alias: 'last_active', + default_value: null, + group: 'core', + id: '58', + is_fixed: '1', + label: 'Date Last Active', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + lastname: { + alias: 'lastname', + default_value: null, + group: 'core', + id: '3', + is_fixed: '1', + label: 'Last Name', + normalizedValue: 'Test', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'Test', + }, + mobile: { + alias: 'mobile', + default_value: null, + group: 'core', + id: '7', + is_fixed: '1', + label: 'Mobile', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + nps__recommend: { + alias: 'nps__recommend', + default_value: null, + group: 'core', + id: '56', + is_fixed: '0', + label: 'NPS - Recommend', + normalizedValue: 9, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";s:1:"3";s:9:"precision";s:0:"";}', + type: 'number', + value: 9, + }, + phone: { + alias: 'phone', + default_value: null, + group: 'core', + id: '8', + is_fixed: '1', + label: 'Phone', + normalizedValue: '123456789', + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: '123456789', + }, + points: { + alias: 'points', + default_value: '0', + group: 'core', + id: '9', + is_fixed: '1', + label: 'Points', + normalizedValue: 123, + object: 'lead', + properties: 'a:0:{}', + type: 'number', + value: 123, + }, + position: { + alias: 'position', + default_value: null, + group: 'core', + id: '5', + is_fixed: '1', + label: 'Position', + normalizedValue: 'lead', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'lead', + }, + preferred_locale: { + alias: 'preferred_locale', + default_value: null, + group: 'core', + id: '17', + is_fixed: '1', + label: 'Preferred Locale', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'locale', + value: null, + }, + products: { + alias: 'products', + default_value: null, + group: 'core', + id: '48', + is_fixed: '0', + label: 'Products', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:27:"Mautic Marketing Automation";s:5:"value";s:27:"Mautic Marketing Automation";}i:1;a:2:{s:5:"label";s:28:"Maven Marketing Intelligence";s:5:"value";s:28:"Maven Marketing Intelligence";}i:2;a:2:{s:5:"label";s:28:"Maestro Marketing Management";s:5:"value";s:28:"Maestro Marketing Management";}}}', + type: 'select', + value: null, + }, + prospect_or_customer: { + alias: 'prospect_or_customer', + default_value: null, + group: 'core', + id: '51', + is_fixed: '0', + label: 'Prospect or Customer', + normalizedValue: 'Customer', + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:8:"Prospect";s:5:"value";s:8:"Prospect";}i:1;a:2:{s:5:"label";s:8:"Customer";s:5:"value";s:8:"Customer";}}}', + type: 'select', + value: 'Customer', + }, + role: { + alias: 'role', + default_value: null, + group: 'core', + id: '57', + is_fixed: '0', + label: 'Role', + normalizedValue: 'Individual Contributor', + object: 'lead', + properties: + 'a:1:{s:4:"list";a:5:{i:0;a:2:{s:5:"label";s:22:"Individual Contributor";s:5:"value";s:22:"Individual Contributor";}i:1;a:2:{s:5:"label";s:7:"Manager";s:5:"value";s:7:"Manager";}i:2;a:2:{s:5:"label";s:8:"Director";s:5:"value";s:8:"Director";}i:3;a:2:{s:5:"label";s:9:"Executive";s:5:"value";s:9:"Executive";}i:4;a:2:{s:5:"label";s:10:"Consultant";s:5:"value";s:10:"Consultant";}}}', + type: 'select', + value: 'Individual Contributor', + }, + sandbox: { + alias: 'sandbox', + default_value: null, + group: 'core', + id: '54', + is_fixed: '0', + label: 'Sandbox', + normalizedValue: 'No', + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: '0', + }, + state: { + alias: 'state', + default_value: null, + group: 'core', + id: '14', + is_fixed: '1', + label: 'State', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'region', + value: null, + }, + subscription_status: { + alias: 'subscription_status', + default_value: null, + group: 'core', + id: '49', + is_fixed: '0', + label: 'Subscription Status', + normalizedValue: 'New', + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"New";s:5:"value";s:3:"New";}i:1;a:2:{s:5:"label";s:8:"Existing";s:5:"value";s:8:"Existing";}i:2;a:2:{s:5:"label";s:6:"Former";s:5:"value";s:6:"Former";}}}', + type: 'select', + value: 'New', + }, + timezone: { + alias: 'timezone', + default_value: null, + group: 'core', + id: '18', + is_fixed: '1', + label: 'Preferred Timezone', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'timezone', + value: null, + }, + title: { + alias: 'title', + default_value: null, + group: 'core', + id: '1', + is_fixed: '1', + label: 'Title', + normalizedValue: 'abcd', + object: 'lead', + properties: 'a:1:{s:4:"list";a:3:{i:0;s:2:"Mr";i:1;s:3:"Mrs";i:2;s:4:"Miss";}}', + type: 'lookup', + value: 'abcd', + }, + website: { + alias: 'website', + default_value: null, + group: 'core', + id: '22', + is_fixed: '0', + label: 'Website', + normalizedValue: 'https://test.com', + object: 'lead', + properties: 'a:0:{}', + type: 'url', + value: 'https://test.com', + }, + zipcode: { + alias: 'zipcode', + default_value: null, + group: 'core', + id: '15', + is_fixed: '1', + label: 'Zip Code', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + personal: [], + professional: [], + social: { + facebook: { + alias: 'facebook', + default_value: null, + group: 'social', + id: '23', + is_fixed: '0', + label: 'Facebook', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + foursquare: { + alias: 'foursquare', + default_value: null, + group: 'social', + id: '24', + is_fixed: '0', + label: 'Foursquare', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + instagram: { + alias: 'instagram', + default_value: null, + group: 'social', + id: '26', + is_fixed: '0', + label: 'Instagram', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + linkedin: { + alias: 'linkedin', + default_value: null, + group: 'social', + id: '27', + is_fixed: '0', + label: 'LinkedIn', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + skype: { + alias: 'skype', + default_value: null, + group: 'social', + id: '28', + is_fixed: '0', + label: 'Skype', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + twitter: { + alias: 'twitter', + default_value: null, + group: 'social', + id: '29', + is_fixed: '0', + label: 'Twitter', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + }, + frequencyRules: [], + id: 247, + ipAddresses: [ + { + id: 1, + ipAddress: '127.0.0.1', + ipDetails: { + city: '', + country: '', + extra: '', + isp: '', + latitude: '', + longitude: '', + organization: '', + region: '', + timezone: '', + zipcode: '', + }, + }, + ], + isPublished: true, + lastActive: null, + modifiedBy: 1, + modifiedByUser: 'shruti rudderlabs', + owner: null, + points: 123, + preferredProfileImage: null, + stage: null, + tags: [], + utmtags: [], + }, + }, + total: 1, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic VGVzdDQ1ODIzUnVkZGVybGFic0BnbWFpbC5jb206ZHVtbXlQYXNzd29yZA==', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://ruddertest2.mautic.net/api/contacts?where%5B0%5D%5Bcol%5D=email&where%5B0%5D%5Bexpr%5D=eq&where%5B0%5D%5Bval%5D=hijibi@gmail.com', + }, + httpRes: { + data: { + contacts: { + '247': { + color: null, + createdBy: 1, + createdByUser: 'shruti rudderlabs', + dateAdded: '2022-08-21T16:30:21+00:00', + dateIdentified: '2022-08-21T16:30:21+00:00', + dateModified: '2022-08-21T18:08:06+00:00', + doNotContact: [], + fields: { + all: { + address1: null, + address2: null, + attribution: null, + attribution_date: null, + b2b_or_b2c: null, + car_or_truck: null, + cart_status: 'Full', + city: 'kolkata', + company: null, + company_size: null, + country: 'India', + crm_id: null, + datetime: null, + email: 'hijibi@gmail.com', + facebook: null, + fax: null, + firstname: 'hijibiji', + foursquare: null, + haspurchased: '0', + id: '247', + instagram: null, + last_active: null, + lastname: 'Test', + linkedin: null, + mobile: null, + nps__recommend: 9, + phone: '123456789', + points: 123, + position: 'lead', + preferred_locale: null, + products: null, + prospect_or_customer: 'Customer', + role: 'Individual Contributor', + sandbox: '0', + skype: null, + state: null, + subscription_status: 'New', + timezone: null, + title: 'abcd', + twitter: null, + website: 'https://test.com', + zipcode: null, + }, + core: { + address1: { + alias: 'address1', + default_value: null, + group: 'core', + id: '11', + is_fixed: '1', + label: 'Address Line 1', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + address2: { + alias: 'address2', + default_value: null, + group: 'core', + id: '12', + is_fixed: '1', + label: 'Address Line 2', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + attribution: { + alias: 'attribution', + default_value: null, + group: 'core', + id: '21', + is_fixed: '1', + label: 'Attribution', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";i:4;s:9:"precision";i:2;}', + type: 'number', + value: null, + }, + attribution_date: { + alias: 'attribution_date', + default_value: null, + group: 'core', + id: '20', + is_fixed: '1', + label: 'Attribution Date', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + b2b_or_b2c: { + alias: 'b2b_or_b2c', + default_value: null, + group: 'core', + id: '47', + is_fixed: '0', + label: 'B2B or B2C', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:3:"B2B";s:5:"value";s:3:"B2B";}i:1;a:2:{s:5:"label";s:3:"B2C";s:5:"value";s:3:"B2C";}}}', + type: 'select', + value: null, + }, + car_or_truck: { + alias: 'car_or_truck', + default_value: null, + group: 'core', + id: '52', + is_fixed: '0', + label: 'Car or Truck', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"Car";s:5:"value";s:3:"Car";}i:1;a:2:{s:5:"label";s:5:"Truck";s:5:"value";s:5:"Truck";}i:2;a:2:{s:5:"label";s:4:"Both";s:5:"value";s:4:"Both";}}}', + type: 'select', + value: null, + }, + cart_status: { + alias: 'cart_status', + default_value: null, + group: 'core', + id: '55', + is_fixed: '0', + label: 'Cart Status', + normalizedValue: 'Full', + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:5:"Empty";s:5:"value";s:5:"Empty";}i:1;a:2:{s:5:"label";s:4:"Full";s:5:"value";s:4:"Full";}}}', + type: 'select', + value: 'Full', + }, + city: { + alias: 'city', + default_value: null, + group: 'core', + id: '13', + is_fixed: '1', + label: 'City', + normalizedValue: 'kolkata', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'kolkata', + }, + company: { + alias: 'company', + default_value: null, + group: 'core', + id: '4', + is_fixed: '1', + label: 'Primary company', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + company_size: { + alias: 'company_size', + default_value: null, + group: 'core', + id: '53', + is_fixed: '0', + label: 'Company size Custom', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:7:{i:0;a:2:{s:5:"label";s:15:"Less than 1,000";s:5:"value";s:15:"Less than 1,000";}i:1;a:2:{s:5:"label";s:14:"1,000 - 10,000";s:5:"value";s:14:"1,000 - 10,000";}i:2;a:2:{s:5:"label";s:16:"10,000 - 100,000";s:5:"value";s:16:"10,000 - 100,000";}i:3;a:2:{s:5:"label";s:17:"100,000 - 500,000";s:5:"value";s:17:"100,000 - 500,000";}i:4;a:2:{s:5:"label";s:12:"500,000 - 1M";s:5:"value";s:12:"500,000 - 1M";}i:5;a:2:{s:5:"label";s:7:"1M - 5M";s:5:"value";s:7:"1M - 5M";}i:6;a:2:{s:5:"label";s:3:"5M+";s:5:"value";s:3:"5M+";}}}', + type: 'select', + value: null, + }, + country: { + alias: 'country', + default_value: null, + group: 'core', + id: '16', + is_fixed: '1', + label: 'Country', + normalizedValue: 'India', + object: 'lead', + properties: 'a:0:{}', + type: 'country', + value: 'India', + }, + crm_id: { + alias: 'crm_id', + default_value: null, + group: 'core', + id: '45', + is_fixed: '0', + label: 'CRM ID', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + datetime: { + alias: 'datetime', + default_value: null, + group: 'core', + id: '50', + is_fixed: '0', + label: 'Webinar date/time signup', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + email: { + alias: 'email', + default_value: null, + group: 'core', + id: '6', + is_fixed: '1', + label: 'Email', + normalizedValue: 'hijibi@gmail.com', + object: 'lead', + properties: 'a:0:{}', + type: 'email', + value: 'hijibi@gmail.com', + }, + fax: { + alias: 'fax', + default_value: null, + group: 'core', + id: '10', + is_fixed: '0', + label: 'Fax', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + firstname: { + alias: 'firstname', + default_value: null, + group: 'core', + id: '2', + is_fixed: '1', + label: 'First Name', + normalizedValue: 'hijibiji', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'hijibiji', + }, + haspurchased: { + alias: 'haspurchased', + default_value: null, + group: 'core', + id: '46', + is_fixed: '0', + label: 'hasPurchased', + normalizedValue: 'No', + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: '0', + }, + last_active: { + alias: 'last_active', + default_value: null, + group: 'core', + id: '58', + is_fixed: '1', + label: 'Date Last Active', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + lastname: { + alias: 'lastname', + default_value: null, + group: 'core', + id: '3', + is_fixed: '1', + label: 'Last Name', + normalizedValue: 'Test', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'Test', + }, + mobile: { + alias: 'mobile', + default_value: null, + group: 'core', + id: '7', + is_fixed: '1', + label: 'Mobile', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + nps__recommend: { + alias: 'nps__recommend', + default_value: null, + group: 'core', + id: '56', + is_fixed: '0', + label: 'NPS - Recommend', + normalizedValue: 9, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";s:1:"3";s:9:"precision";s:0:"";}', + type: 'number', + value: 9, + }, + phone: { + alias: 'phone', + default_value: null, + group: 'core', + id: '8', + is_fixed: '1', + label: 'Phone', + normalizedValue: '123456789', + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: '123456789', + }, + points: { + alias: 'points', + default_value: '0', + group: 'core', + id: '9', + is_fixed: '1', + label: 'Points', + normalizedValue: 123, + object: 'lead', + properties: 'a:0:{}', + type: 'number', + value: 123, + }, + position: { + alias: 'position', + default_value: null, + group: 'core', + id: '5', + is_fixed: '1', + label: 'Position', + normalizedValue: 'lead', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'lead', + }, + preferred_locale: { + alias: 'preferred_locale', + default_value: null, + group: 'core', + id: '17', + is_fixed: '1', + label: 'Preferred Locale', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'locale', + value: null, + }, + products: { + alias: 'products', + default_value: null, + group: 'core', + id: '48', + is_fixed: '0', + label: 'Products', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:27:"Mautic Marketing Automation";s:5:"value";s:27:"Mautic Marketing Automation";}i:1;a:2:{s:5:"label";s:28:"Maven Marketing Intelligence";s:5:"value";s:28:"Maven Marketing Intelligence";}i:2;a:2:{s:5:"label";s:28:"Maestro Marketing Management";s:5:"value";s:28:"Maestro Marketing Management";}}}', + type: 'select', + value: null, + }, + prospect_or_customer: { + alias: 'prospect_or_customer', + default_value: null, + group: 'core', + id: '51', + is_fixed: '0', + label: 'Prospect or Customer', + normalizedValue: 'Customer', + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:8:"Prospect";s:5:"value";s:8:"Prospect";}i:1;a:2:{s:5:"label";s:8:"Customer";s:5:"value";s:8:"Customer";}}}', + type: 'select', + value: 'Customer', + }, + role: { + alias: 'role', + default_value: null, + group: 'core', + id: '57', + is_fixed: '0', + label: 'Role', + normalizedValue: 'Individual Contributor', + object: 'lead', + properties: + 'a:1:{s:4:"list";a:5:{i:0;a:2:{s:5:"label";s:22:"Individual Contributor";s:5:"value";s:22:"Individual Contributor";}i:1;a:2:{s:5:"label";s:7:"Manager";s:5:"value";s:7:"Manager";}i:2;a:2:{s:5:"label";s:8:"Director";s:5:"value";s:8:"Director";}i:3;a:2:{s:5:"label";s:9:"Executive";s:5:"value";s:9:"Executive";}i:4;a:2:{s:5:"label";s:10:"Consultant";s:5:"value";s:10:"Consultant";}}}', + type: 'select', + value: 'Individual Contributor', + }, + sandbox: { + alias: 'sandbox', + default_value: null, + group: 'core', + id: '54', + is_fixed: '0', + label: 'Sandbox', + normalizedValue: 'No', + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: '0', + }, + state: { + alias: 'state', + default_value: null, + group: 'core', + id: '14', + is_fixed: '1', + label: 'State', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'region', + value: null, + }, + subscription_status: { + alias: 'subscription_status', + default_value: null, + group: 'core', + id: '49', + is_fixed: '0', + label: 'Subscription Status', + normalizedValue: 'New', + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"New";s:5:"value";s:3:"New";}i:1;a:2:{s:5:"label";s:8:"Existing";s:5:"value";s:8:"Existing";}i:2;a:2:{s:5:"label";s:6:"Former";s:5:"value";s:6:"Former";}}}', + type: 'select', + value: 'New', + }, + timezone: { + alias: 'timezone', + default_value: null, + group: 'core', + id: '18', + is_fixed: '1', + label: 'Preferred Timezone', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'timezone', + value: null, + }, + title: { + alias: 'title', + default_value: null, + group: 'core', + id: '1', + is_fixed: '1', + label: 'Title', + normalizedValue: 'abcd', + object: 'lead', + properties: 'a:1:{s:4:"list";a:3:{i:0;s:2:"Mr";i:1;s:3:"Mrs";i:2;s:4:"Miss";}}', + type: 'lookup', + value: 'abcd', + }, + website: { + alias: 'website', + default_value: null, + group: 'core', + id: '22', + is_fixed: '0', + label: 'Website', + normalizedValue: 'https://test.com', + object: 'lead', + properties: 'a:0:{}', + type: 'url', + value: 'https://test.com', + }, + zipcode: { + alias: 'zipcode', + default_value: null, + group: 'core', + id: '15', + is_fixed: '1', + label: 'Zip Code', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + personal: [], + professional: [], + social: { + facebook: { + alias: 'facebook', + default_value: null, + group: 'social', + id: '23', + is_fixed: '0', + label: 'Facebook', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + foursquare: { + alias: 'foursquare', + default_value: null, + group: 'social', + id: '24', + is_fixed: '0', + label: 'Foursquare', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + instagram: { + alias: 'instagram', + default_value: null, + group: 'social', + id: '26', + is_fixed: '0', + label: 'Instagram', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + linkedin: { + alias: 'linkedin', + default_value: null, + group: 'social', + id: '27', + is_fixed: '0', + label: 'LinkedIn', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + skype: { + alias: 'skype', + default_value: null, + group: 'social', + id: '28', + is_fixed: '0', + label: 'Skype', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + twitter: { + alias: 'twitter', + default_value: null, + group: 'social', + id: '29', + is_fixed: '0', + label: 'Twitter', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + }, + frequencyRules: [], + id: 247, + ipAddresses: [ + { + id: 1, + ipAddress: '127.0.0.1', + ipDetails: { + city: '', + country: '', + extra: '', + isp: '', + latitude: '', + longitude: '', + organization: '', + region: '', + timezone: '', + zipcode: '', + }, + }, + ], + isPublished: true, + lastActive: null, + modifiedBy: 1, + modifiedByUser: 'shruti rudderlabs', + owner: null, + points: 123, + preferredProfileImage: null, + stage: null, + tags: [], + utmtags: [], + }, + }, + total: 1, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic VGVzdDQ1ODIzUnVkZGVybGFic0BnbWFpbC5jb206ZHVtbXlQYXNzd29yZA==', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://ruddertest2.mautic.net/api/contacts?where%5B0%5D%5Bcol%5D=lastname&where%5B0%5D%5Bexpr%5D=eq&where%5B0%5D%5Bval%5D=kumar', + }, + httpRes: { + data: { + contacts: { + '248': { + color: null, + createdBy: 1, + createdByUser: 'test rudderlabs', + dateAdded: '2022-08-18T12:19:27+00:00', + dateIdentified: '2022-08-18T12:19:27+00:00', + dateModified: '2022-08-23T11:46:30+00:00', + doNotContact: [], + fields: { + all: { + address1: null, + address2: null, + attribution: null, + attribution_date: null, + b2b_or_b2c: null, + car_or_truck: null, + cart_status: null, + city: null, + company: null, + company_size: null, + country: null, + crm_id: null, + datetime: null, + email: 'xyz@abc.com', + facebook: null, + fax: null, + firstname: 'rudderstack', + foursquare: null, + haspurchased: '1', + id: '248', + instagram: null, + last_active: '2022-08-23 11:46:27', + lastname: 'kumar', + linkedin: null, + mobile: null, + nps__recommend: null, + phone: null, + points: 0, + position: null, + preferred_locale: null, + products: null, + prospect_or_customer: null, + role: null, + sandbox: null, + skype: null, + state: 'Uttar Pradesh', + subscription_status: null, + timezone: null, + title: null, + twitter: null, + website: null, + zipcode: null, + }, + core: { + address1: { + alias: 'address1', + default_value: null, + group: 'core', + id: '11', + is_fixed: '1', + label: 'Address Line 1', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + address2: { + alias: 'address2', + default_value: null, + group: 'core', + id: '12', + is_fixed: '1', + label: 'Address Line 2', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + attribution: { + alias: 'attribution', + default_value: null, + group: 'core', + id: '21', + is_fixed: '1', + label: 'Attribution', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";i:4;s:9:"precision";i:2;}', + type: 'number', + value: null, + }, + attribution_date: { + alias: 'attribution_date', + default_value: null, + group: 'core', + id: '20', + is_fixed: '1', + label: 'Attribution Date', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + b2b_or_b2c: { + alias: 'b2b_or_b2c', + default_value: null, + group: 'core', + id: '47', + is_fixed: '0', + label: 'B2B or B2C', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:3:"B2B";s:5:"value";s:3:"B2B";}i:1;a:2:{s:5:"label";s:3:"B2C";s:5:"value";s:3:"B2C";}}}', + type: 'select', + value: null, + }, + car_or_truck: { + alias: 'car_or_truck', + default_value: null, + group: 'core', + id: '52', + is_fixed: '0', + label: 'Car or Truck', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"Car";s:5:"value";s:3:"Car";}i:1;a:2:{s:5:"label";s:5:"Truck";s:5:"value";s:5:"Truck";}i:2;a:2:{s:5:"label";s:4:"Both";s:5:"value";s:4:"Both";}}}', + type: 'select', + value: null, + }, + cart_status: { + alias: 'cart_status', + default_value: null, + group: 'core', + id: '55', + is_fixed: '0', + label: 'Cart Status', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:5:"Empty";s:5:"value";s:5:"Empty";}i:1;a:2:{s:5:"label";s:4:"Full";s:5:"value";s:4:"Full";}}}', + type: 'select', + value: null, + }, + city: { + alias: 'city', + default_value: null, + group: 'core', + id: '13', + is_fixed: '1', + label: 'City', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + company: { + alias: 'company', + default_value: null, + group: 'core', + id: '4', + is_fixed: '1', + label: 'Primary company', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + company_size: { + alias: 'company_size', + default_value: null, + group: 'core', + id: '53', + is_fixed: '0', + label: 'Company size Custom', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:7:{i:0;a:2:{s:5:"label";s:15:"Less than 1,000";s:5:"value";s:15:"Less than 1,000";}i:1;a:2:{s:5:"label";s:14:"1,000 - 10,000";s:5:"value";s:14:"1,000 - 10,000";}i:2;a:2:{s:5:"label";s:16:"10,000 - 100,000";s:5:"value";s:16:"10,000 - 100,000";}i:3;a:2:{s:5:"label";s:17:"100,000 - 500,000";s:5:"value";s:17:"100,000 - 500,000";}i:4;a:2:{s:5:"label";s:12:"500,000 - 1M";s:5:"value";s:12:"500,000 - 1M";}i:5;a:2:{s:5:"label";s:7:"1M - 5M";s:5:"value";s:7:"1M - 5M";}i:6;a:2:{s:5:"label";s:3:"5M+";s:5:"value";s:3:"5M+";}}}', + type: 'select', + value: null, + }, + country: { + alias: 'country', + default_value: null, + group: 'core', + id: '16', + is_fixed: '1', + label: 'Country', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'country', + value: null, + }, + crm_id: { + alias: 'crm_id', + default_value: null, + group: 'core', + id: '45', + is_fixed: '0', + label: 'CRM ID', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + datetime: { + alias: 'datetime', + default_value: null, + group: 'core', + id: '50', + is_fixed: '0', + label: 'Webinar date/time signup', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + email: { + alias: 'email', + default_value: null, + group: 'core', + id: '6', + is_fixed: '1', + label: 'Email', + normalizedValue: 'xyz@abc.com', + object: 'lead', + properties: 'a:0:{}', + type: 'email', + value: 'xyz@abc.com', + }, + fax: { + alias: 'fax', + default_value: null, + group: 'core', + id: '10', + is_fixed: '0', + label: 'Fax', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + firstname: { + alias: 'firstname', + default_value: null, + group: 'core', + id: '2', + is_fixed: '1', + label: 'First Name', + normalizedValue: 'rudderstack', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'rudderstack', + }, + haspurchased: { + alias: 'haspurchased', + default_value: null, + group: 'core', + id: '46', + is_fixed: '0', + label: 'hasPurchased', + normalizedValue: 'Yes', + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: '1', + }, + last_active: { + alias: 'last_active', + default_value: null, + group: 'core', + id: '58', + is_fixed: '1', + label: 'Date Last Active', + normalizedValue: '2022-08-23 11:46:27', + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: '2022-08-23 11:46:27', + }, + lastname: { + alias: 'lastname', + default_value: null, + group: 'core', + id: '3', + is_fixed: '1', + label: 'Last Name', + normalizedValue: 'kumar', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'kumar', + }, + mobile: { + alias: 'mobile', + default_value: null, + group: 'core', + id: '7', + is_fixed: '1', + label: 'Mobile', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + nps__recommend: { + alias: 'nps__recommend', + default_value: null, + group: 'core', + id: '56', + is_fixed: '0', + label: 'NPS - Recommend', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";s:1:"3";s:9:"precision";s:0:"";}', + type: 'number', + value: null, + }, + phone: { + alias: 'phone', + default_value: null, + group: 'core', + id: '8', + is_fixed: '1', + label: 'Phone', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + points: { + alias: 'points', + default_value: '0', + group: 'core', + id: '9', + is_fixed: '1', + label: 'Points', + normalizedValue: 0, + object: 'lead', + properties: 'a:0:{}', + type: 'number', + value: 0, + }, + position: { + alias: 'position', + default_value: null, + group: 'core', + id: '5', + is_fixed: '1', + label: 'Position', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + preferred_locale: { + alias: 'preferred_locale', + default_value: null, + group: 'core', + id: '17', + is_fixed: '1', + label: 'Preferred Locale', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'locale', + value: null, + }, + products: { + alias: 'products', + default_value: null, + group: 'core', + id: '48', + is_fixed: '0', + label: 'Products', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:27:"Mautic Marketing Automation";s:5:"value";s:27:"Mautic Marketing Automation";}i:1;a:2:{s:5:"label";s:28:"Maven Marketing Intelligence";s:5:"value";s:28:"Maven Marketing Intelligence";}i:2;a:2:{s:5:"label";s:28:"Maestro Marketing Management";s:5:"value";s:28:"Maestro Marketing Management";}}}', + type: 'select', + value: null, + }, + prospect_or_customer: { + alias: 'prospect_or_customer', + default_value: null, + group: 'core', + id: '51', + is_fixed: '0', + label: 'Prospect or Customer', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:8:"Prospect";s:5:"value";s:8:"Prospect";}i:1;a:2:{s:5:"label";s:8:"Customer";s:5:"value";s:8:"Customer";}}}', + type: 'select', + value: null, + }, + role: { + alias: 'role', + default_value: null, + group: 'core', + id: '57', + is_fixed: '0', + label: 'Role', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:5:{i:0;a:2:{s:5:"label";s:22:"Individual Contributor";s:5:"value";s:22:"Individual Contributor";}i:1;a:2:{s:5:"label";s:7:"Manager";s:5:"value";s:7:"Manager";}i:2;a:2:{s:5:"label";s:8:"Director";s:5:"value";s:8:"Director";}i:3;a:2:{s:5:"label";s:9:"Executive";s:5:"value";s:9:"Executive";}i:4;a:2:{s:5:"label";s:10:"Consultant";s:5:"value";s:10:"Consultant";}}}', + type: 'select', + value: null, + }, + sandbox: { + alias: 'sandbox', + default_value: null, + group: 'core', + id: '54', + is_fixed: '0', + label: 'Sandbox', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: null, + }, + state: { + alias: 'state', + default_value: null, + group: 'core', + id: '14', + is_fixed: '1', + label: 'State', + normalizedValue: 'Uttar Pradesh', + object: 'lead', + properties: 'a:0:{}', + type: 'region', + value: 'Uttar Pradesh', + }, + subscription_status: { + alias: 'subscription_status', + default_value: null, + group: 'core', + id: '49', + is_fixed: '0', + label: 'Subscription Status', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"New";s:5:"value";s:3:"New";}i:1;a:2:{s:5:"label";s:8:"Existing";s:5:"value";s:8:"Existing";}i:2;a:2:{s:5:"label";s:6:"Former";s:5:"value";s:6:"Former";}}}', + type: 'select', + value: null, + }, + timezone: { + alias: 'timezone', + default_value: null, + group: 'core', + id: '18', + is_fixed: '1', + label: 'Preferred Timezone', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'timezone', + value: null, + }, + title: { + alias: 'title', + default_value: null, + group: 'core', + id: '1', + is_fixed: '1', + label: 'Title', + normalizedValue: null, + object: 'lead', + properties: 'a:1:{s:4:"list";a:3:{i:0;s:2:"Mr";i:1;s:3:"Mrs";i:2;s:4:"Miss";}}', + type: 'lookup', + value: null, + }, + website: { + alias: 'website', + default_value: null, + group: 'core', + id: '22', + is_fixed: '0', + label: 'Website', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'url', + value: null, + }, + zipcode: { + alias: 'zipcode', + default_value: null, + group: 'core', + id: '15', + is_fixed: '1', + label: 'Zip Code', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + personal: [], + professional: [], + social: { + facebook: { + alias: 'facebook', + default_value: null, + group: 'social', + id: '23', + is_fixed: '0', + label: 'Facebook', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + foursquare: { + alias: 'foursquare', + default_value: null, + group: 'social', + id: '24', + is_fixed: '0', + label: 'Foursquare', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + instagram: { + alias: 'instagram', + default_value: null, + group: 'social', + id: '26', + is_fixed: '0', + label: 'Instagram', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + linkedin: { + alias: 'linkedin', + default_value: null, + group: 'social', + id: '27', + is_fixed: '0', + label: 'LinkedIn', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + skype: { + alias: 'skype', + default_value: null, + group: 'social', + id: '28', + is_fixed: '0', + label: 'Skype', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + twitter: { + alias: 'twitter', + default_value: null, + group: 'social', + id: '29', + is_fixed: '0', + label: 'Twitter', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + }, + frequencyRules: [], + id: 248, + ipAddresses: [ + { + id: 1, + ipAddress: '130.0.1.21', + ipDetails: { + city: null, + country: 'United Kingdom', + extra: '', + isp: '', + latitude: 51.4964, + longitude: -0.1224, + organization: '', + region: '', + timezone: 'Europe/London', + zipcode: null, + }, + }, + ], + isPublished: true, + lastActive: '2022-08-23T11:46:27+00:00', + modifiedBy: 1, + modifiedByUser: 'test rudderlabs', + owner: null, + points: 0, + preferredProfileImage: null, + stage: null, + tags: [], + utmtags: [], + }, + '249': { + color: null, + createdBy: 1, + createdByUser: 'test rudderlabs', + dateAdded: '2022-08-18T12:20:05+00:00', + dateIdentified: '2022-08-18T12:20:05+00:00', + dateModified: '2022-08-24T09:19:10+00:00', + doNotContact: [], + fields: { + all: { + address1: null, + address2: null, + attribution: null, + attribution_date: null, + b2b_or_b2c: null, + car_or_truck: null, + cart_status: null, + city: null, + company: 'test', + company_size: null, + country: null, + crm_id: null, + datetime: null, + email: 'x1yz@abc.com', + facebook: null, + fax: null, + firstname: 'Kamlesh', + foursquare: null, + haspurchased: null, + id: '249', + instagram: null, + last_active: '2022-08-18 12:20:05', + lastname: 'kumar', + linkedin: null, + mobile: null, + nps__recommend: null, + phone: null, + points: 0, + position: null, + preferred_locale: null, + products: null, + prospect_or_customer: null, + role: null, + sandbox: null, + skype: null, + state: 'Uttar Pradesh', + subscription_status: null, + timezone: null, + title: null, + twitter: null, + website: null, + zipcode: null, + }, + core: { + address1: { + alias: 'address1', + default_value: null, + group: 'core', + id: '11', + is_fixed: '1', + label: 'Address Line 1', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + address2: { + alias: 'address2', + default_value: null, + group: 'core', + id: '12', + is_fixed: '1', + label: 'Address Line 2', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + attribution: { + alias: 'attribution', + default_value: null, + group: 'core', + id: '21', + is_fixed: '1', + label: 'Attribution', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";i:4;s:9:"precision";i:2;}', + type: 'number', + value: null, + }, + attribution_date: { + alias: 'attribution_date', + default_value: null, + group: 'core', + id: '20', + is_fixed: '1', + label: 'Attribution Date', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + b2b_or_b2c: { + alias: 'b2b_or_b2c', + default_value: null, + group: 'core', + id: '47', + is_fixed: '0', + label: 'B2B or B2C', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:3:"B2B";s:5:"value";s:3:"B2B";}i:1;a:2:{s:5:"label";s:3:"B2C";s:5:"value";s:3:"B2C";}}}', + type: 'select', + value: null, + }, + car_or_truck: { + alias: 'car_or_truck', + default_value: null, + group: 'core', + id: '52', + is_fixed: '0', + label: 'Car or Truck', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"Car";s:5:"value";s:3:"Car";}i:1;a:2:{s:5:"label";s:5:"Truck";s:5:"value";s:5:"Truck";}i:2;a:2:{s:5:"label";s:4:"Both";s:5:"value";s:4:"Both";}}}', + type: 'select', + value: null, + }, + cart_status: { + alias: 'cart_status', + default_value: null, + group: 'core', + id: '55', + is_fixed: '0', + label: 'Cart Status', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:5:"Empty";s:5:"value";s:5:"Empty";}i:1;a:2:{s:5:"label";s:4:"Full";s:5:"value";s:4:"Full";}}}', + type: 'select', + value: null, + }, + city: { + alias: 'city', + default_value: null, + group: 'core', + id: '13', + is_fixed: '1', + label: 'City', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + company: { + alias: 'company', + default_value: null, + group: 'core', + id: '4', + is_fixed: '1', + label: 'Primary company', + normalizedValue: 'test', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'test', + }, + company_size: { + alias: 'company_size', + default_value: null, + group: 'core', + id: '53', + is_fixed: '0', + label: 'Company size Custom', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:7:{i:0;a:2:{s:5:"label";s:15:"Less than 1,000";s:5:"value";s:15:"Less than 1,000";}i:1;a:2:{s:5:"label";s:14:"1,000 - 10,000";s:5:"value";s:14:"1,000 - 10,000";}i:2;a:2:{s:5:"label";s:16:"10,000 - 100,000";s:5:"value";s:16:"10,000 - 100,000";}i:3;a:2:{s:5:"label";s:17:"100,000 - 500,000";s:5:"value";s:17:"100,000 - 500,000";}i:4;a:2:{s:5:"label";s:12:"500,000 - 1M";s:5:"value";s:12:"500,000 - 1M";}i:5;a:2:{s:5:"label";s:7:"1M - 5M";s:5:"value";s:7:"1M - 5M";}i:6;a:2:{s:5:"label";s:3:"5M+";s:5:"value";s:3:"5M+";}}}', + type: 'select', + value: null, + }, + country: { + alias: 'country', + default_value: null, + group: 'core', + id: '16', + is_fixed: '1', + label: 'Country', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'country', + value: null, + }, + crm_id: { + alias: 'crm_id', + default_value: null, + group: 'core', + id: '45', + is_fixed: '0', + label: 'CRM ID', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + datetime: { + alias: 'datetime', + default_value: null, + group: 'core', + id: '50', + is_fixed: '0', + label: 'Webinar date/time signup', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + email: { + alias: 'email', + default_value: null, + group: 'core', + id: '6', + is_fixed: '1', + label: 'Email', + normalizedValue: 'x1yz@abc.com', + object: 'lead', + properties: 'a:0:{}', + type: 'email', + value: 'x1yz@abc.com', + }, + fax: { + alias: 'fax', + default_value: null, + group: 'core', + id: '10', + is_fixed: '0', + label: 'Fax', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + firstname: { + alias: 'firstname', + default_value: null, + group: 'core', + id: '2', + is_fixed: '1', + label: 'First Name', + normalizedValue: 'Kamlesh', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'Kamlesh', + }, + haspurchased: { + alias: 'haspurchased', + default_value: null, + group: 'core', + id: '46', + is_fixed: '0', + label: 'hasPurchased', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: null, + }, + last_active: { + alias: 'last_active', + default_value: null, + group: 'core', + id: '58', + is_fixed: '1', + label: 'Date Last Active', + normalizedValue: '2022-08-18 12:20:05', + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: '2022-08-18 12:20:05', + }, + lastname: { + alias: 'lastname', + default_value: null, + group: 'core', + id: '3', + is_fixed: '1', + label: 'Last Name', + normalizedValue: 'kumar', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'kumar', + }, + mobile: { + alias: 'mobile', + default_value: null, + group: 'core', + id: '7', + is_fixed: '1', + label: 'Mobile', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + nps__recommend: { + alias: 'nps__recommend', + default_value: null, + group: 'core', + id: '56', + is_fixed: '0', + label: 'NPS - Recommend', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";s:1:"3";s:9:"precision";s:0:"";}', + type: 'number', + value: null, + }, + phone: { + alias: 'phone', + default_value: null, + group: 'core', + id: '8', + is_fixed: '1', + label: 'Phone', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + points: { + alias: 'points', + default_value: '0', + group: 'core', + id: '9', + is_fixed: '1', + label: 'Points', + normalizedValue: 0, + object: 'lead', + properties: 'a:0:{}', + type: 'number', + value: 0, + }, + position: { + alias: 'position', + default_value: null, + group: 'core', + id: '5', + is_fixed: '1', + label: 'Position', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + preferred_locale: { + alias: 'preferred_locale', + default_value: null, + group: 'core', + id: '17', + is_fixed: '1', + label: 'Preferred Locale', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'locale', + value: null, + }, + products: { + alias: 'products', + default_value: null, + group: 'core', + id: '48', + is_fixed: '0', + label: 'Products', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:27:"Mautic Marketing Automation";s:5:"value";s:27:"Mautic Marketing Automation";}i:1;a:2:{s:5:"label";s:28:"Maven Marketing Intelligence";s:5:"value";s:28:"Maven Marketing Intelligence";}i:2;a:2:{s:5:"label";s:28:"Maestro Marketing Management";s:5:"value";s:28:"Maestro Marketing Management";}}}', + type: 'select', + value: null, + }, + prospect_or_customer: { + alias: 'prospect_or_customer', + default_value: null, + group: 'core', + id: '51', + is_fixed: '0', + label: 'Prospect or Customer', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:8:"Prospect";s:5:"value";s:8:"Prospect";}i:1;a:2:{s:5:"label";s:8:"Customer";s:5:"value";s:8:"Customer";}}}', + type: 'select', + value: null, + }, + role: { + alias: 'role', + default_value: null, + group: 'core', + id: '57', + is_fixed: '0', + label: 'Role', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:5:{i:0;a:2:{s:5:"label";s:22:"Individual Contributor";s:5:"value";s:22:"Individual Contributor";}i:1;a:2:{s:5:"label";s:7:"Manager";s:5:"value";s:7:"Manager";}i:2;a:2:{s:5:"label";s:8:"Director";s:5:"value";s:8:"Director";}i:3;a:2:{s:5:"label";s:9:"Executive";s:5:"value";s:9:"Executive";}i:4;a:2:{s:5:"label";s:10:"Consultant";s:5:"value";s:10:"Consultant";}}}', + type: 'select', + value: null, + }, + sandbox: { + alias: 'sandbox', + default_value: null, + group: 'core', + id: '54', + is_fixed: '0', + label: 'Sandbox', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: null, + }, + state: { + alias: 'state', + default_value: null, + group: 'core', + id: '14', + is_fixed: '1', + label: 'State', + normalizedValue: 'Uttar Pradesh', + object: 'lead', + properties: 'a:0:{}', + type: 'region', + value: 'Uttar Pradesh', + }, + subscription_status: { + alias: 'subscription_status', + default_value: null, + group: 'core', + id: '49', + is_fixed: '0', + label: 'Subscription Status', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"New";s:5:"value";s:3:"New";}i:1;a:2:{s:5:"label";s:8:"Existing";s:5:"value";s:8:"Existing";}i:2;a:2:{s:5:"label";s:6:"Former";s:5:"value";s:6:"Former";}}}', + type: 'select', + value: null, + }, + timezone: { + alias: 'timezone', + default_value: null, + group: 'core', + id: '18', + is_fixed: '1', + label: 'Preferred Timezone', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'timezone', + value: null, + }, + title: { + alias: 'title', + default_value: null, + group: 'core', + id: '1', + is_fixed: '1', + label: 'Title', + normalizedValue: null, + object: 'lead', + properties: 'a:1:{s:4:"list";a:3:{i:0;s:2:"Mr";i:1;s:3:"Mrs";i:2;s:4:"Miss";}}', + type: 'lookup', + value: null, + }, + website: { + alias: 'website', + default_value: null, + group: 'core', + id: '22', + is_fixed: '0', + label: 'Website', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'url', + value: null, + }, + zipcode: { + alias: 'zipcode', + default_value: null, + group: 'core', + id: '15', + is_fixed: '1', + label: 'Zip Code', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + personal: [], + professional: [], + social: { + facebook: { + alias: 'facebook', + default_value: null, + group: 'social', + id: '23', + is_fixed: '0', + label: 'Facebook', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + foursquare: { + alias: 'foursquare', + default_value: null, + group: 'social', + id: '24', + is_fixed: '0', + label: 'Foursquare', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + instagram: { + alias: 'instagram', + default_value: null, + group: 'social', + id: '26', + is_fixed: '0', + label: 'Instagram', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + linkedin: { + alias: 'linkedin', + default_value: null, + group: 'social', + id: '27', + is_fixed: '0', + label: 'LinkedIn', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + skype: { + alias: 'skype', + default_value: null, + group: 'social', + id: '28', + is_fixed: '0', + label: 'Skype', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + twitter: { + alias: 'twitter', + default_value: null, + group: 'social', + id: '29', + is_fixed: '0', + label: 'Twitter', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + }, + frequencyRules: [], + id: 249, + ipAddresses: [ + { + id: 1, + ipAddress: '130.0.1.21', + ipDetails: { + city: null, + country: 'United Kingdom', + extra: '', + isp: '', + latitude: 51.4964, + longitude: -0.1224, + organization: '', + region: '', + timezone: 'Europe/London', + zipcode: null, + }, + }, + ], + isPublished: true, + lastActive: '2022-08-18T12:20:05+00:00', + modifiedBy: 1, + modifiedByUser: 'test rudderlabs', + owner: null, + points: 0, + preferredProfileImage: null, + stage: null, + tags: [], + utmtags: [], + }, + '254': { + color: null, + createdBy: 1, + createdByUser: 'test rudderlabs', + dateAdded: '2022-08-18T13:20:27+00:00', + dateIdentified: '2022-08-18T13:20:27+00:00', + dateModified: '2022-08-18T13:20:27+00:00', + doNotContact: [], + fields: { + all: { + address1: null, + address2: null, + attribution: null, + attribution_date: null, + b2b_or_b2c: null, + car_or_truck: null, + cart_status: null, + city: null, + company: null, + company_size: null, + country: null, + crm_id: null, + datetime: null, + email: null, + facebook: null, + fax: null, + firstname: null, + foursquare: null, + haspurchased: '1', + id: '254', + instagram: null, + last_active: '2020-02-02 00:23:09', + lastname: 'Kumar', + linkedin: null, + mobile: null, + nps__recommend: null, + phone: null, + points: 0, + position: null, + preferred_locale: null, + products: null, + prospect_or_customer: null, + role: null, + sandbox: null, + skype: null, + state: null, + subscription_status: null, + timezone: null, + title: null, + twitter: null, + website: null, + zipcode: null, + }, + core: { + address1: { + alias: 'address1', + default_value: null, + group: 'core', + id: '11', + is_fixed: '1', + label: 'Address Line 1', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + address2: { + alias: 'address2', + default_value: null, + group: 'core', + id: '12', + is_fixed: '1', + label: 'Address Line 2', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + attribution: { + alias: 'attribution', + default_value: null, + group: 'core', + id: '21', + is_fixed: '1', + label: 'Attribution', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";i:4;s:9:"precision";i:2;}', + type: 'number', + value: null, + }, + attribution_date: { + alias: 'attribution_date', + default_value: null, + group: 'core', + id: '20', + is_fixed: '1', + label: 'Attribution Date', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + b2b_or_b2c: { + alias: 'b2b_or_b2c', + default_value: null, + group: 'core', + id: '47', + is_fixed: '0', + label: 'B2B or B2C', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:3:"B2B";s:5:"value";s:3:"B2B";}i:1;a:2:{s:5:"label";s:3:"B2C";s:5:"value";s:3:"B2C";}}}', + type: 'select', + value: null, + }, + car_or_truck: { + alias: 'car_or_truck', + default_value: null, + group: 'core', + id: '52', + is_fixed: '0', + label: 'Car or Truck', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"Car";s:5:"value";s:3:"Car";}i:1;a:2:{s:5:"label";s:5:"Truck";s:5:"value";s:5:"Truck";}i:2;a:2:{s:5:"label";s:4:"Both";s:5:"value";s:4:"Both";}}}', + type: 'select', + value: null, + }, + cart_status: { + alias: 'cart_status', + default_value: null, + group: 'core', + id: '55', + is_fixed: '0', + label: 'Cart Status', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:5:"Empty";s:5:"value";s:5:"Empty";}i:1;a:2:{s:5:"label";s:4:"Full";s:5:"value";s:4:"Full";}}}', + type: 'select', + value: null, + }, + city: { + alias: 'city', + default_value: null, + group: 'core', + id: '13', + is_fixed: '1', + label: 'City', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + company: { + alias: 'company', + default_value: null, + group: 'core', + id: '4', + is_fixed: '1', + label: 'Primary company', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + company_size: { + alias: 'company_size', + default_value: null, + group: 'core', + id: '53', + is_fixed: '0', + label: 'Company size Custom', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:7:{i:0;a:2:{s:5:"label";s:15:"Less than 1,000";s:5:"value";s:15:"Less than 1,000";}i:1;a:2:{s:5:"label";s:14:"1,000 - 10,000";s:5:"value";s:14:"1,000 - 10,000";}i:2;a:2:{s:5:"label";s:16:"10,000 - 100,000";s:5:"value";s:16:"10,000 - 100,000";}i:3;a:2:{s:5:"label";s:17:"100,000 - 500,000";s:5:"value";s:17:"100,000 - 500,000";}i:4;a:2:{s:5:"label";s:12:"500,000 - 1M";s:5:"value";s:12:"500,000 - 1M";}i:5;a:2:{s:5:"label";s:7:"1M - 5M";s:5:"value";s:7:"1M - 5M";}i:6;a:2:{s:5:"label";s:3:"5M+";s:5:"value";s:3:"5M+";}}}', + type: 'select', + value: null, + }, + country: { + alias: 'country', + default_value: null, + group: 'core', + id: '16', + is_fixed: '1', + label: 'Country', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'country', + value: null, + }, + crm_id: { + alias: 'crm_id', + default_value: null, + group: 'core', + id: '45', + is_fixed: '0', + label: 'CRM ID', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + datetime: { + alias: 'datetime', + default_value: null, + group: 'core', + id: '50', + is_fixed: '0', + label: 'Webinar date/time signup', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: null, + }, + email: { + alias: 'email', + default_value: null, + group: 'core', + id: '6', + is_fixed: '1', + label: 'Email', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'email', + value: null, + }, + fax: { + alias: 'fax', + default_value: null, + group: 'core', + id: '10', + is_fixed: '0', + label: 'Fax', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + firstname: { + alias: 'firstname', + default_value: null, + group: 'core', + id: '2', + is_fixed: '1', + label: 'First Name', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + haspurchased: { + alias: 'haspurchased', + default_value: null, + group: 'core', + id: '46', + is_fixed: '0', + label: 'hasPurchased', + normalizedValue: 'Yes', + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: '1', + }, + last_active: { + alias: 'last_active', + default_value: null, + group: 'core', + id: '58', + is_fixed: '1', + label: 'Date Last Active', + normalizedValue: '2020-02-02 00:23:09', + object: 'lead', + properties: 'a:0:{}', + type: 'datetime', + value: '2020-02-02 00:23:09', + }, + lastname: { + alias: 'lastname', + default_value: null, + group: 'core', + id: '3', + is_fixed: '1', + label: 'Last Name', + normalizedValue: 'Kumar', + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: 'Kumar', + }, + mobile: { + alias: 'mobile', + default_value: null, + group: 'core', + id: '7', + is_fixed: '1', + label: 'Mobile', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + nps__recommend: { + alias: 'nps__recommend', + default_value: null, + group: 'core', + id: '56', + is_fixed: '0', + label: 'NPS - Recommend', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:9:"roundmode";s:1:"3";s:9:"precision";s:0:"";}', + type: 'number', + value: null, + }, + phone: { + alias: 'phone', + default_value: null, + group: 'core', + id: '8', + is_fixed: '1', + label: 'Phone', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'tel', + value: null, + }, + points: { + alias: 'points', + default_value: '0', + group: 'core', + id: '9', + is_fixed: '1', + label: 'Points', + normalizedValue: 0, + object: 'lead', + properties: 'a:0:{}', + type: 'number', + value: 0, + }, + position: { + alias: 'position', + default_value: null, + group: 'core', + id: '5', + is_fixed: '1', + label: 'Position', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + preferred_locale: { + alias: 'preferred_locale', + default_value: null, + group: 'core', + id: '17', + is_fixed: '1', + label: 'Preferred Locale', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'locale', + value: null, + }, + products: { + alias: 'products', + default_value: null, + group: 'core', + id: '48', + is_fixed: '0', + label: 'Products', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:27:"Mautic Marketing Automation";s:5:"value";s:27:"Mautic Marketing Automation";}i:1;a:2:{s:5:"label";s:28:"Maven Marketing Intelligence";s:5:"value";s:28:"Maven Marketing Intelligence";}i:2;a:2:{s:5:"label";s:28:"Maestro Marketing Management";s:5:"value";s:28:"Maestro Marketing Management";}}}', + type: 'select', + value: null, + }, + prospect_or_customer: { + alias: 'prospect_or_customer', + default_value: null, + group: 'core', + id: '51', + is_fixed: '0', + label: 'Prospect or Customer', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:2:{i:0;a:2:{s:5:"label";s:8:"Prospect";s:5:"value";s:8:"Prospect";}i:1;a:2:{s:5:"label";s:8:"Customer";s:5:"value";s:8:"Customer";}}}', + type: 'select', + value: null, + }, + role: { + alias: 'role', + default_value: null, + group: 'core', + id: '57', + is_fixed: '0', + label: 'Role', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:5:{i:0;a:2:{s:5:"label";s:22:"Individual Contributor";s:5:"value";s:22:"Individual Contributor";}i:1;a:2:{s:5:"label";s:7:"Manager";s:5:"value";s:7:"Manager";}i:2;a:2:{s:5:"label";s:8:"Director";s:5:"value";s:8:"Director";}i:3;a:2:{s:5:"label";s:9:"Executive";s:5:"value";s:9:"Executive";}i:4;a:2:{s:5:"label";s:10:"Consultant";s:5:"value";s:10:"Consultant";}}}', + type: 'select', + value: null, + }, + sandbox: { + alias: 'sandbox', + default_value: null, + group: 'core', + id: '54', + is_fixed: '0', + label: 'Sandbox', + normalizedValue: null, + object: 'lead', + properties: 'a:2:{s:2:"no";s:2:"No";s:3:"yes";s:3:"Yes";}', + type: 'boolean', + value: null, + }, + state: { + alias: 'state', + default_value: null, + group: 'core', + id: '14', + is_fixed: '1', + label: 'State', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'region', + value: null, + }, + subscription_status: { + alias: 'subscription_status', + default_value: null, + group: 'core', + id: '49', + is_fixed: '0', + label: 'Subscription Status', + normalizedValue: null, + object: 'lead', + properties: + 'a:1:{s:4:"list";a:3:{i:0;a:2:{s:5:"label";s:3:"New";s:5:"value";s:3:"New";}i:1;a:2:{s:5:"label";s:8:"Existing";s:5:"value";s:8:"Existing";}i:2;a:2:{s:5:"label";s:6:"Former";s:5:"value";s:6:"Former";}}}', + type: 'select', + value: null, + }, + timezone: { + alias: 'timezone', + default_value: null, + group: 'core', + id: '18', + is_fixed: '1', + label: 'Preferred Timezone', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'timezone', + value: null, + }, + title: { + alias: 'title', + default_value: null, + group: 'core', + id: '1', + is_fixed: '1', + label: 'Title', + normalizedValue: null, + object: 'lead', + properties: 'a:1:{s:4:"list";a:3:{i:0;s:2:"Mr";i:1;s:3:"Mrs";i:2;s:4:"Miss";}}', + type: 'lookup', + value: null, + }, + website: { + alias: 'website', + default_value: null, + group: 'core', + id: '22', + is_fixed: '0', + label: 'Website', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'url', + value: null, + }, + zipcode: { + alias: 'zipcode', + default_value: null, + group: 'core', + id: '15', + is_fixed: '1', + label: 'Zip Code', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + personal: [], + professional: [], + social: { + facebook: { + alias: 'facebook', + default_value: null, + group: 'social', + id: '23', + is_fixed: '0', + label: 'Facebook', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + foursquare: { + alias: 'foursquare', + default_value: null, + group: 'social', + id: '24', + is_fixed: '0', + label: 'Foursquare', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + instagram: { + alias: 'instagram', + default_value: null, + group: 'social', + id: '26', + is_fixed: '0', + label: 'Instagram', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + linkedin: { + alias: 'linkedin', + default_value: null, + group: 'social', + id: '27', + is_fixed: '0', + label: 'LinkedIn', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + skype: { + alias: 'skype', + default_value: null, + group: 'social', + id: '28', + is_fixed: '0', + label: 'Skype', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + twitter: { + alias: 'twitter', + default_value: null, + group: 'social', + id: '29', + is_fixed: '0', + label: 'Twitter', + normalizedValue: null, + object: 'lead', + properties: 'a:0:{}', + type: 'text', + value: null, + }, + }, + }, + frequencyRules: [], + id: 254, + ipAddresses: [], + isPublished: true, + lastActive: '2020-02-02T00:23:09+00:00', + modifiedBy: 1, + modifiedByUser: 'test rudderlabs', + owner: null, + points: 0, + preferredProfileImage: null, + stage: null, + tags: [], + utmtags: [], + }, + }, + total: '3', + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic VGVzdDQ1ODIzUnVkZGVybGFic0BnbWFpbC5jb206ZHVtbXlQYXNzd29yZA==', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://ruddertest2.mautic.net/api/contacts?where%5B0%5D%5Bcol%5D=lastname&where%5B0%5D%5Bexpr%5D=eq&where%5B0%5D%5Bval%5D=Singh', + }, + httpRes: { data: { Conatcts: {}, Total: 0 }, status: 200 }, + }, +]; diff --git a/test/integrations/destinations/mp/deleteUsers/data.ts b/test/integrations/destinations/mp/deleteUsers/data.ts new file mode 100644 index 0000000000..0f469b508f --- /dev/null +++ b/test/integrations/destinations/mp/deleteUsers/data.ts @@ -0,0 +1,3281 @@ +export const data = [ + { + name: 'mp', + description: 'Test 0', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'MP', + userAttributes: [ + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + ], + config: { + token: 'testToken', + prefixProperties: true, + useNativeSDK: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed for `delete profile` api', + }, + ], + }, + }, + }, + { + name: 'mp', + description: 'Test 1', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'MP', + userAttributes: [ + { + userId: 'rudder1', + }, + { + userId: 'rudder1', + }, + ], + config: { + token: 'testToken', + prefixProperties: true, + useNativeSDK: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, + { + name: 'mp', + description: 'Test 2', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'MP', + userAttributes: [ + { + userId: 'test_user_id', + }, + { + userId: 'user_sdk2', + }, + ], + config: { + apiKey: 'dummyApiKey', + prefixProperties: true, + useNativeSDK: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'API Token is a required field for user deletion', + }, + ], + }, + }, + }, + { + name: 'mp', + description: 'Test 3', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'MP', + userAttributes: [ + { + name: 'test1', + }, + ], + config: { + token: 'testToken', + prefixProperties: true, + useNativeSDK: false, + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, + { + name: 'mp', + description: 'Test 4', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'MP', + userAttributes: [ + { + userId: 'rudder1', + }, + { + userId: 'rudder2', + }, + { + userId: 'rudder3', + }, + ], + config: { + token: 'test_token', + prefixProperties: true, + useNativeSDK: false, + userDeletionApi: 'task', + gdprApiToken: 'test_gdpr_token', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, + { + name: 'mp', + description: 'Test 5', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'MP', + userAttributes: [ + { + userId: 'rudder1', + }, + ], + config: { + token: 'test_token', + prefixProperties: true, + useNativeSDK: false, + userDeletionApi: 'task', + dataResidency: 'eu', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'GDPR API Token is a required field for creating deletion task in mixpanel', + }, + ], + }, + }, + }, + { + name: 'mp', + description: 'Test 6', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'MP', + userAttributes: [ + { + userId: 'rudder1', + }, + ], + config: { + token: 'test_token', + prefixProperties: true, + useNativeSDK: false, + dataResidency: 'eu', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, +]; diff --git a/test/integrations/destinations/mp/network.ts b/test/integrations/destinations/mp/network.ts new file mode 100644 index 0000000000..a386451a21 --- /dev/null +++ b/test/integrations/destinations/mp/network.ts @@ -0,0 +1,1150 @@ +const deleteNwData = [ + { + httpReq: { + method: 'post', + + url: 'https://api.mixpanel.com/engage', + data: [ + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + ], + headers: { + 'Content-Type': 'application/json', + Accept: 'text/plain', + }, + }, + httpRes: { + data: { + code: 400, + message: 'Bad Req', + status: 'Fail Case', + }, + status: 400, + }, + }, + { + httpReq: { + method: 'post', + + url: 'https://api.mixpanel.com/engage', + data: [ + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + { $distinct_id: 'rudder1', $token: 'testToken', $delete: null, $ignore_alias: true }, + ], + headers: { + 'Content-Type': 'application/json', + Accept: 'text/plain', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': '1', + }, + }, + }, + { + httpReq: { + method: 'post', + + url: 'https://api.mixpanel.com/engage', + data: [ + { + $distinct_id: 'rudder1', + $token: 'dummyAccessToken', + $delete: null, + $ignore_alias: true, + }, + { + $distinct_id: 'rudder1', + $token: 'dummyAccessToken', + $delete: null, + $ignore_alias: true, + }, + ], + headers: { + 'Content-Type': 'application/json', + Accept: 'text/plain', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': '1', + }, + }, + }, + { + httpReq: { + method: 'post', + + url: 'https://mixpanel.com/api/app/data-deletions/v3.0/?token=test_token', + data: { + distinct_ids: ['rudder1', 'rudder2', 'rudder3'], + compliance_type: 'CCPA', + }, + headers: { + 'Content-Type': 'application/json', + + Authorization: 'Bearer test_gdpr_token', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': '1', + }, + }, + }, + { + httpReq: { + method: 'post', + + url: 'https://mixpanel.com/api/app/data-deletions/v3.0/?token=test_token', + data: { + distinct_ids: ['rudder2'], + compliance_type: 'GDPR', + }, + headers: { + 'Content-Type': 'application/json', + Accept: 'text/plain', + Authorization: 'Bearer test_gdpr_token', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': '1', + }, + }, + }, + { + httpReq: { + method: 'post', + + url: 'https://api-eu.mixpanel.com/engage', + data: [ + { + $distinct_id: 'rudder1', + $token: 'dummyAccessToken', + $delete: null, + $ignore_alias: true, + }, + ], + headers: { + 'Content-Type': 'application/json', + Accept: 'text/plain', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': '1', + }, + }, + }, +]; +export const networkCallsData = [...deleteNwData]; diff --git a/test/integrations/destinations/optimizely_fullstack/network.ts b/test/integrations/destinations/optimizely_fullstack/network.ts new file mode 100644 index 0000000000..e6a1101ab9 --- /dev/null +++ b/test/integrations/destinations/optimizely_fullstack/network.ts @@ -0,0 +1,206 @@ +const deleteNwData = [ + { + httpReq: { + method: 'get', + url: 'https://cdn.optimizely.com/datafiles/abc.json', + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + accountId: 'test_account_id', + projectId: 'test_project_id', + revision: '45', + attributes: [ + { + id: 'test_attribute_id_1', + key: 'gender', + }, + { + id: 'test_attribute_id_2', + key: 'name', + }, + { + id: 'test_attribute_id_3', + key: 'userId', + }, + { + id: 'test_attribute_id_4', + key: 'anonymousId', + }, + { + id: 'test_attribute_id_5', + key: 'company', + }, + ], + audiences: [ + { + id: '$opt_test_audience', + name: 'Optimizely-Generated Audience for Backwards Compatibility', + conditions: + '["or", {"match": "exact", "name": "$opt_test_attribute", "type": "custom_attribute", "value": "$opt_test_value"}]', + }, + ], + version: '4', + events: [ + { + id: 'test_event_id_1', + experimentIds: ['test_experiment_id'], + key: 'Product Added', + }, + { + id: 'test_event_id_2', + experimentIds: ['test_experiment_id'], + key: 'Product Removed', + }, + { + id: 'test_event_id_3', + experimentIds: ['test_experiment_id'], + key: 'Order Placed', + }, + { + id: 'test_event_id_4', + experimentIds: ['test_experiment_id'], + key: 'Viewed Meal page', + }, + { + id: 'test_event_id_5', + experimentIds: ['test_experiment_id'], + key: 'Viewed food page', + }, + { + id: 'test_event_id_6', + experimentIds: ['test_experiment_id'], + key: 'Viewed Main screen', + }, + { + id: 'test_event_id_7', + experimentIds: ['test_experiment_id'], + key: 'Home', + }, + { + id: 'test_event_id_8', + experimentIds: ['test_experiment_id'], + key: 'Index', + }, + ], + anonymizeIP: true, + botFiltering: false, + typedAudiences: [], + variables: [], + environmentKey: 'production', + sdkKey: 'test_sdk_key', + featureFlags: [ + { + id: 'test_feature_flag_id', + key: 'testfeature', + experimentIds: ['test_experiment_id'], + rolloutId: 'test_rollout_id', + variables: [ + { + id: 'test_variable_id', + key: 'sort_method', + type: 'string', + defaultValue: 'alphabetical', + }, + ], + }, + ], + rollouts: [ + { + id: 'test_rollout_id', + experiments: [ + { + forcedVariations: {}, + id: 'test_experiment_id', + key: 'test_experiment_key', + status: 'Running', + trafficAllocation: [ + { + entityId: 'test_variation_id', + endOfRange: 10000, + }, + ], + variations: [ + { + id: 'test_variation_id', + key: 'test_variation_key', + variables: [ + { + id: 'test_variable_id', + value: 'alphabetical', + }, + ], + featureEnabled: true, + }, + ], + layerId: 'test_layer_id', + audienceIds: [], + }, + ], + }, + ], + experiments: [ + { + forcedVariations: {}, + id: 'test_experiment_id', + key: 'test_experiment_key', + status: 'Running', + trafficAllocation: [ + { + entityId: 'test_variation_id_1', + endOfRange: 5000, + }, + { + entityId: 'test_variation_id_2', + endOfRange: 10000, + }, + ], + variations: [ + { + id: 'test_variation_id_1', + key: 'variation_1', + variables: [ + { + id: 'test_variable_id', + value: 'popular_first', + }, + ], + featureEnabled: true, + }, + { + id: 'test_variation_id_2', + key: 'variation_2', + variables: [ + { + id: 'test_variable_id', + value: 'popular_first', + }, + ], + featureEnabled: true, + }, + ], + layerId: 'test_layer_id', + audienceIds: [], + }, + ], + groups: [], + }, + }, + }, + { + httpReq: { + method: 'get', + url: 'https://cdn.optimizely.com/datafiles/wrong_cdn.json', + }, + httpRes: { + status: 404, + statusText: 'Not Found', + data: { + code: 'document_not_found', + message: 'document_not_found', + }, + }, + }, +]; +export const networkCallsData = [...deleteNwData]; diff --git a/test/integrations/destinations/optimizely_fullstack/processor/data.ts b/test/integrations/destinations/optimizely_fullstack/processor/data.ts new file mode 100644 index 0000000000..47ce3314fd --- /dev/null +++ b/test/integrations/destinations/optimizely_fullstack/processor/data.ts @@ -0,0 +1,2170 @@ +import utils from '../../../../../src/v0/util'; +export const mockFns = (_) => { + // @ts-ignore + jest.spyOn(utils, 'generateUUID').mockImplementation(() => 'generated_uuid'); +}; +export const data = [ + { + name: 'optimizely_fullstack', + description: 'Missing Data File URL', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'identify', + channel: 'web', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + integrations: { + All: true, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + }, + }, + metadata: { + jobId: 1, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + 'Data File Url is not present. Aborting: Workflow: procWorkflow, Step: validateInput, ChildStep: undefined, OriginalError: Data File Url is not present. Aborting', + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 1, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Identify call: Missing Variation ID in integration object', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'identify', + channel: 'web', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + integrations: { + All: true, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + experimentId: 'test_experiment_id', + }, + }, + metadata: { + jobId: 2, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + 'Variation ID is not present in the integrations object: Workflow: procWorkflow, Step: validateInputForIdentify, ChildStep: undefined, OriginalError: Variation ID is not present in the integrations object', + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 2, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Missing Account ID', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'identify', + channel: 'web', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + integrations: { + All: true, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + campaignId: 'test_campagin_id', + experimentId: 'test_experiment_id', + }, + }, + metadata: { + jobId: 3, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + 'Account ID is not present. Aborting: Workflow: procWorkflow, Step: validateInput, ChildStep: undefined, OriginalError: Account ID is not present. Aborting', + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 3, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Missing Campaign ID', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'identify', + channel: 'web', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + integrations: { + All: true, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + experimentId: 'test_experiment_id', + }, + }, + metadata: { + jobId: 4, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + 'Campaign ID is not present. Aborting: Workflow: procWorkflow, Step: validateInput, ChildStep: undefined, OriginalError: Campaign ID is not present. Aborting', + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 4, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Missing Experiment ID', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'identify', + channel: 'web', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + integrations: { + All: true, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + }, + }, + metadata: { + jobId: 5, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + 'Experiment ID is not present. Aborting: Workflow: procWorkflow, Step: validateInput, ChildStep: undefined, OriginalError: Experiment ID is not present. Aborting', + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 5, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Page: Track Categorized Page and Track Named Pages toggle are disabled', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'page', + channel: 'web', + name: 'Home', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + integrations: { + All: true, + optimizely_fullstack: { + variationId: '123', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + experimentId: 'test_experiment_id', + trackCategorizedPages: false, + trackNamedPages: false, + }, + }, + metadata: { + jobId: 6, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + "Both 'Track Categorized Pages' and 'Track Named Pages' toggles are disabled in webapp. Please enable at one of them to send page/screen events to Optimizely.: Workflow: procWorkflow, Step: validateInputForPageAndScreen, ChildStep: undefined, OriginalError: Both 'Track Categorized Pages' and 'Track Named Pages' toggles are disabled in webapp. Please enable at one of them to send page/screen events to Optimizely.", + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 6, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: + 'Invalid Configuration (Track known users toggle is on and userId is missing in request)', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'track', + channel: 'web', + event: 'Product Added', + properties: { + price: 999, + quantity: 1, + }, + context: { + traits: { + firstName: 'John', + age: 27, + }, + }, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + optimizely_fullstack: { + variationId: '123', + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + experimentId: 'test_experiment_id', + trackCategorizedPages: false, + trackNamedPages: false, + trackKnownUsers: true, + }, + }, + metadata: { + jobId: 7, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + "UserId is required for event tracking when the 'Track Known Users' setting is enabled. Please include a 'userId' in your event payload: Workflow: procWorkflow, Step: validateInput, ChildStep: undefined, OriginalError: UserId is required for event tracking when the 'Track Known Users' setting is enabled. Please include a 'userId' in your event payload", + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 7, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Track call without event', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'track', + channel: 'web', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + experimentId: 'test_experiment_id', + }, + }, + metadata: { + jobId: 9, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + 'Event is not present. Aborting.: Workflow: procWorkflow, Step: validateInputForTrack, ChildStep: undefined, OriginalError: Event is not present. Aborting.', + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 9, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Invalid data file url', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'track', + event: 'Product Added', + channel: 'web', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/wrong_cdn.json', + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + experimentId: 'test_experiment_id', + }, + }, + metadata: { + jobId: 10, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + 'Data File Lookup Failed due to {"code":"document_not_found","message":"document_not_found"}: Workflow: procWorkflow, Step: dataFile, ChildStep: undefined, OriginalError: Data File Lookup Failed due to {"code":"document_not_found","message":"document_not_found"}', + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 10, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Event not present in data-file', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'track', + event: 'Product Added', + channel: 'web', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + integrations: { + All: true, + optimizely_fullstack: { + variationId: '123', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + experimentId: 'test_experiment_id', + eventMapping: [ + { + from: 'Product Added', + to: 'product_added', + }, + ], + }, + }, + metadata: { + jobId: 11, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + error: + "Event 'product_added' is not present in data file. Make sure event exists in Optimizely.: Workflow: procWorkflow, Step: prepareTrackPayload, ChildStep: optimizelyEvent, OriginalError: Event 'product_added' is not present in data file. Make sure event exists in Optimizely.", + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + metadata: { + jobId: 11, + }, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Identify call (Decision Event) with userId', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'identify', + channel: 'web', + properties: {}, + context: { + traits: { + organization: 'RudderStack', + fullName: 'John Doe', + country: 'US', + }, + sessionId: 1685626914716, + }, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + timestamp: '2023-02-10T12:16:07.251Z', + userId: 'userId123', + integrations: { + All: true, + optimizely_fullstack: { + variationId: 'test_variation_id_1', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + attributeMapping: [ + { + from: 'organization', + to: 'company', + }, + { + from: 'fullName', + to: 'name', + }, + ], + }, + }, + metadata: { + jobId: 12, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 12 }, + output: { + body: { + FORM: {}, + JSON: { + account_id: 'test_account_id', + anonymize_ip: false, + client_name: 'RudderStack', + client_version: '1.0.0', + enrich_decisions: true, + visitors: [ + { + attributes: [ + { + entity_id: 'test_attribute_id_5', + key: 'company', + type: 'custom', + value: 'RudderStack', + }, + { + entity_id: 'test_attribute_id_2', + key: 'name', + type: 'custom', + value: 'John Doe', + }, + ], + session_id: '1685626914716', + snapshots: [ + { + decisions: [ + { + campaign_id: 'test_campaign_id', + experiment_id: 'test_experiment_id', + variation_id: 'test_variation_id_1', + }, + ], + events: [ + { + entity_id: 'test_campaign_id', + timestamp: 1676031367251, + type: 'campaign_activated', + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + }, + ], + }, + ], + visitor_id: 'userId123', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + }, + endpoint: 'https://logx.optimizely.com/v1/events', + files: {}, + headers: { 'Content-Type': 'application/json' }, + method: 'POST', + params: {}, + type: 'REST', + userId: '', + version: '1', + }, + statusCode: 200, + }, + ], + }, + }, + }, + + { + name: 'optimizely_fullstack', + description: 'Identify call (Decision Event) with anonymousId', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'identify', + channel: 'web', + properties: {}, + context: { + traits: { + organization: 'RudderStack', + fullName: 'John Doe', + country: 'US', + }, + sessionId: 1685626914716, + }, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + timestamp: '2023-02-10T12:16:07.251Z', + userId: 'userId123', + integrations: { + All: true, + optimizely_fullstack: { + variationId: 'test_variation_id_1', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: false, + }, + }, + metadata: { + jobId: 13, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 13 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { + 'Content-Type': 'application/json', + }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: false, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: '97c46c81-3140-456d-b2a9-690d70aaca35', + snapshots: [ + { + decisions: [ + { + campaign_id: 'test_campaign_id', + experiment_id: 'test_experiment_id', + variation_id: 'test_variation_id_1', + }, + ], + events: [ + { + entity_id: 'test_campaign_id', + type: 'campaign_activated', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + userId: '', + files: {}, + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Identify call (Decision Event) with projectId is empty"', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'identify', + channel: 'web', + properties: {}, + context: { + traits: { + organization: 'RudderStack', + fullName: 'John Doe', + country: 'US', + }, + sessionId: 1685626914716, + }, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + timestamp: '2023-02-10T12:16:07.251Z', + userId: 'userId123', + integrations: { + All: true, + optimizely_fullstack: { + variationId: 'test_variation_id_1', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + projectId: '', + attributeMapping: [ + { + from: 'organization', + to: 'company', + }, + { + from: 'fullName', + to: 'name', + }, + ], + }, + }, + metadata: { + jobId: 14, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 14 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + userId: '', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { + 'Content-Type': 'application/json', + }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: false, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + attributes: [ + { + entity_id: 'test_attribute_id_5', + key: 'company', + type: 'custom', + value: 'RudderStack', + }, + { + entity_id: 'test_attribute_id_2', + key: 'name', + type: 'custom', + value: 'John Doe', + }, + ], + snapshots: [ + { + decisions: [ + { + campaign_id: 'test_campaign_id', + experiment_id: 'test_experiment_id', + variation_id: 'test_variation_id_1', + }, + ], + events: [ + { + entity_id: 'test_campaign_id', + type: 'campaign_activated', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Track Named Page: mapping is not provided for page name in webapp', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'page', + userId: 'userId123', + name: 'Meal', + channel: 'web', + context: { + traits: { + organization: 'RudderStack', + fullName: 'John Doe', + }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { + foo: 'bar', + }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { + variationId: 'test_variation_id_1', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + trackCategorizedPages: false, + trackNamedPages: true, + pageMapping: [ + { + from: 'Home', + to: 'Viewed Home Page', + }, + { + from: 'food', + to: 'Product Added', + }, + ], + }, + }, + metadata: { + jobId: 15, + }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 15 }, + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'platform', + feature: 'processor', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + error: + 'Events [meal] are not present in the data file. Make sure events exist in Optimizely.: Workflow: procWorkflow, Step: preparePageOrScreenPayload, ChildStep: optimizelyEvents, OriginalError: Events [meal] are not present in the data file. Make sure events exist in Optimizely.', + }, + ], + }, + }, + }, + + { + name: 'optimizely_fullstack', + description: 'Track call (Conversion event) with userId', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'track', + event: 'product_added', + userId: 'userId123', + channel: 'web', + context: { + traits: { organization: 'RudderStack', fullName: 'John Doe' }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { foo: 'bar', revenue: 123, quantity: 2 }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { variationId: 'test_variation_id_2' }, + }, + }, + destination: { + DestinationDefinition: { Config: { cdkV2Enabled: true } }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + eventMapping: [ + { from: 'Product Searched', to: 'Searched' }, + { from: 'product_added', to: 'Product Added' }, + ], + attributeMapping: [ + { from: 'organization', to: 'company' }, + { from: 'fullName', to: 'name' }, + ], + }, + }, + metadata: { jobId: 20 }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 20 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { 'Content-Type': 'application/json' }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + attributes: [ + { + entity_id: 'test_attribute_id_5', + key: 'company', + type: 'custom', + value: 'RudderStack', + }, + { + entity_id: 'test_attribute_id_2', + key: 'name', + type: 'custom', + value: 'John Doe', + }, + ], + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_1', + key: 'Product Added', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + quantity: 2, + revenue: 12300, + tags: { foo: 'bar' }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + userId: '', + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Track call (Conversion event) without event mapping configured in webapp', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'track', + event: 'Product Added', + channel: 'web', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + timestamp: '2023-02-10T12:16:07.251Z', + integrations: { All: true, optimizely_fullstack: { variationId: '123' } }, + }, + destination: { + DestinationDefinition: { Config: { cdkV2Enabled: true } }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + experimentId: 'test_experiment_id', + }, + }, + metadata: { jobId: 21 }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 21 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { 'Content-Type': 'application/json' }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: false, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: '97c46c81-3140-456d-b2a9-690d70aaca35', + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_1', + key: 'Product Added', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + tags: {}, + }, + ], + }, + ], + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + userId: '', + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Track call: Missing Variation ID in integration object ', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'track', + event: 'product_added', + userId: 'userId123', + channel: 'web', + context: { + traits: { organization: 'RudderStack', fullName: 'John Doe' }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { foo: 'bar', revenue: 123, quantity: 2 }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { All: true }, + }, + destination: { + DestinationDefinition: { Config: { cdkV2Enabled: true } }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + eventMapping: [ + { from: 'Product Searched', to: 'Searched' }, + { from: 'product_added', to: 'Product Added' }, + ], + attributeMapping: [ + { from: 'organization', to: 'company' }, + { from: 'fullName', to: 'name' }, + ], + }, + }, + metadata: { jobId: 22 }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 22 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { 'Content-Type': 'application/json' }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + attributes: [ + { + entity_id: 'test_attribute_id_5', + key: 'company', + type: 'custom', + value: 'RudderStack', + }, + { + entity_id: 'test_attribute_id_2', + key: 'name', + type: 'custom', + value: 'John Doe', + }, + ], + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_1', + key: 'Product Added', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + quantity: 2, + revenue: 12300, + tags: { foo: 'bar' }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + userId: '', + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Track Categorized and Named Page', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'page', + name: 'Meal', + userId: 'userId123', + channel: 'web', + context: { + traits: { organization: 'RudderStack', fullName: 'John Doe' }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { foo: 'bar', category: 'food' }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { variationId: 'test_variation_id_1' }, + }, + }, + destination: { + DestinationDefinition: { Config: { cdkV2Enabled: true } }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + trackCategorizedPages: true, + trackNamedPages: true, + pageMapping: [ + { from: 'meal', to: 'Viewed Meal Page' }, + { from: 'food', to: 'Product Added' }, + ], + }, + }, + metadata: { jobId: 23 }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 23 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { 'Content-Type': 'application/json' }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_1', + key: 'Product Added', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + tags: { foo: 'bar', category: 'food' }, + }, + { + entity_id: 'test_event_id_4', + key: 'Viewed Meal page', + timestamp: 1676031367251, + uuid: 'generated_uuid', + tags: { foo: 'bar', category: 'food' }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + userId: '', + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Track Categorized and Named Page without event mapping configured in webapp', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'page', + name: 'home', + userId: 'userId123', + channel: 'web', + context: { + traits: { organization: 'RudderStack', fullName: 'John Doe' }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { foo: 'bar', category: 'index' }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { variationId: 'test_variation_id_1' }, + }, + }, + destination: { + DestinationDefinition: { Config: { cdkV2Enabled: true } }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + trackCategorizedPages: true, + trackNamedPages: true, + pageMapping: [{ from: '', to: '' }], + }, + }, + metadata: { jobId: 24 }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 24 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { 'Content-Type': 'application/json' }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_8', + key: 'Index', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + tags: { foo: 'bar', category: 'index' }, + }, + { + entity_id: 'test_event_id_7', + key: 'Home', + timestamp: 1676031367251, + uuid: 'generated_uuid', + tags: { foo: 'bar', category: 'index' }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + userId: '', + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: + 'Track Categorized Page: trackCategorizedPages,trackNamedPages toggle are enabled and name is not provided', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'page', + userId: 'userId123', + channel: 'web', + context: { + traits: { organization: 'RudderStack', fullName: 'John Doe' }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { foo: 'bar', category: 'food' }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { variationId: 'test_variation_id_1' }, + }, + }, + destination: { + DestinationDefinition: { Config: { cdkV2Enabled: true } }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + trackCategorizedPages: true, + trackNamedPages: true, + pageMapping: [ + { from: 'meal', to: 'Viewed Meal Page' }, + { from: 'food', to: 'Product Added' }, + ], + }, + }, + metadata: { jobId: 25 }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 25 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { 'Content-Type': 'application/json' }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_1', + key: 'Product Added', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + tags: { foo: 'bar', category: 'food' }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + userId: '', + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: + 'Track Named Page: trackCategorizedPages,trackNamedPages toggle are enabled and category is not provided', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'page', + userId: 'userId123', + name: 'Meal', + channel: 'web', + context: { + traits: { organization: 'RudderStack', fullName: 'John Doe' }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { foo: 'bar' }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { variationId: 'test_variation_id_1' }, + }, + }, + destination: { + DestinationDefinition: { Config: { cdkV2Enabled: true } }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + trackCategorizedPages: true, + trackNamedPages: true, + pageMapping: [ + { from: 'meal', to: 'Viewed Meal Page' }, + { from: 'food', to: 'Product Added' }, + ], + }, + }, + metadata: { jobId: 26 }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 26 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { 'Content-Type': 'application/json' }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_4', + key: 'Viewed Meal page', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + tags: { foo: 'bar' }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + userId: '', + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: + 'Track Named Page: trackCategorizedPages,trackNamedPages toggle are enabled and category mapping is wrong', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'page', + userId: 'userId123', + name: 'Meal', + channel: 'web', + context: { + traits: { organization: 'RudderStack', fullName: 'John Doe' }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { foo: 'bar' }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { variationId: 'test_variation_id_1' }, + }, + }, + destination: { + DestinationDefinition: { Config: { cdkV2Enabled: true } }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + trackCategorizedPages: true, + trackNamedPages: true, + pageMapping: [ + { from: 'meal', to: 'Viewed Meal Page' }, + { from: 'food', to: 'ABC' }, + ], + }, + }, + metadata: { jobId: 27 }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 27 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { 'Content-Type': 'application/json' }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_4', + key: 'Viewed Meal page', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + tags: { foo: 'bar' }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + userId: '', + }, + statusCode: 200, + }, + ], + }, + }, + }, + { + name: 'optimizely_fullstack', + description: 'Track Categorized and Named Screen', + feature: 'processor', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + message: { + type: 'screen', + name: 'Home', + userId: 'userId123', + channel: 'web', + context: { + traits: { organization: 'RudderStack', fullName: 'John Doe' }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { foo: 'bar', category: 'food' }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { variationId: 'test_variation_id_1' }, + }, + }, + destination: { + DestinationDefinition: { Config: { cdkV2Enabled: true } }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + trackCategorizedPages: true, + trackNamedPages: true, + pageMapping: [ + { from: 'home', to: 'Viewed Main Screen' }, + { from: 'food', to: 'Product Added' }, + ], + }, + }, + metadata: { jobId: 28 }, + }, + ], + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: [ + { + metadata: { jobId: 28 }, + output: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { 'Content-Type': 'application/json' }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_1', + key: 'Product Added', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + tags: { foo: 'bar', category: 'food' }, + }, + { + entity_id: 'test_event_id_6', + key: 'Viewed Main screen', + timestamp: 1676031367251, + uuid: 'generated_uuid', + tags: { foo: 'bar', category: 'food' }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + userId: '', + }, + statusCode: 200, + }, + ], + }, + }, + }, +].map((d) => ({ ...d, mockFns })); diff --git a/test/integrations/destinations/optimizely_fullstack/router/data.ts b/test/integrations/destinations/optimizely_fullstack/router/data.ts new file mode 100644 index 0000000000..1803881f30 --- /dev/null +++ b/test/integrations/destinations/optimizely_fullstack/router/data.ts @@ -0,0 +1,563 @@ +import { FEATURES } from '../../../../../src/v0/util/tags'; +import { mockFns } from '../processor/data'; + +export const data = [ + { + name: 'optimizely_fullstack', + description: 'Test 0', + feature: FEATURES.ROUTER, + module: 'destination', + version: 'v0', + input: { + request: { + body: { + input: [ + { + message: { + type: 'identify', + channel: 'web', + properties: {}, + context: { + traits: { + organization: 'RudderStack', + fullName: 'John Doe', + country: 'US', + }, + sessionId: 1685626914716, + }, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + timestamp: '2023-02-10T12:16:07.251Z', + userId: 'userId123', + integrations: { + All: true, + optimizely_fullstack: { + variationId: 'test_variation_id_1', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + attributeMapping: [ + { + from: 'organization', + to: 'company', + }, + { + from: 'fullName', + to: 'name', + }, + ], + }, + }, + metadata: { + jobId: 1, + }, + }, + { + message: { + type: 'track', + event: 'product_added', + userId: 'userId123', + channel: 'web', + context: { + traits: { + organization: 'RudderStack', + fullName: 'John Doe', + }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { + foo: 'bar', + revenue: 123, + quantity: 2, + }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { + variationId: 'test_variation_id_2', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + eventMapping: [ + { + from: 'Product Searched', + to: 'Searched', + }, + { + from: 'product_added', + to: 'Product Added', + }, + ], + attributeMapping: [ + { + from: 'organization', + to: 'company', + }, + { + from: 'fullName', + to: 'name', + }, + ], + }, + }, + metadata: { + jobId: 2, + }, + }, + { + message: { + type: 'page', + userId: 'userId123', + channel: 'web', + context: { + traits: { + organization: 'RudderStack', + fullName: 'John Doe', + }, + sessionId: 1685626914716, + }, + rudderId: '5354b3f2-cb72-4355-a2b5-a298c3837c7d', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + timestamp: '2023-02-10T12:16:07.251Z', + properties: { + foo: 'bar', + category: 'food', + }, + anonymousId: '856365b8-da4b-4c13-9098-84df18559446', + integrations: { + All: true, + optimizely_fullstack: { + variationId: 'test_variation_id_1', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + trackCategorizedPages: true, + trackNamedPages: false, + pageMapping: [ + { + from: 'meal', + to: 'Viewed Meal Page', + }, + { + from: 'food', + to: 'Product Added', + }, + ], + }, + }, + metadata: { + jobId: 3, + }, + }, + { + message: { + type: 'page', + channel: 'web', + name: 'Home', + properties: {}, + context: {}, + rudderId: '8f8fa6b5-8e24-489c-8e22-61f23f2e364f', + messageId: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + anonymousId: '97c46c81-3140-456d-b2a9-690d70aaca35', + integrations: { + All: true, + optimizely_fullstack: { + variationId: '123', + }, + }, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + experimentId: 'test_experiment_id', + trackCategorizedPages: false, + trackNamedPages: false, + }, + }, + metadata: { + jobId: 4, + }, + }, + ], + destType: 'optimizely_fullstack', + }, + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: { + output: [ + { + batched: false, + batchedRequest: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { + 'Content-Type': 'application/json', + }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: false, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + attributes: [ + { + entity_id: 'test_attribute_id_5', + key: 'company', + type: 'custom', + value: 'RudderStack', + }, + { + entity_id: 'test_attribute_id_2', + key: 'name', + type: 'custom', + value: 'John Doe', + }, + ], + snapshots: [ + { + decisions: [ + { + campaign_id: 'test_campaign_id', + experiment_id: 'test_experiment_id', + variation_id: 'test_variation_id_1', + }, + ], + events: [ + { + entity_id: 'test_campaign_id', + type: 'campaign_activated', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + attributeMapping: [ + { + from: 'organization', + to: 'company', + }, + { + from: 'fullName', + to: 'name', + }, + ], + }, + }, + metadata: [ + { + jobId: 1, + }, + ], + statusCode: 200, + }, + { + batched: false, + batchedRequest: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { + 'Content-Type': 'application/json', + }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + attributes: [ + { + entity_id: 'test_attribute_id_5', + key: 'company', + type: 'custom', + value: 'RudderStack', + }, + { + entity_id: 'test_attribute_id_2', + key: 'name', + type: 'custom', + value: 'John Doe', + }, + ], + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_1', + key: 'Product Added', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + quantity: 2, + revenue: 12300, + tags: { + foo: 'bar', + }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + eventMapping: [ + { + from: 'Product Searched', + to: 'Searched', + }, + { + from: 'product_added', + to: 'Product Added', + }, + ], + attributeMapping: [ + { + from: 'organization', + to: 'company', + }, + { + from: 'fullName', + to: 'name', + }, + ], + }, + }, + metadata: [ + { + jobId: 2, + }, + ], + statusCode: 200, + }, + { + batched: false, + batchedRequest: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://logx.optimizely.com/v1/events', + headers: { + 'Content-Type': 'application/json', + }, + params: {}, + body: { + JSON: { + account_id: 'test_account_id', + anonymize_ip: true, + enrich_decisions: true, + client_name: 'RudderStack', + client_version: '1.0.0', + visitors: [ + { + visitor_id: 'userId123', + snapshots: [ + { + decisions: [], + events: [ + { + entity_id: 'test_event_id_1', + key: 'Product Added', + timestamp: 1676031367251, + uuid: '2116ef8c-efc3-4ca4-851b-02ee60dad6ff', + tags: { + foo: 'bar', + category: 'food', + }, + }, + ], + }, + ], + session_id: '1685626914716', + }, + ], + }, + JSON_ARRAY: {}, + XML: {}, + FORM: {}, + }, + files: {}, + }, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + accountId: 'test_account_id', + campaignId: 'test_campaign_id', + experimentId: 'test_experiment_id', + trackKnownUsers: true, + anonymizeIp: true, + trackCategorizedPages: true, + trackNamedPages: false, + pageMapping: [ + { + from: 'meal', + to: 'Viewed Meal Page', + }, + { + from: 'food', + to: 'Product Added', + }, + ], + }, + }, + metadata: [ + { + jobId: 3, + }, + ], + statusCode: 200, + }, + { + batched: false, + destination: { + DestinationDefinition: { + Config: { + cdkV2Enabled: true, + }, + }, + Config: { + accountId: 'test_account_id', + campaignId: 'test_campagin_id', + dataFileUrl: 'https://cdn.optimizely.com/datafiles/abc.json', + experimentId: 'test_experiment_id', + trackCategorizedPages: false, + trackNamedPages: false, + }, + }, + error: + "Both 'Track Categorized Pages' and 'Track Named Pages' toggles are disabled in webapp. Please enable at one of them to send page/screen events to Optimizely.", + metadata: [ + { + jobId: 4, + }, + ], + statTags: { + destType: 'OPTIMIZELY_FULLSTACK', + errorCategory: 'dataValidation', + errorType: 'configuration', + feature: 'router', + implementation: 'cdkV2', + module: 'destination', + }, + statusCode: 400, + }, + ], + }, + }, + }, + mockFns, + }, +]; diff --git a/test/integrations/destinations/pardot/network.ts b/test/integrations/destinations/pardot/network.ts new file mode 100644 index 0000000000..bbbe0d70f9 --- /dev/null +++ b/test/integrations/destinations/pardot/network.ts @@ -0,0 +1,440 @@ +import { enhanceRequestOptions, getFormData } from '../../../../src/adapters/network'; + +export const networkCallsData = [ + // 2nd proxy test-case + { + httpReq: { + url: 'https://pi.pardot.com/api/prospect/version/4/do/upsert/email/Roger_12@waltair.io', + data: getFormData({ + first_name: 'Roger_12', + last_name: 'Federer_12', + website: 'https://rudderstack.com', + score: 14, + campaign_id: 42213, + format: 'json', + }).toString(), + params: { destination: 'pardot' }, + headers: { + Authorization: 'Bearer myToken', + 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8', + 'Pardot-Business-Unit-Id': '0Uv2v000000k9tHCAQ', + 'User-Agent': 'RudderLabs', + }, + method: 'POST', + }, + httpRes: { + data: { + '@attributes': { + stat: 'ok', + version: 1, + }, + prospect: { + id: 123435, + campaign_id: 42213, + salutation: null, + first_name: 'Roger_12', + last_name: 'Federer_12', + email: 'Roger_12@waltair.io', + password: null, + company: null, + website: 'https://rudderstack.com', + job_title: null, + department: null, + country: 'AU', + address_one: null, + address_two: null, + city: null, + state: null, + territory: null, + zip: null, + phone: null, + fax: null, + source: null, + annual_revenue: null, + employees: null, + industry: null, + years_in_business: null, + comments: null, + notes: null, + score: 14, + grade: null, + last_activity_at: null, + recent_interaction: 'Never active.', + crm_lead_fid: null, + crm_contact_fid: null, + crm_owner_fid: '00G2v000004WYXaEAO', + crm_account_fid: null, + salesforce_fid: null, + crm_last_sync: null, + crm_url: null, + is_do_not_email: null, + is_do_not_call: null, + opted_out: null, + is_reviewed: 1, + is_starred: null, + created_at: '2022-01-21 18:21:46', + updated_at: '2022-01-21 18:48:41', + campaign: { + id: 42113, + name: 'Test', + crm_fid: '7012y000000MNOCLL4', + }, + assigned_to: { + user: { + id: 38443703, + email: 'test_rudderstack@testcompany.com', + first_name: 'Rudderstack', + last_name: 'User', + job_title: null, + role: 'Administrator', + account: 489853, + created_at: '2021-02-26 06:25:17', + updated_at: '2021-02-26 06:25:17', + }, + }, + Are_you_shipping_large_fragile_or_bulky_items: false, + Calendly: false, + Country_Code: 'AU', + Currency: 'AUD', + Inventory_or_Warehouse_Management_System: false, + Lead_Status: 'New', + Marketing_Stage: 'SAL', + Record_Type_ID: 'TestCompany Lead', + profile: { + id: 304, + name: 'Default', + profile_criteria: [ + { + id: 1500, + name: 'Shipping Volume', + matches: 'Unknown', + }, + { + id: 1502, + name: 'Industry', + matches: 'Unknown', + }, + { + id: 1506, + name: 'Job Title', + matches: 'Unknown', + }, + { + id: 1508, + name: 'Department', + matches: 'Unknown', + }, + ], + }, + visitors: null, + visitor_activities: null, + lists: null, + }, + }, + status: 201, + statusText: 'Created', + }, + }, + // 4th proxy test-case + { + httpReq: { + url: 'https://pi.pardot.com/api/prospect/version/4/do/upsert/email/rolex_waltair@mywebsite.io', + data: getFormData({ + first_name: 'Rolex', + last_name: 'Waltair', + website: 'https://rudderstack.com', + score: 15, + campaign_id: 42213, + format: 'json', + }).toString(), + params: { destination: 'pardot' }, + headers: { + Authorization: 'Bearer myExpiredToken', + 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8', + 'Pardot-Business-Unit-Id': '0Uv2v000000k9tHCAQ', + 'User-Agent': 'RudderLabs', + }, + method: 'POST', + }, + httpRes: { + data: { + '@attributes': { + stat: 'fail', + version: 1, + err_code: 184, + }, + err: 'access_token is invalid, unknown, or malformed: Inactive token', + }, + status: 401, + statusText: 'Unauthorized', + }, + }, + // 1st proxy test-case + { + httpReq: { + url: 'https://pi.pardot.com/api/prospect/version/4/do/upsert/id/123435', + data: getFormData({ + first_name: 'Roger12', + last_name: 'Federer12', + website: 'https://rudderstack.com', + score: 14, + campaign_id: 42213, + format: 'json', + }).toString(), + params: { destination: 'pardot' }, + headers: { + Authorization: 'Bearer myToken', + 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8', + 'Pardot-Business-Unit-Id': '0Uv2v000000k9tHCAQ', + 'User-Agent': 'RudderLabs', + }, + method: 'POST', + }, + httpRes: { + data: { + '@attributes': { + stat: 'ok', + version: 1, + }, + prospect: { + id: 123435, + campaign_id: 42213, + salutation: null, + first_name: 'Roger12', + last_name: 'Federer12', + email: 'Roger12@waltair.io', + password: null, + company: null, + website: 'https://rudderstack.com', + job_title: null, + department: null, + country: 'AU', + address_one: null, + address_two: null, + city: null, + state: null, + territory: null, + zip: null, + phone: null, + fax: null, + source: null, + annual_revenue: null, + employees: null, + industry: null, + years_in_business: null, + comments: null, + notes: null, + score: 14, + grade: null, + last_activity_at: null, + recent_interaction: 'Never active.', + crm_lead_fid: null, + crm_contact_fid: null, + crm_owner_fid: '00G2v000004WYXaEAO', + crm_account_fid: null, + salesforce_fid: null, + crm_last_sync: null, + crm_url: null, + is_do_not_email: null, + is_do_not_call: null, + opted_out: null, + is_reviewed: 1, + is_starred: null, + created_at: '2022-01-21 18:21:46', + updated_at: '2022-01-21 18:48:41', + campaign: { + id: 42113, + name: 'Test', + crm_fid: '7012y000000MNOCLL4', + }, + assigned_to: { + user: { + id: 38443703, + email: 'test_rudderstack@testcompany.com', + first_name: 'Rudderstack', + last_name: 'User', + job_title: null, + role: 'Administrator', + account: 489853, + created_at: '2021-02-26 06:25:17', + updated_at: '2021-02-26 06:25:17', + }, + }, + Are_you_shipping_large_fragile_or_bulky_items: false, + Calendly: false, + Country_Code: 'AU', + Currency: 'AUD', + Inventory_or_Warehouse_Management_System: false, + Lead_Status: 'New', + Marketing_Stage: 'SAL', + Record_Type_ID: 'TestCompany Lead', + profile: { + id: 304, + name: 'Default', + profile_criteria: [ + { + id: 1500, + name: 'Shipping Volume', + matches: 'Unknown', + }, + { + id: 1502, + name: 'Industry', + matches: 'Unknown', + }, + { + id: 1506, + name: 'Job Title', + matches: 'Unknown', + }, + { + id: 1508, + name: 'Department', + matches: 'Unknown', + }, + ], + }, + visitors: null, + visitor_activities: null, + lists: null, + }, + }, + status: 200, + statusText: 'OK', + }, + }, + // 3rd proxy test-case + { + httpReq: { + url: 'https://pi.pardot.com/api/prospect/version/4/do/upsert/fid/00Q6r000002LKhTPVR', + data: getFormData({ + first_name: 'Nick', + last_name: 'Kyrgios', + website: 'https://rudderstack.com', + score: 12, + campaign_id: 42213, + format: 'json', + }).toString(), + params: { destination: 'pardot' }, + headers: { + Authorization: 'Bearer myToken', + 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8', + 'Pardot-Business-Unit-Id': '0Uv2v000000k9tHCAQ', + 'User-Agent': 'RudderLabs', + }, + method: 'POST', + }, + httpRes: { + data: { + '@attributes': { + stat: 'ok', + version: 1, + }, + prospect: { + id: 123435, + campaign_id: 42213, + salutation: null, + first_name: 'Roger_12', + last_name: 'Federer_12', + email: 'Roger_12@federer.io', + password: null, + company: null, + website: 'https://rudderstack.com', + job_title: null, + department: null, + country: 'AU', + address_one: null, + address_two: null, + city: null, + state: null, + territory: null, + zip: null, + phone: null, + fax: null, + source: null, + annual_revenue: null, + employees: null, + industry: null, + years_in_business: null, + comments: null, + notes: null, + score: 14, + grade: null, + last_activity_at: null, + recent_interaction: 'Never active.', + crm_lead_fid: '00Q6r000002LKhTPVR', + crm_contact_fid: null, + crm_owner_fid: '00G2v000004WYXaEAO', + crm_account_fid: null, + salesforce_fid: '00Q6r000002LKhTPVR', + crm_last_sync: '2022-01-21 18:47:37', + crm_url: 'https://testcompany.my.salesforce.com/00Q6r000002LKhTPVR', + is_do_not_email: null, + is_do_not_call: null, + opted_out: null, + is_reviewed: 1, + is_starred: null, + created_at: '2022-01-21 18:21:46', + updated_at: '2022-01-21 18:48:41', + campaign: { + id: 42113, + name: 'Test', + crm_fid: '7012y000000MNOCLL4', + }, + assigned_to: { + user: { + id: 38443703, + email: 'test_rudderstack@testcompany.com', + first_name: 'Rudderstack', + last_name: 'User', + job_title: null, + role: 'Administrator', + account: 489853, + created_at: '2021-02-26 06:25:17', + updated_at: '2021-02-26 06:25:17', + }, + }, + Are_you_shipping_large_fragile_or_bulky_items: false, + Calendly: false, + Country_Code: 'AU', + Currency: 'AUD', + Inventory_or_Warehouse_Management_System: false, + Lead_Status: 'New', + Marketing_Stage: 'SAL', + Record_Type_ID: 'TestCompany Lead', + profile: { + id: 304, + name: 'Default', + profile_criteria: [ + { + id: 1500, + name: 'Shipping Volume', + matches: 'Unknown', + }, + { + id: 1502, + name: 'Industry', + matches: 'Unknown', + }, + { + id: 1506, + name: 'Job Title', + matches: 'Unknown', + }, + { + id: 1508, + name: 'Department', + matches: 'Unknown', + }, + ], + }, + visitors: null, + visitor_activities: null, + lists: null, + }, + }, + status: 200, + statusText: 'OK', + }, + }, +]; diff --git a/test/integrations/destinations/pardot/router/data.ts b/test/integrations/destinations/pardot/router/data.ts index 28680deafc..7c2a2a11e3 100644 --- a/test/integrations/destinations/pardot/router/data.ts +++ b/test/integrations/destinations/pardot/router/data.ts @@ -1,3 +1,5 @@ +import { FEATURES, MODULES } from '../../../../../src/v0/util/tags'; + export const data = [ { name: 'pardot', @@ -1014,4 +1016,555 @@ export const data = [ }, }, }, + { + name: 'pardot', + description: 'Test proxy - 0', + feature: FEATURES.DATA_DELIVERY, + module: MODULES.DESTINATION, + version: 'v0', + input: { + request: { + body: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://pi.pardot.com/api/prospect/version/4/do/upsert/id/123435', + headers: { + Authorization: 'Bearer myToken', + 'Pardot-Business-Unit-Id': '0Uv2v000000k9tHCAQ', + }, + body: { + JSON: {}, + JSON_ARRAY: {}, + XML: {}, + FORM: { + first_name: 'Roger12', + last_name: 'Federer12', + website: 'https://rudderstack.com', + score: 14, + campaign_id: 42213, + }, + }, + files: {}, + params: { + destination: 'pardot', + }, + }, + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: { + output: { + message: 'Request Processed Successfully', + status: 200, + destinationResponse: { + response: { + '@attributes': { + stat: 'ok', + version: 1, + }, + prospect: { + id: 123435, + campaign_id: 42213, + salutation: null, + first_name: 'Roger12', + last_name: 'Federer12', + email: 'Roger12@waltair.io', + password: null, + company: null, + website: 'https://rudderstack.com', + job_title: null, + department: null, + country: 'AU', + address_one: null, + address_two: null, + city: null, + state: null, + territory: null, + zip: null, + phone: null, + fax: null, + source: null, + annual_revenue: null, + employees: null, + industry: null, + years_in_business: null, + comments: null, + notes: null, + score: 14, + grade: null, + last_activity_at: null, + recent_interaction: 'Never active.', + crm_lead_fid: null, + crm_contact_fid: null, + crm_owner_fid: '00G2v000004WYXaEAO', + crm_account_fid: null, + salesforce_fid: null, + crm_last_sync: null, + crm_url: null, + is_do_not_email: null, + is_do_not_call: null, + opted_out: null, + is_reviewed: 1, + is_starred: null, + created_at: '2022-01-21 18:21:46', + updated_at: '2022-01-21 18:48:41', + campaign: { + id: 42113, + name: 'Test', + crm_fid: '7012y000000MNOCLL4', + }, + assigned_to: { + user: { + id: 38443703, + email: 'test_rudderstack@testcompany.com', + first_name: 'Rudderstack', + last_name: 'User', + job_title: null, + role: 'Administrator', + account: 489853, + created_at: '2021-02-26 06:25:17', + updated_at: '2021-02-26 06:25:17', + }, + }, + Are_you_shipping_large_fragile_or_bulky_items: false, + Calendly: false, + Country_Code: 'AU', + Currency: 'AUD', + Inventory_or_Warehouse_Management_System: false, + Lead_Status: 'New', + Marketing_Stage: 'SAL', + Record_Type_ID: 'TestCompany Lead', + profile: { + id: 304, + name: 'Default', + profile_criteria: [ + { + id: 1500, + name: 'Shipping Volume', + matches: 'Unknown', + }, + { + id: 1502, + name: 'Industry', + matches: 'Unknown', + }, + { + id: 1506, + name: 'Job Title', + matches: 'Unknown', + }, + { + id: 1508, + name: 'Department', + matches: 'Unknown', + }, + ], + }, + visitors: null, + visitor_activities: null, + lists: null, + }, + }, + status: 200, + }, + }, + }, + }, + }, + }, + { + name: 'pardot', + description: 'Test proxy - 1', + feature: FEATURES.DATA_DELIVERY, + module: MODULES.DESTINATION, + version: 'v0', + input: { + request: { + body: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: + 'https://pi.pardot.com/api/prospect/version/4/do/upsert/email/Roger_12@waltair.io', + headers: { + Authorization: 'Bearer myToken', + 'Pardot-Business-Unit-Id': '0Uv2v000000k9tHCAQ', + }, + body: { + JSON: {}, + JSON_ARRAY: {}, + XML: {}, + FORM: { + first_name: 'Roger_12', + last_name: 'Federer_12', + website: 'https://rudderstack.com', + score: 14, + campaign_id: 42213, + }, + }, + files: {}, + params: { + destination: 'pardot', + }, + }, + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: { + output: { + message: 'Request Processed Successfully', + status: 201, + destinationResponse: { + response: { + '@attributes': { + stat: 'ok', + version: 1, + }, + prospect: { + id: 123435, + campaign_id: 42213, + salutation: null, + first_name: 'Roger_12', + last_name: 'Federer_12', + email: 'Roger_12@waltair.io', + password: null, + company: null, + website: 'https://rudderstack.com', + job_title: null, + department: null, + country: 'AU', + address_one: null, + address_two: null, + city: null, + state: null, + territory: null, + zip: null, + phone: null, + fax: null, + source: null, + annual_revenue: null, + employees: null, + industry: null, + years_in_business: null, + comments: null, + notes: null, + score: 14, + grade: null, + last_activity_at: null, + recent_interaction: 'Never active.', + crm_lead_fid: null, + crm_contact_fid: null, + crm_owner_fid: '00G2v000004WYXaEAO', + crm_account_fid: null, + salesforce_fid: null, + crm_last_sync: null, + crm_url: null, + is_do_not_email: null, + is_do_not_call: null, + opted_out: null, + is_reviewed: 1, + is_starred: null, + created_at: '2022-01-21 18:21:46', + updated_at: '2022-01-21 18:48:41', + campaign: { + id: 42113, + name: 'Test', + crm_fid: '7012y000000MNOCLL4', + }, + assigned_to: { + user: { + id: 38443703, + email: 'test_rudderstack@testcompany.com', + first_name: 'Rudderstack', + last_name: 'User', + job_title: null, + role: 'Administrator', + account: 489853, + created_at: '2021-02-26 06:25:17', + updated_at: '2021-02-26 06:25:17', + }, + }, + Are_you_shipping_large_fragile_or_bulky_items: false, + Calendly: false, + Country_Code: 'AU', + Currency: 'AUD', + Inventory_or_Warehouse_Management_System: false, + Lead_Status: 'New', + Marketing_Stage: 'SAL', + Record_Type_ID: 'TestCompany Lead', + profile: { + id: 304, + name: 'Default', + profile_criteria: [ + { + id: 1500, + name: 'Shipping Volume', + matches: 'Unknown', + }, + { + id: 1502, + name: 'Industry', + matches: 'Unknown', + }, + { + id: 1506, + name: 'Job Title', + matches: 'Unknown', + }, + { + id: 1508, + name: 'Department', + matches: 'Unknown', + }, + ], + }, + visitors: null, + visitor_activities: null, + lists: null, + }, + }, + status: 201, + }, + }, + }, + }, + }, + }, + { + name: 'pardot', + description: 'Test proxy - 2', + feature: FEATURES.DATA_DELIVERY, + module: MODULES.DESTINATION, + version: 'v0', + input: { + request: { + body: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: 'https://pi.pardot.com/api/prospect/version/4/do/upsert/fid/00Q6r000002LKhTPVR', + headers: { + Authorization: 'Bearer myToken', + 'Pardot-Business-Unit-Id': '0Uv2v000000k9tHCAQ', + }, + body: { + JSON: {}, + JSON_ARRAY: {}, + XML: {}, + FORM: { + first_name: 'Nick', + last_name: 'Kyrgios', + website: 'https://rudderstack.com', + score: 12, + campaign_id: 42213, + }, + }, + files: {}, + params: { + destination: 'pardot', + }, + }, + method: 'POST', + }, + }, + output: { + response: { + status: 200, + body: { + output: { + message: 'Request Processed Successfully', + status: 200, + destinationResponse: { + response: { + '@attributes': { + stat: 'ok', + version: 1, + }, + prospect: { + id: 123435, + campaign_id: 42213, + salutation: null, + first_name: 'Roger_12', + last_name: 'Federer_12', + email: 'Roger_12@federer.io', + password: null, + company: null, + website: 'https://rudderstack.com', + job_title: null, + department: null, + country: 'AU', + address_one: null, + address_two: null, + city: null, + state: null, + territory: null, + zip: null, + phone: null, + fax: null, + source: null, + annual_revenue: null, + employees: null, + industry: null, + years_in_business: null, + comments: null, + notes: null, + score: 14, + grade: null, + last_activity_at: null, + recent_interaction: 'Never active.', + crm_lead_fid: '00Q6r000002LKhTPVR', + crm_contact_fid: null, + crm_owner_fid: '00G2v000004WYXaEAO', + crm_account_fid: null, + salesforce_fid: '00Q6r000002LKhTPVR', + crm_last_sync: '2022-01-21 18:47:37', + crm_url: 'https://testcompany.my.salesforce.com/00Q6r000002LKhTPVR', + is_do_not_email: null, + is_do_not_call: null, + opted_out: null, + is_reviewed: 1, + is_starred: null, + created_at: '2022-01-21 18:21:46', + updated_at: '2022-01-21 18:48:41', + campaign: { + id: 42113, + name: 'Test', + crm_fid: '7012y000000MNOCLL4', + }, + assigned_to: { + user: { + id: 38443703, + email: 'test_rudderstack@testcompany.com', + first_name: 'Rudderstack', + last_name: 'User', + job_title: null, + role: 'Administrator', + account: 489853, + created_at: '2021-02-26 06:25:17', + updated_at: '2021-02-26 06:25:17', + }, + }, + Are_you_shipping_large_fragile_or_bulky_items: false, + Calendly: false, + Country_Code: 'AU', + Currency: 'AUD', + Inventory_or_Warehouse_Management_System: false, + Lead_Status: 'New', + Marketing_Stage: 'SAL', + Record_Type_ID: 'TestCompany Lead', + profile: { + id: 304, + name: 'Default', + profile_criteria: [ + { + id: 1500, + name: 'Shipping Volume', + matches: 'Unknown', + }, + { + id: 1502, + name: 'Industry', + matches: 'Unknown', + }, + { + id: 1506, + name: 'Job Title', + matches: 'Unknown', + }, + { + id: 1508, + name: 'Department', + matches: 'Unknown', + }, + ], + }, + visitors: null, + visitor_activities: null, + lists: null, + }, + }, + status: 200, + }, + }, + }, + }, + }, + }, + { + name: 'pardot', + description: 'Test proxy - 3', + feature: FEATURES.DATA_DELIVERY, + module: MODULES.DESTINATION, + version: 'v0', + input: { + request: { + body: { + version: '1', + type: 'REST', + method: 'POST', + endpoint: + 'https://pi.pardot.com/api/prospect/version/4/do/upsert/email/rolex_waltair@mywebsite.io', + headers: { + Authorization: 'Bearer myExpiredToken', + 'Pardot-Business-Unit-Id': '0Uv2v000000k9tHCAQ', + }, + body: { + JSON: {}, + JSON_ARRAY: {}, + XML: {}, + FORM: { + first_name: 'Rolex', + last_name: 'Waltair', + website: 'https://rudderstack.com', + score: 15, + campaign_id: 42213, + }, + }, + files: {}, + params: { + destination: 'pardot', + }, + }, + method: 'POST', + }, + }, + output: { + response: { + status: 500, + body: { + output: { + message: + 'access_token is invalid, unknown, or malformed: Inactive token during Pardot response transformation', + status: 500, + authErrorCategory: 'REFRESH_TOKEN', + destinationResponse: { + '@attributes': { + stat: 'fail', + version: 1, + err_code: 184, + }, + err: 'access_token is invalid, unknown, or malformed: Inactive token', + }, + statTags: { + destType: 'PARDOT', + errorCategory: 'network', + destinationId: 'Non-determininable', + workspaceId: 'Non-determininable', + errorType: 'retryable', + feature: 'dataDelivery', + implementation: 'native', + module: 'destination', + }, + }, + }, + }, + }, + }, ]; diff --git a/test/integrations/destinations/sendgrid/deleteUsers/data.ts b/test/integrations/destinations/sendgrid/deleteUsers/data.ts new file mode 100644 index 0000000000..85c6e1275f --- /dev/null +++ b/test/integrations/destinations/sendgrid/deleteUsers/data.ts @@ -0,0 +1,1275 @@ +export const data = [ + { + name: 'sendgrid', + description: 'Test 0', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'SENDGRID', + userAttributes: [ + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + ], + config: { + apiKey: '1234', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'User deletion request failed', + }, + ], + }, + }, + }, + { + name: 'sendgrid', + description: 'Test 1', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'SENDGRID', + userAttributes: [ + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + { + userId: + 'test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + }, + { + userId: + 'user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + }, + ], + config: { + apiKey: '1234', + }, + }, + ], + }, + }, + output: { + response: { + status: 200, + body: [ + { + statusCode: 200, + status: 'successful', + }, + ], + }, + }, + }, + { + name: 'sendgrid', + description: 'Test 2', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'SENDGRID', + userAttributes: [ + { + userId: 'eab57ccf-6322-498e-9338-7761c6dc0656', + }, + { + userId: '47983ca9-7cc6-4942-8ff0-ac443g95658d', + }, + ], + config: {}, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'apiKey is required for deleting user', + }, + ], + }, + }, + }, + { + name: 'sendgrid', + description: 'Test 3', + feature: 'userDeletion', + module: 'destination', + version: 'v0', + input: { + request: { + body: [ + { + destType: 'SENDGRID', + userAttributes: { + userId: 'eab57ccf-6322-498e-9338-7761c6dc0656', + }, + config: { + apiKey: '1234', + }, + }, + ], + }, + }, + output: { + response: { + status: 400, + body: [ + { + statusCode: 400, + error: 'userAttributes is not an array', + }, + ], + }, + }, + }, +]; diff --git a/test/integrations/destinations/sendgrid/network.ts b/test/integrations/destinations/sendgrid/network.ts new file mode 100644 index 0000000000..18a8a8d34d --- /dev/null +++ b/test/integrations/destinations/sendgrid/network.ts @@ -0,0 +1,110 @@ +const deleteNwData = [ + { + httpReq: { + method: 'delete', + url: 'https://api.sendgrid.com/v3/marketing/contacts?ids=test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + headers: { + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + message: { + job_id: 'bb33b1f9-e7d6-4a6c-bf1c-a2143275e257', + }, + }, + }, + }, + { + httpReq: { + method: 'delete', + url: 'https://api.sendgrid.com/v3/marketing/contacts?ids=user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + headers: { + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + data: { + code: 400, + message: 'Bad Req', + status: 'Fail Case', + }, + status: 400, + }, + }, + { + httpReq: { + method: 'delete', + url: 'https://api.sendgrid.com/v3/marketing/contacts?ids=[user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2]', + headers: { + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': { + job_id: 'bb33b1f9-e7d6-4a6c-bf1c-a2143275e257', + }, + }, + }, + }, + { + httpReq: { + method: 'delete', + url: 'https://api.sendgrid.com/v3/marketing/contacts?ids=[user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2]', + headers: { + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + message: { + job_id: 'bb33b1f9-e7d6-4a6c-bf1c-a2143275e257', + }, + }, + }, + }, + { + httpReq: { + method: 'delete', + url: 'https://api.sendgrid.com/v3/marketing/contacts?ids=test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id', + headers: { + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': { + job_id: 'bb33b1f9-e7d6-4a6c-bf1c-a2143275e257', + }, + }, + }, + }, + { + httpReq: { + method: 'delete', + url: 'https://api.sendgrid.com/v3/marketing/contacts?ids=user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2,test_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_idtest_user_id,user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2user_sdk2', + headers: { + Authorization: 'Bearer 1234', + }, + }, + httpRes: { + status: 200, + statusText: 'OK', + data: { + ' message': { + job_id: 'bb33b1f9-e7d6-4a6c-bf1c-a2143275e257', + }, + }, + }, + }, +]; +export const networkCallsData = [...deleteNwData]; diff --git a/test/integrations/destinations/trengo/network.ts b/test/integrations/destinations/trengo/network.ts new file mode 100644 index 0000000000..e409489b8f --- /dev/null +++ b/test/integrations/destinations/trengo/network.ts @@ -0,0 +1,1326 @@ +export const networkCallsData = [ + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=9830311521', + }, + httpRes: { + data: { + data: [ + { + abbr: 'T', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + ], + color: '#607d8b', + custom_field_data: null, + display_name: 'Haz matsumi phone 2 (+98 30311521)', + email: null, + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 30311521', + full_name: 'Thalmor Bretz', + id: 90002431001, + identifier: '+98 30311521', + is_phone: true, + is_private: false, + name: 'Thalmor Bretz', + phone: '+98 30311521', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=j@d.com', + }, + httpRes: { + data: { + data: [], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=j@d.com', + }, + httpRes: { + data: { + data: [], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=null', + }, + httpRes: { data: { error: 'Request failed', status: 404 }, status: 200 }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=12345678910', + }, + httpRes: { + data: { + data: [], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=99999666661', + }, + httpRes: { data: { error: 'Request failed', status: 404 }, status: 200 }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=98765432100', + }, + httpRes: { + data: { + data: [ + { + abbr: 'T', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + ], + color: '#607d8b', + custom_field_data: null, + display_name: 'Michael Scott (+98 30311521)', + email: null, + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 765432100', + full_name: 'Michael Scott', + id: 90002431001, + identifier: '+98 765432100', + is_phone: true, + is_private: false, + name: 'Michael Scott', + phone: '+98 765432100', + pivot: null, + profile: [], + profile_image: null, + }, + { + abbr: 'T', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + ], + color: '#607d8b', + custom_field_data: null, + display_name: 'Michael G Scott (+98 30311521)', + email: null, + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 765432100', + full_name: 'Michael G Scott', + id: 90002431003, + identifier: '+98 765432100', + is_phone: true, + is_private: false, + name: 'Michael G Scott', + phone: '+98 765432100', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=test@outlook.com', + }, + httpRes: { + data: { + data: [ + { + abbr: 'U', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'email • 5xcyI53Nf7@trengomail.com', + emailChannel: { + add_conversation_to_reply: 1, + auto_reply_body: + '

Dear [name],

This is a confirmation that we received your email and registered it as ticket #[ticket_number]. You can always reply to this email if you want to add additional information.

Kinds regards,

Team Rudder

', + auto_reply_enabled: 1, + auto_reply_subject: null, + branding: 1, + branding_service_name: 'Rudder', + channel_id: 405980, + created_at: '2021-05-13 08:47:56', + email_theme_id: null, + embed_attachments: 1, + font_family: null, + meta: { + selectedFolders: [], + syncFolders: [], + syncStatus: null, + zapier_consent: null, + }, + prepend_ticket_number_to_subject: 0, + sender_email: null, + sender_email_id: null, + sender_name: 'Rudder', + sender_name_personal: '[agent.first_name] | Rudder', + signature: + '

Kind regards,

[agent.first_name] [agent.last_name]
Rudder

', + spam_setting: 1, + split_by_sender: 0, + split_by_subject: 1, + type: 'TRENGO', + updated_at: '2021-05-13 08:47:56', + }, + id: 405980, + is_private: false, + name: 'Email', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'email • 5xcyI53Nf7@trengomail.com', + title: 'email', + type: 'EMAIL', + username: '5xcyI53Nf7', + users: [], + }, + ], + color: '#00bcd4', + custom_field_data: null, + display_name: 'test Phone tct (test@outlook.com)', + email: 'test@outlook.com', + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 303115423', + full_name: 'test Email', + id: 97694755, + identifier: 'test@outlook.com', + is_phone: true, + is_private: false, + name: 'test Email', + phone: '98303115423', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=test@outlook.com', + }, + httpRes: { + data: { + data: [ + { + abbr: 'U', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'email • 5xcyI53Nf7@trengomail.com', + emailChannel: { + add_conversation_to_reply: 1, + auto_reply_body: + '

Dear [name],

This is a confirmation that we received your email and registered it as ticket #[ticket_number]. You can always reply to this email if you want to add additional information.

Kinds regards,

Team Rudder

', + auto_reply_enabled: 1, + auto_reply_subject: null, + branding: 1, + branding_service_name: 'Rudder', + channel_id: 405980, + created_at: '2021-05-13 08:47:56', + email_theme_id: null, + embed_attachments: 1, + font_family: null, + meta: { + selectedFolders: [], + syncFolders: [], + syncStatus: null, + zapier_consent: null, + }, + prepend_ticket_number_to_subject: 0, + sender_email: null, + sender_email_id: null, + sender_name: 'Rudder', + sender_name_personal: '[agent.first_name] | Rudder', + signature: + '

Kind regards,

[agent.first_name] [agent.last_name]
Rudder

', + spam_setting: 1, + split_by_sender: 0, + split_by_subject: 1, + type: 'TRENGO', + updated_at: '2021-05-13 08:47:56', + }, + id: 405980, + is_private: false, + name: 'Email', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'email • 5xcyI53Nf7@trengomail.com', + title: 'email', + type: 'EMAIL', + username: '5xcyI53Nf7', + users: [], + }, + ], + color: '#00bcd4', + custom_field_data: null, + display_name: 'test Phone tct (test@outlook.com)', + email: 'test@outlook.com', + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 303115423', + full_name: 'test Email', + id: 97694755, + identifier: 'test@outlook.com', + is_phone: true, + is_private: false, + name: 'test Email', + phone: '98303115423', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=98765432100', + }, + httpRes: { + data: { + data: [ + { + abbr: 'T', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + ], + color: '#607d8b', + custom_field_data: null, + display_name: 'Michael Scott (+98 30311521)', + email: null, + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 765432100', + full_name: 'Michael Scott', + id: 90002431001, + identifier: '+98 765432100', + is_phone: true, + is_private: false, + name: 'Michael Scott', + phone: '+98 765432100', + pivot: null, + profile: [], + profile_image: null, + }, + { + abbr: 'T', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + ], + color: '#607d8b', + custom_field_data: null, + display_name: 'Michael G Scott (+98 30311521)', + email: null, + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 765432100', + full_name: 'Michael G Scott', + id: 90002431003, + identifier: '+98 765432100', + is_phone: true, + is_private: false, + name: 'Michael G Scott', + phone: '+98 765432100', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=test@outlook.com', + }, + httpRes: { + data: { + data: [ + { + abbr: 'U', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'email • 5xcyI53Nf7@trengomail.com', + emailChannel: { + add_conversation_to_reply: 1, + auto_reply_body: + '

Dear [name],

This is a confirmation that we received your email and registered it as ticket #[ticket_number]. You can always reply to this email if you want to add additional information.

Kinds regards,

Team Rudder

', + auto_reply_enabled: 1, + auto_reply_subject: null, + branding: 1, + branding_service_name: 'Rudder', + channel_id: 405980, + created_at: '2021-05-13 08:47:56', + email_theme_id: null, + embed_attachments: 1, + font_family: null, + meta: { + selectedFolders: [], + syncFolders: [], + syncStatus: null, + zapier_consent: null, + }, + prepend_ticket_number_to_subject: 0, + sender_email: null, + sender_email_id: null, + sender_name: 'Rudder', + sender_name_personal: '[agent.first_name] | Rudder', + signature: + '

Kind regards,

[agent.first_name] [agent.last_name]
Rudder

', + spam_setting: 1, + split_by_sender: 0, + split_by_subject: 1, + type: 'TRENGO', + updated_at: '2021-05-13 08:47:56', + }, + id: 405980, + is_private: false, + name: 'Email', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'email • 5xcyI53Nf7@trengomail.com', + title: 'email', + type: 'EMAIL', + username: '5xcyI53Nf7', + users: [], + }, + ], + color: '#00bcd4', + custom_field_data: null, + display_name: 'test Phone tct (test@outlook.com)', + email: 'test@outlook.com', + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 303115423', + full_name: 'test Email', + id: 97694755, + identifier: 'test@outlook.com', + is_phone: true, + is_private: false, + name: 'test Email', + phone: '98303115423', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=test@outlook.com', + }, + httpRes: { + data: { + data: [ + { + abbr: 'U', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'email • 5xcyI53Nf7@trengomail.com', + emailChannel: { + add_conversation_to_reply: 1, + auto_reply_body: + '

Dear [name],

This is a confirmation that we received your email and registered it as ticket #[ticket_number]. You can always reply to this email if you want to add additional information.

Kinds regards,

Team Rudder

', + auto_reply_enabled: 1, + auto_reply_subject: null, + branding: 1, + branding_service_name: 'Rudder', + channel_id: 405980, + created_at: '2021-05-13 08:47:56', + email_theme_id: null, + embed_attachments: 1, + font_family: null, + meta: { + selectedFolders: [], + syncFolders: [], + syncStatus: null, + zapier_consent: null, + }, + prepend_ticket_number_to_subject: 0, + sender_email: null, + sender_email_id: null, + sender_name: 'Rudder', + sender_name_personal: '[agent.first_name] | Rudder', + signature: + '

Kind regards,

[agent.first_name] [agent.last_name]
Rudder

', + spam_setting: 1, + split_by_sender: 0, + split_by_subject: 1, + type: 'TRENGO', + updated_at: '2021-05-13 08:47:56', + }, + id: 405980, + is_private: false, + name: 'Email', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'email • 5xcyI53Nf7@trengomail.com', + title: 'email', + type: 'EMAIL', + username: '5xcyI53Nf7', + users: [], + }, + ], + color: '#00bcd4', + custom_field_data: null, + display_name: 'test Phone tct (test@outlook.com)', + email: 'test@outlook.com', + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 303115423', + full_name: 'test Email', + id: 97694755, + identifier: 'test@outlook.com', + is_phone: true, + is_private: false, + name: 'test Email', + phone: '98303115423', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=test@outlook.com', + }, + httpRes: { + data: { + data: [ + { + abbr: 'U', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'email • 5xcyI53Nf7@trengomail.com', + emailChannel: { + add_conversation_to_reply: 1, + auto_reply_body: + '

Dear [name],

This is a confirmation that we received your email and registered it as ticket #[ticket_number]. You can always reply to this email if you want to add additional information.

Kinds regards,

Team Rudder

', + auto_reply_enabled: 1, + auto_reply_subject: null, + branding: 1, + branding_service_name: 'Rudder', + channel_id: 405980, + created_at: '2021-05-13 08:47:56', + email_theme_id: null, + embed_attachments: 1, + font_family: null, + meta: { + selectedFolders: [], + syncFolders: [], + syncStatus: null, + zapier_consent: null, + }, + prepend_ticket_number_to_subject: 0, + sender_email: null, + sender_email_id: null, + sender_name: 'Rudder', + sender_name_personal: '[agent.first_name] | Rudder', + signature: + '

Kind regards,

[agent.first_name] [agent.last_name]
Rudder

', + spam_setting: 1, + split_by_sender: 0, + split_by_subject: 1, + type: 'TRENGO', + updated_at: '2021-05-13 08:47:56', + }, + id: 405980, + is_private: false, + name: 'Email', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'email • 5xcyI53Nf7@trengomail.com', + title: 'email', + type: 'EMAIL', + username: '5xcyI53Nf7', + users: [], + }, + ], + color: '#00bcd4', + custom_field_data: null, + display_name: 'test Phone tct (test@outlook.com)', + email: 'test@outlook.com', + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 303115423', + full_name: 'test Email', + id: 97694755, + identifier: 'test@outlook.com', + is_phone: true, + is_private: false, + name: 'test Email', + phone: '98303115423', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=test@outlook.com', + }, + httpRes: { + data: { + data: [ + { + abbr: 'U', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'email • 5xcyI53Nf7@trengomail.com', + emailChannel: { + add_conversation_to_reply: 1, + auto_reply_body: + '

Dear [name],

This is a confirmation that we received your email and registered it as ticket #[ticket_number]. You can always reply to this email if you want to add additional information.

Kinds regards,

Team Rudder

', + auto_reply_enabled: 1, + auto_reply_subject: null, + branding: 1, + branding_service_name: 'Rudder', + channel_id: 405980, + created_at: '2021-05-13 08:47:56', + email_theme_id: null, + embed_attachments: 1, + font_family: null, + meta: { + selectedFolders: [], + syncFolders: [], + syncStatus: null, + zapier_consent: null, + }, + prepend_ticket_number_to_subject: 0, + sender_email: null, + sender_email_id: null, + sender_name: 'Rudder', + sender_name_personal: '[agent.first_name] | Rudder', + signature: + '

Kind regards,

[agent.first_name] [agent.last_name]
Rudder

', + spam_setting: 1, + split_by_sender: 0, + split_by_subject: 1, + type: 'TRENGO', + updated_at: '2021-05-13 08:47:56', + }, + id: 405980, + is_private: false, + name: 'Email', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'email • 5xcyI53Nf7@trengomail.com', + title: 'email', + type: 'EMAIL', + username: '5xcyI53Nf7', + users: [], + }, + ], + color: '#00bcd4', + custom_field_data: null, + display_name: 'test Phone tct (test@outlook.com)', + email: 'test@outlook.com', + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 303115423', + full_name: 'test Email', + id: 97694755, + identifier: 'test@outlook.com', + is_phone: true, + is_private: false, + name: 'test Email', + phone: '98303115423', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Bearer trengo_integration_test_api_token', + }, + + method: 'GET', + + url: 'https://app.trengo.com/api/v2/contacts?page=1&term=9830311521', + }, + httpRes: { + data: { + data: [ + { + abbr: 'T', + avatar: 'https://app.trengo.com/img/defaultpic.png', + channels: [ + { + auto_reply: 'ENABLED', + business_hour_id: 125020, + color: null, + display_name: 'sms • SMS', + emailChannel: null, + id: 406005, + is_private: false, + name: 'Sms', + notification_email: null, + notification_sound: 'chat.mp3', + password_is_null: false, + phone: '', + reassign_reopened_ticket: false, + reopen_closed_ticket: 1, + reopen_closed_ticket_time_window_days: '30', + show_contact_fields: 1, + show_ticket_fields: 1, + status: 'ACTIVE', + text: 'sms • SMS', + title: 'sms', + type: 'SMS', + username: null, + users: [], + }, + ], + color: '#607d8b', + custom_field_data: null, + display_name: 'Haz matsumi phone 2 (+98 30311521)', + email: null, + formatted_custom_field_data: { 'Customer number': null, Policy: null }, + formatted_phone: '+98 30311521', + full_name: 'Thalmor Bretz', + id: 90002431001, + identifier: '+98 30311521', + is_phone: true, + is_private: false, + name: 'Thalmor Bretz', + phone: '+98 30311521', + pivot: null, + profile: [], + profile_image: null, + }, + ], + links: { + first: 'https://app.trengo.com/api/v2/contacts?page=1', + last: null, + next: null, + prev: null, + }, + meta: { + current_page: 1, + from: 1, + path: 'https://app.trengo.com/api/v2/contacts', + per_page: 25, + to: 1, + }, + }, + status: 200, + }, + }, +]; diff --git a/test/integrations/destinations/user/network.ts b/test/integrations/destinations/user/network.ts new file mode 100644 index 0000000000..dff2e0726d --- /dev/null +++ b/test/integrations/destinations/user/network.ts @@ -0,0 +1,441 @@ +export const networkCallsData = [ + { + httpReq: { + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://commander.user.com/api/public/users-by-id/user@123/', + }, + httpRes: { + data: { + browser_language: null, + companies: [ + { id: 21, member_since: '2022-09-12T12:40:30.548068Z', name: 'parkings group' }, + { id: 19, member_since: '2022-09-12T12:37:58.522773Z', name: 'rudder constructors' }, + ], + created_at: '2022-09-06T11:52:48.828444Z', + custom_id: 'user@123', + email: null, + first_seen: '2022-09-06T11:52:48.812722Z', + gender: 'unknown', + gravatar_url: null, + id: 52, + last_seen: '2022-09-06T12:35:17.230000Z', + lists: [], + name: null, + notifications: true, + page_views: 2, + phone_number: '2345678901', + score: 0, + status: 'visitor', + tags: [], + unsubscribed: false, + updated_at: '2022-09-12T03:19:33.356280Z', + user_key: 'ngze13ffndcv', + web_push_subscription: false, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://commander.user.com/api/public/companies-by-id/group@795/', + }, + httpRes: { + data: { + address: '6th floor,california,usa', + category: null, + city: null, + companyowner: 'secret', + country: 'usa', + created_at: '2022-09-12T12:40:30.548068Z', + custom_id: 'group@795', + description: null, + email: 'business@rudderstack.com', + employees: [52], + founded: '15 aug, 1947', + id: 21, + isprivatefunded: 'no', + isprofitable: 'no', + name: 'rudder ventures', + phone_numbers: null, + postal_code: null, + region: null, + size: null, + tags: [], + updated_at: '2022-09-13T11:23:09.481891Z', + user_custom_id: 'user@123', + }, + status: 200, + }, + }, + { + httpReq: { + data: { + address: '6th StSan FranciscoCA94103USAtestuser', + city: 'San Francisco', + custom_id: 'group@795', + email: 'business@rudderstack.com', + name: 'rudder ventures', + postal_code: '94103', + user_custom_id: 'user@123', + }, + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'PUT', + + url: 'https://commander.user.com/api/public/companies/21/', + }, + httpRes: { + data: { + address: 'San FranciscoUSA94103CA6th St', + city: 'San Francisco', + companyowner: 'secret', + country: 'usa', + created_at: '2022-09-12T12:40:30.548068Z', + custom_id: 'group@795', + description: null, + email: 'business@rudderstack.com', + employees: [52], + founded: '15 aug, 1947', + id: 21, + isprivatefunded: 'no', + isprofitable: 'no', + name: 'rudder ventures', + phone_numbers: null, + postal_code: null, + region: null, + size: null, + tags: [], + updated_at: '2022-09-13T11:47:31.748497Z', + user_custom_id: 'user@123', + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://commander.user.com/api/public/users/search/?email=test@rudderstack.com', + }, + httpRes: { + data: { + browser_language: null, + companies: [], + country: 'india', + created_at: '2022-09-13T06:16:25.576355Z', + custom_id: 'test@12', + email: 'test@rudderstack.com', + gender: 'male', + google_url: 'www.google.com', + id: 59, + lists: [], + name: 'test rudderstack', + notifications: true, + phone_number: '9225467887', + score: 0, + status: 'user', + tags: [{ id: 5, name: 'productuser' }], + unsubscribed: false, + updated_at: '2022-09-13T06:16:25.576376Z', + user_key: 'ctlfkj37dbag', + web_push_subscription: false, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://commander.user.com/api/public/users/search/?key=lel1c5u1wuk8', + }, + httpRes: { + data: { + browser_language: null, + companies: [], + created_at: '2022-09-05T07:21:39.171977Z', + email: 'rahulverma@test.com', + gender: 'unknown', + gravatar_url: null, + id: 27, + lists: [], + name: 'rahul verma', + notifications: true, + phone_number: '+919432239876', + score: 0, + status: 'visitor', + tags: [ + { id: 1, name: 'updated' }, + { id: 2, name: 'verified' }, + ], + unsubscribed: false, + updated_at: '2022-09-05T07:21:39.171990Z', + user_key: 'lel1c5u1wuk8', + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://commander.user.com/api/public/users/search/?email=test@rudderstack.com', + }, + httpRes: { + data: { + browser_language: null, + companies: [], + country: 'india', + created_at: '2022-09-13T06:16:25.576355Z', + custom_id: 'test@12', + email: 'test@rudderstack.com', + gender: 'male', + google_url: 'www.google.com', + id: 59, + lists: [], + name: 'test rudderstack', + notifications: true, + phone_number: '9225467887', + score: 0, + status: 'user', + tags: [{ id: 5, name: 'productuser' }], + unsubscribed: false, + updated_at: '2022-09-13T06:16:25.576376Z', + user_key: 'ctlfkj37dbag', + web_push_subscription: false, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://commander.user.com/api/public/users-by-id/43/', + }, + httpRes: { + data: { + browser_language: null, + companies: [], + created_at: '2022-09-05T11:04:45.547861Z', + custom_id: '43', + email: null, + first_seen: '2022-09-05T11:04:45.535122Z', + gender: 'unknown', + gravatar_url: null, + id: 44, + last_seen: null, + lists: [], + name: null, + page_views: 0, + score: 0, + status: 'visitor', + tags: [], + unsubscribed: false, + updated_at: '2022-09-05T11:04:45.547876Z', + user_key: 'rpl0vjwysmc0', + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://commander.user.com/api/public/users-by-id/43/', + }, + httpRes: { + data: { + browser_language: null, + companies: [], + created_at: '2022-09-05T11:04:45.547861Z', + custom_id: '43', + email: null, + first_seen: '2022-09-05T11:04:45.535122Z', + gender: 'unknown', + gravatar_url: null, + id: 44, + last_seen: null, + lists: [], + name: null, + page_views: 0, + score: 0, + status: 'visitor', + tags: [], + unsubscribed: false, + updated_at: '2022-09-05T11:04:45.547876Z', + user_key: 'rpl0vjwysmc0', + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://commander.user.com/api/public/users-by-id/user@123/', + }, + httpRes: { + data: { + browser_language: null, + companies: [ + { id: 21, member_since: '2022-09-12T12:40:30.548068Z', name: 'parkings group' }, + { id: 19, member_since: '2022-09-12T12:37:58.522773Z', name: 'rudder constructors' }, + ], + created_at: '2022-09-06T11:52:48.828444Z', + custom_id: 'user@123', + email: null, + first_seen: '2022-09-06T11:52:48.812722Z', + gender: 'unknown', + gravatar_url: null, + id: 52, + last_seen: '2022-09-06T12:35:17.230000Z', + lists: [], + name: null, + notifications: true, + page_views: 2, + phone_number: '2345678901', + score: 0, + status: 'visitor', + tags: [], + unsubscribed: false, + updated_at: '2022-09-12T03:19:33.356280Z', + user_key: 'ngze13ffndcv', + web_push_subscription: false, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'GET', + + url: 'https://commander.user.com/api/public/companies-by-id/group@795/', + }, + httpRes: { + data: { + address: '6th floor,california,usa', + category: null, + city: null, + companyowner: 'secret', + country: 'usa', + created_at: '2022-09-12T12:40:30.548068Z', + custom_id: 'group@795', + description: null, + email: 'business@rudderstack.com', + employees: [52], + founded: '15 aug, 1947', + id: 21, + isprivatefunded: 'no', + isprofitable: 'no', + name: 'rudder ventures', + phone_numbers: null, + postal_code: null, + region: null, + size: null, + tags: [], + updated_at: '2022-09-13T11:23:09.481891Z', + user_custom_id: 'user@123', + }, + status: 200, + }, + }, + { + httpReq: { + data: { + address: '6th StSan FranciscoCA94103USAtestuser', + city: 'San Francisco', + custom_id: 'group@795', + email: 'business@rudderstack.com', + name: 'rudder ventures', + postal_code: '94103', + user_custom_id: 'user@123', + }, + headers: { + Authorization: 'Token dummyApiKey', + 'Content-Type': 'application/json', + }, + + method: 'PUT', + + url: 'https://commander.user.com/api/public/companies/21/', + }, + httpRes: { + data: { + address: 'San FranciscoUSA94103CA6th St', + city: 'San Francisco', + companyowner: 'secret', + country: 'usa', + created_at: '2022-09-12T12:40:30.548068Z', + custom_id: 'group@795', + description: null, + email: 'business@rudderstack.com', + employees: [52], + founded: '15 aug, 1947', + id: 21, + isprivatefunded: 'no', + isprofitable: 'no', + name: 'rudder ventures', + phone_numbers: null, + postal_code: null, + region: null, + size: null, + tags: [], + updated_at: '2022-09-13T11:47:31.748497Z', + user_custom_id: 'user@123', + }, + status: 200, + }, + }, +]; diff --git a/test/integrations/destinations/yahoo_dsp/network.ts b/test/integrations/destinations/yahoo_dsp/network.ts new file mode 100644 index 0000000000..2dcd0d2a9f --- /dev/null +++ b/test/integrations/destinations/yahoo_dsp/network.ts @@ -0,0 +1,22 @@ +export const networkCallsData = [ + { + httpReq: { + headers: { + Accept: 'application/json', + 'Content-Type': 'application/x-www-form-urlencoded', + }, + data: 'grant_type=client_credentials&scope=dsp-api-access&realm=dsp&client_assertion_type=urn%3Aietf%3Aparams%3Aoauth%3Aclient-assertion-type%3Ajwt-bearer&client_assertion=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJodHRwczovL2lkLmIyYi55YWhvb2luYy5jb20vaWRlbnRpdHkvb2F1dGgyL2FjY2Vzc190b2tlbj9yZWFsbT1kc3AiLCJzdWIiOiJhYmNkZWY4LWY0OS00Y2Q2LWI0YzUtOTU4YjNkNjZkNDMxIiwiaXNzIjoiYWJjZGVmOC1mNDktNGNkNi1iNGM1LTk1OGIzZDY2ZDQzMSIsImV4cCI6MTY5NTMwODk5MCwiaWF0IjoxNjk1MzA1MzkwfQ.HdBZJ0PoI8L0LRRdfbYtbJbmtrOAQmfu2APbuIQguIA', + method: 'POST', + url: 'https://id.b2b.yahooinc.com/identity/oauth2/access_token', + }, + httpRes: { + data: { + access_token: 'testAuthToken', + expires_in: 3599, + scope: 'dsp-api-access', + token_type: 'Bearer', + }, + status: 200, + }, + }, +]; diff --git a/test/integrations/destinations/yahoo_dsp/processor/data.ts b/test/integrations/destinations/yahoo_dsp/processor/data.ts index cb5145ed3a..eb607d60fb 100644 --- a/test/integrations/destinations/yahoo_dsp/processor/data.ts +++ b/test/integrations/destinations/yahoo_dsp/processor/data.ts @@ -1,3 +1,11 @@ +import { addMock } from '../../../testUtils'; +import { networkCallsData } from '../network'; + +export const mockFns = (mockAdapter) => { + addMock(mockAdapter, networkCallsData[0]); + // 21 September 2023 19:39:50 GMT+05:30 + Date.now = jest.fn(() => 1695305390000); +}; export const data = [ { name: 'yahoo_dsp', @@ -1107,4 +1115,6 @@ export const data = [ }, }, }, -]; +].map((d) => { + return { ...d, mockFns }; +}); diff --git a/test/integrations/destinations/yahoo_dsp/router/data.ts b/test/integrations/destinations/yahoo_dsp/router/data.ts index ea340fb6be..59c71b300c 100644 --- a/test/integrations/destinations/yahoo_dsp/router/data.ts +++ b/test/integrations/destinations/yahoo_dsp/router/data.ts @@ -1,3 +1,5 @@ +import { mockFns } from '../processor/data'; + export const data = [ { name: 'yahoo_dsp', @@ -144,5 +146,6 @@ export const data = [ }, }, }, + mockFns, }, ]; diff --git a/test/integrations/destinations/zendesk/network.ts b/test/integrations/destinations/zendesk/network.ts new file mode 100644 index 0000000000..bc80f0cd0a --- /dev/null +++ b/test/integrations/destinations/zendesk/network.ts @@ -0,0 +1,1825 @@ +export const networkCallsData = [ + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organization_fields.json', + }, + httpRes: { + data: { + count: 1, + next_page: null, + organization_fields: [ + { + active: true, + created_at: '2020-03-23T18:14:35Z', + description: 'email', + id: 900000015126, + key: 'email', + position: 0, + raw_description: 'email', + raw_title: 'email', + regexp_for_validation: null, + system: false, + title: 'email', + type: 'text', + updated_at: '2020-03-23T18:14:35Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organization_fields/900000015126.json', + }, + ], + previous_page: null, + }, + status: 200, + }, + }, + { + httpReq: { + data: { + organization: { + domain_names: 'cw124.com', + external_id: 'group-124', + name: 'test-org124', + organization_fields: { email: 'group_email_124@xyz.com', id: 'group-124' }, + }, + }, + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organizations/create_or_update.json', + }, + httpRes: { + data: { + organization: { + created_at: '2020-03-17T10:21:14Z', + details: null, + domain_names: ['cw124.com'], + external_id: 'group-124', + group_id: null, + id: 900001329943, + name: 'test-org124', + notes: null, + organization_fields: { email: 'group_email_124@xyz.com' }, + shared_comments: false, + shared_tickets: false, + tags: [], + updated_at: '2020-03-23T19:33:08Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organizations/900001329943.json', + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/search.json?query=example124@email.com', + }, + httpRes: { + data: { + count: 1, + next_page: null, + previous_page: null, + users: [ + { + active: true, + alias: null, + chat_only: false, + created_at: '2020-03-17T10:21:15Z', + custom_role_id: null, + default_group_id: null, + details: null, + email: 'example124@email.com', + external_id: 'abcd-124', + iana_time_zone: 'America/New_York', + id: 900113780483, + last_login_at: null, + locale: 'en-US', + locale_id: 1, + moderator: false, + name: 'abcd124', + notes: null, + only_private_comments: false, + organization_id: null, + phone: null, + photo: null, + report_csv: false, + restricted_agent: true, + role: 'end-user', + role_type: null, + shared: false, + shared_agent: false, + shared_phone_number: null, + signature: null, + suspended: false, + tags: [], + ticket_restriction: 'requested', + time_zone: 'Eastern Time (US & Canada)', + two_factor_auth_enabled: false, + updated_at: '2020-03-17T12:16:59Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483.json', + user_fields: { birthday: null }, + verified: true, + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2//users/900113780483/organization_memberships.json', + }, + httpRes: { error: 'Request failed' }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic cnVkZGVybGFidGVzdDJAZW1haWwuY29tL3Rva2VuOmR1bW15QXBpVG9rZW4=', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabtest2.zendesk.com/api/v2/users/search.json?query=testemail2@email', + }, + httpRes: { data: { count: 0, next_page: null, previous_page: null, users: [] }, status: 200 }, + }, + { + httpReq: { + data: { + user: { + email: 'testemail2@email', + external_id: '0000000000', + name: 'John Wick', + verified: true, + }, + }, + headers: { + Authorization: 'Basic cnVkZGVybGFidGVzdDJAZW1haWwuY29tL3Rva2VuOmR1bW15QXBpVG9rZW4=', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabtest2.zendesk.com/api/v2/users/create_or_update.json', + }, + httpRes: { data: { user: {} }, status: 200 }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organization_fields.json', + }, + httpRes: { + data: { + count: 1, + next_page: null, + organization_fields: [ + { + active: true, + created_at: '2020-03-23T18:14:35Z', + description: 'email', + id: 900000015126, + key: 'email', + position: 0, + raw_description: 'email', + raw_title: 'email', + regexp_for_validation: null, + system: false, + title: 'email', + type: 'text', + updated_at: '2020-03-23T18:14:35Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organization_fields/900000015126.json', + }, + ], + previous_page: null, + }, + status: 200, + }, + }, + { + httpReq: { + data: { + organization: { + domain_names: 'cw124.com', + external_id: 'group-124', + name: 'test-org124', + organization_fields: { email: 'group_email_124@xyz.com', id: 'group-124' }, + }, + }, + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organizations/create_or_update.json', + }, + httpRes: { + data: { + organization: { + created_at: '2020-03-17T10:21:14Z', + details: null, + domain_names: ['cw124.com'], + external_id: 'group-124', + group_id: null, + id: 900001329943, + name: 'test-org124', + notes: null, + organization_fields: { email: 'group_email_124@xyz.com' }, + shared_comments: false, + shared_tickets: false, + tags: [], + updated_at: '2020-03-23T19:33:08Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organizations/900001329943.json', + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/search.json?query=example124@email.com', + }, + httpRes: { + data: { + count: 1, + next_page: null, + previous_page: null, + users: [ + { + active: true, + alias: null, + chat_only: false, + created_at: '2020-03-17T10:21:15Z', + custom_role_id: null, + default_group_id: null, + details: null, + email: 'example124@email.com', + external_id: 'abcd-124', + iana_time_zone: 'America/New_York', + id: 900113780483, + last_login_at: null, + locale: 'en-US', + locale_id: 1, + moderator: false, + name: 'abcd124', + notes: null, + only_private_comments: false, + organization_id: null, + phone: null, + photo: null, + report_csv: false, + restricted_agent: true, + role: 'end-user', + role_type: null, + shared: false, + shared_agent: false, + shared_phone_number: null, + signature: null, + suspended: false, + tags: [], + ticket_restriction: 'requested', + time_zone: 'Eastern Time (US & Canada)', + two_factor_auth_enabled: false, + updated_at: '2020-03-17T12:16:59Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483.json', + user_fields: { birthday: null }, + verified: true, + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2//users/900113780483/organization_memberships.json', + }, + httpRes: { error: 'Request failed' }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/search.json?query=example124@email.com', + }, + httpRes: { + data: { + count: 1, + next_page: null, + previous_page: null, + users: [ + { + active: true, + alias: null, + chat_only: false, + created_at: '2020-03-17T10:21:15Z', + custom_role_id: null, + default_group_id: null, + details: null, + email: 'example124@email.com', + external_id: 'abcd-124', + iana_time_zone: 'America/New_York', + id: 900113780483, + last_login_at: null, + locale: 'en-US', + locale_id: 1, + moderator: false, + name: 'abcd124', + notes: null, + only_private_comments: false, + organization_id: null, + phone: null, + photo: null, + report_csv: false, + restricted_agent: true, + role: 'end-user', + role_type: null, + shared: false, + shared_agent: false, + shared_phone_number: null, + signature: null, + suspended: false, + tags: [], + ticket_restriction: 'requested', + time_zone: 'Eastern Time (US & Canada)', + two_factor_auth_enabled: false, + updated_at: '2020-03-17T12:16:59Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483.json', + user_fields: { birthday: null }, + verified: true, + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/search.json?query=example124@email.com', + }, + httpRes: { + data: { + count: 1, + next_page: null, + previous_page: null, + users: [ + { + active: true, + alias: null, + chat_only: false, + created_at: '2020-03-17T10:21:15Z', + custom_role_id: null, + default_group_id: null, + details: null, + email: 'example124@email.com', + external_id: 'abcd-124', + iana_time_zone: 'America/New_York', + id: 900113780483, + last_login_at: null, + locale: 'en-US', + locale_id: 1, + moderator: false, + name: 'abcd124', + notes: null, + only_private_comments: false, + organization_id: null, + phone: null, + photo: null, + report_csv: false, + restricted_agent: true, + role: 'end-user', + role_type: null, + shared: false, + shared_agent: false, + shared_phone_number: null, + signature: null, + suspended: false, + tags: [], + ticket_restriction: 'requested', + time_zone: 'Eastern Time (US & Canada)', + two_factor_auth_enabled: false, + updated_at: '2020-03-17T12:16:59Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483.json', + user_fields: { birthday: null }, + verified: true, + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483/organization_memberships.json', + }, + httpRes: { + data: { + count: 1, + next_page: null, + organization_memberships: [ + { + created_at: '2020-03-23T15:56:56Z', + default: true, + id: 900004877903, + organization_id: 900001329943, + updated_at: '2020-03-23T15:56:56Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organization_memberships/900004877903.json', + user_id: 900113780483, + }, + ], + previous_page: null, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/search.json?query=example124@email.com', + }, + httpRes: { + data: { + count: 1, + next_page: null, + previous_page: null, + users: [ + { + active: true, + alias: null, + chat_only: false, + created_at: '2020-03-17T10:21:15Z', + custom_role_id: null, + default_group_id: null, + details: null, + email: 'example124@email.com', + external_id: 'abcd-124', + iana_time_zone: 'America/New_York', + id: 900113780483, + last_login_at: null, + locale: 'en-US', + locale_id: 1, + moderator: false, + name: 'abcd124', + notes: null, + only_private_comments: false, + organization_id: null, + phone: null, + photo: null, + report_csv: false, + restricted_agent: true, + role: 'end-user', + role_type: null, + shared: false, + shared_agent: false, + shared_phone_number: null, + signature: null, + suspended: false, + tags: [], + ticket_restriction: 'requested', + time_zone: 'Eastern Time (US & Canada)', + two_factor_auth_enabled: false, + updated_at: '2020-03-17T12:16:59Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483.json', + user_fields: { birthday: null }, + verified: true, + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483/organization_memberships.json', + }, + httpRes: { + data: { + count: 1, + next_page: null, + organization_memberships: [ + { + created_at: '2020-03-23T15:56:56Z', + default: true, + id: 900004877903, + organization_id: 900001329943, + updated_at: '2020-03-23T15:56:56Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/organization_memberships/900004877903.json', + user_id: 900113780483, + }, + ], + previous_page: null, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjQ=', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + data: { + user_field: { active: true, description: 'country', key: 'country', title: 'country' }, + }, + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjQ=', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjQ=', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + data: { + user_field: { active: true, description: 'country', key: 'country', title: 'country' }, + }, + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjQ=', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjQ=', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + data: { + user_field: { active: true, description: 'country', key: 'country', title: 'country' }, + }, + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjQ=', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjQ=', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/search.json?query=johnwick@example.com', + }, + httpRes: { error: 'Request failed', status: 200 }, + }, + { + httpReq: { + data: { + user: { + email: 'johnwick@example.com', + external_id: '0000000000', + name: 'John Wick', + verified: true, + }, + }, + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjM=', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/create_or_update.json', + }, + httpRes: { + data: { + user: { + active: true, + alias: null, + chat_only: false, + created_at: '2020-03-17T10:21:15Z', + custom_role_id: null, + default_group_id: null, + details: null, + email: 'example124@email.com', + external_id: 'abcd-124', + iana_time_zone: 'America/New_York', + id: 900113780483, + last_login_at: null, + locale: 'en-US', + locale_id: 1, + moderator: false, + name: 'abcd124', + notes: null, + only_private_comments: false, + organization_id: 900001329943, + phone: null, + photo: null, + report_csv: false, + restricted_agent: true, + role: 'end-user', + role_type: null, + shared: false, + shared_agent: false, + shared_phone_number: null, + signature: null, + suspended: false, + tags: [], + ticket_restriction: 'requested', + time_zone: 'Eastern Time (US & Canada)', + two_factor_auth_enabled: false, + updated_at: '2020-03-23T15:56:56Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483.json', + user_fields: { birthday: null }, + verified: true, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjM=', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/search.json?query=johnwick@example.com', + }, + httpRes: { error: 'Request failed', status: 200 }, + }, + { + httpReq: { + data: { + user: { + email: 'johnwick@example.com', + external_id: '0000000000', + name: 'John Wick', + verified: true, + }, + }, + headers: { + Authorization: 'Basic dGVzdEBydWRkZXIuY29tL3Rva2VuOm15RHVtbXlBcGlUb2tlbjM=', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/create_or_update.json', + }, + httpRes: { + data: { + user: { + active: true, + alias: null, + chat_only: false, + created_at: '2020-03-17T10:21:15Z', + custom_role_id: null, + default_group_id: null, + details: null, + email: 'example124@email.com', + external_id: 'abcd-124', + iana_time_zone: 'America/New_York', + id: 900113780483, + last_login_at: null, + locale: 'en-US', + locale_id: 1, + moderator: false, + name: 'abcd124', + notes: null, + only_private_comments: false, + organization_id: 900001329943, + phone: null, + photo: null, + report_csv: false, + restricted_agent: true, + role: 'end-user', + role_type: null, + shared: false, + shared_agent: false, + shared_phone_number: null, + signature: null, + suspended: false, + tags: [], + ticket_restriction: 'requested', + time_zone: 'Eastern Time (US & Canada)', + two_factor_auth_enabled: false, + updated_at: '2020-03-23T15:56:56Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483.json', + user_fields: { birthday: null }, + verified: true, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMi90b2tlbjpteUR1bW15QXBpVG9rZW4y', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://blendohelp.zendesk.com/api/v2/organization_fields.json', + }, + httpRes: { error: 'Request failed', status: 200 }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields.json', + }, + httpRes: { + data: { + count: 3, + next_page: null, + previous_page: null, + user_fields: [ + { + active: true, + created_at: '2020-03-18T08:19:58Z', + description: 'birthday', + id: 900000013606, + key: 'birthday', + position: 0, + raw_description: 'birthday', + raw_title: 'birthday', + regexp_for_validation: null, + system: false, + title: 'birthday', + type: 'text', + updated_at: '2020-03-18T08:19:58Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000013606.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'age', + id: 900000014483, + key: 'age', + position: 1, + raw_description: 'age', + raw_title: 'age', + regexp_for_validation: null, + system: false, + title: 'age', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000014483.json', + }, + { + active: true, + created_at: '2020-03-23T17:38:44Z', + description: 'firstname', + id: 900000015106, + key: 'firstname', + position: 2, + raw_description: 'firstname', + raw_title: 'firstname', + regexp_for_validation: null, + system: false, + title: 'firstname', + type: 'text', + updated_at: '2020-03-23T17:38:44Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/user_fields/900000015106.json', + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/search.json?query=abcd-144', + }, + httpRes: { + data: { + count: 1, + facets: null, + next_page: null, + previous_page: null, + users: [ + { + active: true, + alias: null, + created_at: '2022-11-24T09:03:54Z', + custom_role_id: null, + default_group_id: null, + details: null, + email: 'test1000@email.com', + external_id: 'abcd-144', + iana_time_zone: 'Asia/Kolkata', + id: 900113780483, + last_login_at: null, + locale: 'en-US', + locale_id: 1, + moderator: false, + name: 'name-1000 user', + notes: null, + only_private_comments: false, + organization_id: null, + phone: null, + photo: null, + report_csv: false, + restricted_agent: true, + result_type: 'user', + role: 'end-user', + role_type: null, + shared: false, + shared_agent: false, + shared_phone_number: null, + signature: null, + suspended: false, + tags: [], + ticket_restriction: 'requested', + time_zone: 'Asia/Kolkata', + two_factor_auth_enabled: false, + updated_at: '2022-11-24T09:03:54Z', + url: 'https://rudderstack6787.zendesk.com/api/v2/users/10865192864273.json', + user_fields: {}, + verified: true, + }, + ], + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic bXlEdW1teVVzZXJOYW1lMS90b2tlbjpteUR1bW15QXBpVG9rZW40', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/900113780483/identities', + }, + httpRes: { + data: { + count: 2, + identities: [ + { + created_at: '2022-11-02T08:03:28Z', + deliverable_state: 'deliverable', + id: 7535981118877, + primary: true, + type: 'email', + undeliverable_count: 0, + updated_at: '2022-11-02T10:23:28Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/7533979645597/identities/7535981118877.json', + user_id: 900113780483, + value: 'example119@email.com', + verified: false, + }, + { + created_at: '2022-11-02T04:23:46Z', + deliverable_state: 'deliverable', + id: 7534173321117, + primary: false, + type: 'email', + undeliverable_count: 0, + updated_at: '2022-11-02T10:23:28Z', + url: 'https://rudderlabshelp.zendesk.com/api/v2/users/7533979645597/identities/7534173321117.json', + user_id: 900113780483, + value: 'example115@email.com', + verified: true, + }, + ], + next_page: null, + previous_page: null, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic cnVkZGVybGFidGVzdDFAZW1haWwuY29tL3Rva2VuOmR1bW15QXBpVG9rZW4=', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabtest1.zendesk.com/api/v2/users/search.json?query=testemail1@email', + }, + httpRes: { data: { count: 0, next_page: null, previous_page: null, users: [] }, status: 200 }, + }, + { + httpReq: { + data: { + user: { + email: 'testemail1@email', + external_id: '0000000000', + name: 'John Wick', + verified: true, + }, + }, + headers: { + Authorization: 'Basic cnVkZGVybGFidGVzdDFAZW1haWwuY29tL3Rva2VuOmR1bW15QXBpVG9rZW4=', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabtest1.zendesk.com/api/v2/users/create_or_update.json', + }, + httpRes: { + data: { + user: { + active: true, + alias: null, + chat_only: false, + created_at: '2020-03-17T10:21:15Z', + custom_role_id: null, + default_group_id: null, + details: null, + email: 'testemail1@email', + external_id: 'exId-123', + iana_time_zone: 'America/New_York', + id: 900113780483, + last_login_at: null, + locale: 'en-US', + locale_id: 1, + moderator: false, + name: 'John Wick', + notes: null, + only_private_comments: false, + organization_id: 900001329943, + phone: null, + photo: null, + report_csv: false, + restricted_agent: true, + role: 'end-user', + role_type: null, + shared: false, + shared_agent: false, + shared_phone_number: null, + signature: null, + suspended: false, + tags: [], + ticket_restriction: 'requested', + time_zone: 'Eastern Time (US & Canada)', + two_factor_auth_enabled: false, + updated_at: '2020-03-23T15:56:56Z', + url: 'https://rudderlabtest1.zendesk.com/api/v2/users/900113780483.json', + user_fields: { birthday: null }, + verified: true, + }, + }, + status: 200, + }, + }, + { + httpReq: { + headers: { + Authorization: 'Basic cnVkZGVybGFidGVzdDJAZW1haWwuY29tL3Rva2VuOmR1bW15QXBpVG9rZW4=', + 'Content-Type': 'application/json', + }, + method: 'GET', + url: 'https://rudderlabtest2.zendesk.com/api/v2/users/search.json?query=testemail2@email', + }, + httpRes: { data: { count: 0, next_page: null, previous_page: null, users: [] }, status: 200 }, + }, + { + httpReq: { + data: { + user: { + email: 'testemail2@email', + external_id: '0000000000', + name: 'John Wick', + verified: true, + }, + }, + headers: { + Authorization: 'Basic cnVkZGVybGFidGVzdDJAZW1haWwuY29tL3Rva2VuOmR1bW15QXBpVG9rZW4=', + 'Content-Type': 'application/json', + }, + method: 'POST', + url: 'https://rudderlabtest2.zendesk.com/api/v2/users/create_or_update.json', + }, + httpRes: { data: { user: {} }, status: 200 }, + }, +]; diff --git a/test/integrations/testTypes.ts b/test/integrations/testTypes.ts index 57d9c812e9..51667e8044 100644 --- a/test/integrations/testTypes.ts +++ b/test/integrations/testTypes.ts @@ -1,3 +1,6 @@ +import { AxiosResponse } from 'axios'; +import MockAdapter from 'axios-mock-adapter'; + export interface requestType { method: string; body?: any; @@ -34,4 +37,10 @@ export interface TestCaseData { input: inputType; output: outputType; mock?: mockType[]; + mockFns?: (mockAdapter: MockAdapter) => {}; } + +export type MockHttpCallsData = { + httpReq: Record; + httpRes: Partial; +}; diff --git a/test/integrations/testUtils.ts b/test/integrations/testUtils.ts index 815b211d20..8511ac41f4 100644 --- a/test/integrations/testUtils.ts +++ b/test/integrations/testUtils.ts @@ -1,6 +1,8 @@ import { globSync } from 'glob'; import { join } from 'path'; -import { TestCaseData } from './testTypes'; +import { MockHttpCallsData, TestCaseData } from './testTypes'; +import MockAdapter from 'axios-mock-adapter'; +import isMatch from 'lodash/isMatch'; export const getTestDataFilePaths = (dirPath: string, destination: string = ''): string[] => { const globPattern = join(dirPath, '**', 'data.ts'); @@ -14,3 +16,52 @@ export const getTestDataFilePaths = (dirPath: string, destination: string = ''): export const getTestData = (filePath): TestCaseData[] => { return require(filePath).data as TestCaseData[]; }; + +export const getMockHttpCallsData = (filePath): MockHttpCallsData[] => { + return require(filePath).networkCallsData as MockHttpCallsData[]; +}; + +export const getAllTestMockDataFilePaths = (dirPath: string, destination: string): string[] => { + const globPattern = join(dirPath, '**', 'network.ts'); + let testFilePaths = globSync(globPattern); + if (destination) { + testFilePaths = testFilePaths.filter((testFile) => testFile.includes(destination)); + } + return testFilePaths; +}; + +export const addMock = (mock: MockAdapter, axiosMock: MockHttpCallsData) => { + const { url, method, data: reqData, ...opts } = axiosMock.httpReq; + const { data, headers, status } = axiosMock.httpRes; + + const headersAsymMatch = { + asymmetricMatch: function (actual) { + return isMatch(actual, opts.headers); + }, + }; + + switch (method.toLowerCase()) { + case 'get': + // @ts-ignore + mock.onGet(url, reqData, headersAsymMatch).reply(status, data, headers); + break; + case 'delete': + // @ts-ignore + mock.onDelete(url, reqData, headersAsymMatch).reply(status, data, headers); + break; + case 'post': + // @ts-ignore + mock.onPost(url, reqData, headersAsymMatch).reply(status, data, headers); + break; + case 'patch': + // @ts-ignore + mock.onPatch(url, reqData, headersAsymMatch).reply(status, data, headers); + break; + case 'put': + // @ts-ignore + mock.onPut(url, reqData, headersAsymMatch).reply(status, data, headers); + break; + default: + break; + } +}; diff --git a/test/testHelper.js b/test/testHelper.js index 649f8cab13..5fe97fed67 100644 --- a/test/testHelper.js +++ b/test/testHelper.js @@ -7,6 +7,19 @@ const getFuncTestData = (dirPath, filePath) => { return testData; }; +const responses = []; + +const setResponsesForMockAxiosAdapter = ({url, method, data, options}, {response}) => { + if (process.env.GEN_AXIOS_FOR_TESTS === 'true') { + const reqObj = {url, ...options, method} + if (data) { + reqObj.data = data + } + responses.push(`{httpReq: ${JSON.stringify(reqObj)},httpRes: ${JSON.stringify(response)}},`) + } +} module.exports = { getFuncTestData, + responses, + setResponsesForMockAxiosAdapter };