1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
unleash.unleash/lib/event-hook.test.js
Ran Magen d917e8018f feat: add option and functionality that allows a user to hook into feature mutations (#457)
* Add option and functionality that allows a user to hook into feature mutations.

* Fix function argument to include the entire event.
2020-02-20 08:34:26 +01:00

33 lines
746 B
JavaScript

'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);
});
}
);