eventstorming
Version:
A Graphics Library for Event Storming
31 lines • 3 kB
JavaScript
import { test } from "ava";
import { EventPublisher } from "eventstorming";
import { EventSubscriber } from "eventstorming";
import { BaseEvent } from "eventstorming";
test('should enable receive event', t => {
let eventPublisher = new EventPublisher();
let eventClient = new EventSubscriber();
let eventClient2 = new EventSubscriber();
let count = 1;
function simpleAction() {
count++;
}
let baseEvent1 = new BaseEvent('hello', simpleAction);
eventClient.registerEvent(baseEvent1);
eventPublisher.RegisterObserver(eventClient);
eventPublisher.RegisterObserver(eventClient2);
eventPublisher.NotifyObservers('hello', { test: 'test' });
t.deepEqual(eventClient.events.length, 1);
t.deepEqual(eventClient2.events.length, 0);
let count2 = 1;
function simpleAction2() {
count2++;
}
let baseEvent2 = new BaseEvent('hello 2', simpleAction2);
eventClient2.registerEvent(baseEvent2);
eventPublisher.NotifyObservers('hello 2', { test: 'test' });
t.deepEqual(eventClient2.events.length, 1);
t.deepEqual(count, 2);
t.deepEqual(count2, 2);
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRQdWJsaXNoZXIuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vYnNlcnZlci9FdmVudFB1Ymxpc2hlci5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxLQUFLLENBQUM7QUFDekIsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFeEMsSUFBSSxDQUFDLDZCQUE2QixFQUFFLENBQUM7SUFDbkMsSUFBSSxjQUFjLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztJQUMxQyxJQUFJLFdBQVcsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO0lBQ3hDLElBQUksWUFBWSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7SUFFekMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBRWQ7UUFDRSxLQUFLLEVBQUUsQ0FBQTtJQUNULENBQUM7SUFDRCxJQUFJLFVBQVUsR0FBRyxJQUFJLFNBQVMsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFFdEQsV0FBVyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUV0QyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDN0MsY0FBYyxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRTlDLGNBQWMsQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBQyxDQUFDLENBQUM7SUFFekQsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMxQyxDQUFDLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRTNDLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNmO1FBQ0UsTUFBTSxFQUFFLENBQUE7SUFDVixDQUFDO0lBQ0QsSUFBSSxVQUFVLEdBQUcsSUFBSSxTQUFTLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBRXpELFlBQVksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQztJQUUzRCxDQUFDLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNDLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3RCLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ3pCLENBQUMsQ0FBQyxDQUFDIn0=