1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
unleash.unleash/src/lib/event-hook.test.js
Christopher Kolstad ff7be7696c
fix: Stores as typescript and with interfaces. (#902)
Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com>
2021-08-12 15:04:37 +02:00

33 lines
733 B
JavaScript

'use strict';
const { EventEmitter } = require('events');
const eventStore = new EventEmitter();
const { addEventHook } = require('./event-hook');
const {
FEATURE_CREATED,
FEATURE_UPDATED,
FEATURE_ARCHIVED,
FEATURE_REVIVED,
} = require('./types/events');
const o = {};
function testHook(feature, data) {
o[feature] = data;
}
beforeAll(() => {
addEventHook(testHook, eventStore);
});
[FEATURE_CREATED, FEATURE_UPDATED, FEATURE_ARCHIVED, FEATURE_REVIVED].forEach(
(feature) => {
test(`should invoke hook on ${feature}`, () => {
const data = { dataKey: feature };
eventStore.emit(feature, data);
expect(o[feature] === data).toBe(true);
});
},
);