1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-12-22 19:07:54 +01:00
unleash.unleash/lib/event-hook.test.js

34 lines
748 B
JavaScript
Raw Normal View History

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