eventstorming
Version:
A Graphics Library for Event Storming
66 lines • 5.52 kB
JavaScript
import { test } from "ava";
import { EventBusiness, EventEntity, EventStickyRender, EventSubscriber } from "eventstorming";
test('should enable add related child', t => {
// let eventSubscriber = new EventSubscriber();
// let eventStore = new EventBusinessStore(eventSubscriber);
//
// let eventBusiness = new EventBusiness(eventSubscriber);
//
// let eventEntity = eventBusiness.createEventSticky('事件贴纸已创建');
// eventBusiness.createEventSticky('事件贴纸位置已生成');
// eventBusiness.createEventSticky('事件贴纸已渲染');
//
// t.deepEqual(eventEntity[0].name, 'hello');
//
// t.deepEqual(eventStore.store[0]['name'], 'hello');
t.deepEqual(true, true);
});
test('should enable add related child', t => {
let eventSubscriber = new EventSubscriber();
let eventRender = new EventStickyRender(eventSubscriber);
let eventBusiness = new EventBusiness(eventSubscriber);
let eventEntity = eventBusiness.createEventSticky('事件贴纸已创建');
let subEntity = new EventEntity('sticker had store');
eventEntity.addRelatedChild(subEntity);
eventBusiness.updateEventSticky(eventEntity);
let result = eventRender.render();
t.deepEqual(result, `<svg width=\"1024\" height=\"1024\" viewBox=\"0 0 1024 1024\" xmlns=\"http://www.w3.org/2000/svg\"> <g>
<rect x=\"0\" y=\"0\" width=\"100\" height=\"100\" rx=\"2\" ry=\"2\" fill=\"#FFCC33\"/>
<text x=\"0\" y=\"30\" fill=\"#000\">
<tspan x=\"5\" dy=\"0\">事件贴纸已创建</tspan>
</text><g>
<rect x=\"50\" y=\"50\" width=\"100\" height=\"100\" rx=\"2\" ry=\"2\" fill=\"#0095DD\"/>
<text x=\"50\" y=\"80\" fill=\"#000\">
<tspan x=\"55\" dy=\"0\">sticker had store</tspan>
</text>
</g>
</g> </svg>`);
});
test('should enable add update sub child', t => {
let eventSubscriber = new EventSubscriber();
let eventRender = new EventStickyRender(eventSubscriber);
let eventBusiness = new EventBusiness(eventSubscriber);
let eventEntity = eventBusiness.createEventSticky('事件贴纸已创建');
eventBusiness.createEventSticky('事件贴纸已更新');
let subEntity = new EventEntity('sticker had store');
eventEntity.addRelatedChild(subEntity);
eventBusiness.updateEventSticky(eventEntity);
let result = eventRender.render();
t.deepEqual(result, `<svg width=\"1024\" height=\"1024\" viewBox=\"0 0 1024 1024\" xmlns=\"http://www.w3.org/2000/svg\"> <g>
<rect x=\"0\" y=\"0\" width=\"100\" height=\"100\" rx=\"2\" ry=\"2\" fill=\"#FFCC33\"/>
<text x=\"0\" y=\"30\" fill=\"#000\">
<tspan x=\"5\" dy=\"0\">事件贴纸已创建</tspan>
</text><g>
<rect x=\"50\" y=\"50\" width=\"100\" height=\"100\" rx=\"2\" ry=\"2\" fill=\"#0095DD\"/>
<text x=\"50\" y=\"80\" fill=\"#000\">
<tspan x=\"55\" dy=\"0\">sticker had store</tspan>
</text>
</g>
</g><g>
<rect x=\"150\" y=\"0\" width=\"100\" height=\"100\" rx=\"2\" ry=\"2\" fill=\"#FFCC33\"/>
<text x=\"150\" y=\"30\" fill=\"#000\">
<tspan x=\"155\" dy=\"0\">事件贴纸已更新</tspan>
</text>
</g> </svg>`);
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRCdXNpbmVzcy5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2J1c2luZXNzL0V2ZW50QnVzaW5lc3Muc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sS0FBSyxDQUFDO0FBQ3pCLE9BQU8sRUFBQyxhQUFhLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFzQixlQUFlLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRWpJLElBQUksQ0FBQyxpQ0FBaUMsRUFBRSxDQUFDO0lBQ3ZDLCtDQUErQztJQUMvQyw0REFBNEQ7SUFDNUQsRUFBRTtJQUNGLDBEQUEwRDtJQUMxRCxFQUFFO0lBQ0YsZ0VBQWdFO0lBQ2hFLGdEQUFnRDtJQUNoRCw4Q0FBOEM7SUFDOUMsRUFBRTtJQUNGLDZDQUE2QztJQUM3QyxFQUFFO0lBQ0YscURBQXFEO0lBQ3JELENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFBO0FBQ3pCLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLGlDQUFpQyxFQUFFLENBQUM7SUFDdkMsSUFBSSxlQUFlLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztJQUM1QyxJQUFJLFdBQVcsR0FBRyxJQUFJLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBRXpELElBQUksYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBRXZELElBQUksV0FBVyxHQUFHLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM3RCxJQUFJLFNBQVMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3JELFdBQVcsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFdkMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzdDLElBQUksTUFBTSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUVsQyxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRTs7Ozs7Ozs7Ozt3QkFVRSxDQUFDLENBQUE7QUFDekIsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsb0NBQW9DLEVBQUUsQ0FBQztJQUMxQyxJQUFJLGVBQWUsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO0lBQzVDLElBQUksV0FBVyxHQUFHLElBQUksaUJBQWlCLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFekQsSUFBSSxhQUFhLEdBQUcsSUFBSSxhQUFhLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFdkQsSUFBSSxXQUFXLEdBQUcsYUFBYSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzdELGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMzQyxJQUFJLFNBQVMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3JELFdBQVcsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFdkMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzdDLElBQUksTUFBTSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUVsQyxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRTs7Ozs7Ozs7Ozs7Ozs7O3dCQWVFLENBQUMsQ0FBQTtBQUN6QixDQUFDLENBQUMsQ0FBQyJ9