@honeypot-run/core
Version:
Patented threat analytics and fingerprinting library. Requires a honeypot.run account
88 lines (87 loc) • 4.03 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const AmplitudePlugin_1 = require("../plugins/AmplitudePlugin");
describe('createAmplitudePlugin tests', () => {
let track;
let get;
let identify;
let plugin;
beforeEach(() => {
track = jest.fn();
get = jest.fn().mockResolvedValue({ geofenced: false });
identify = jest.fn();
});
test('should exclude event if it is in disableEvents', () => __awaiter(void 0, void 0, void 0, function* () {
const pluginConfig = {
excludeEvents: ['excluded_event'],
};
plugin = (0, AmplitudePlugin_1.createAmplitudePlugin)(track, get, identify, pluginConfig);
const event = {
event_type: 'excluded_event',
event_properties: {},
user_id: '1234',
device_id: '5678',
};
const result = yield plugin.execute(event);
expect(track).not.toHaveBeenCalled();
expect(get).not.toHaveBeenCalled();
expect(result === null || result === void 0 ? void 0 : result.event_properties).not.toHaveProperty('honey');
}));
test('should include event if it is in includeEvents', () => __awaiter(void 0, void 0, void 0, function* () {
const pluginConfig = {
includeEvents: ['included_event'],
};
plugin = (0, AmplitudePlugin_1.createAmplitudePlugin)(track, get, identify, pluginConfig);
const event = {
event_type: 'excluded_event',
event_properties: {},
user_id: '1234',
device_id: '5678',
};
const result = yield plugin.execute(event);
expect(track).not.toHaveBeenCalled();
expect(get).not.toHaveBeenCalled();
expect(result === null || result === void 0 ? void 0 : result.event_properties).not.toHaveProperty('honey');
}));
test('should enrich event if enrichEvents is enabled', () => __awaiter(void 0, void 0, void 0, function* () {
const pluginConfig = {
enrichEventProperties: true,
};
plugin = (0, AmplitudePlugin_1.createAmplitudePlugin)(track, get, identify, pluginConfig);
const event = {
event_type: 'excluded_event',
event_properties: {},
user_id: '1234',
device_id: '5678',
};
const result = yield plugin.execute(event);
expect(track).toHaveBeenCalled();
expect(get).toHaveBeenCalled();
expect(result === null || result === void 0 ? void 0 : result.event_properties).toHaveProperty('honey');
}));
test('should not enrich event if enrichEvents is disabled', () => __awaiter(void 0, void 0, void 0, function* () {
const pluginConfig = {
enrichEventProperties: false,
};
plugin = (0, AmplitudePlugin_1.createAmplitudePlugin)(track, get, identify, pluginConfig);
const event = {
event_type: 'excluded_event',
event_properties: {},
user_id: '1234',
device_id: '5678',
};
const result = yield plugin.execute(event);
expect(track).toHaveBeenCalled();
expect(get).toHaveBeenCalled();
expect(result === null || result === void 0 ? void 0 : result.event_properties).not.toHaveProperty('honey');
}));
});