eventstorming
Version:
A Graphics Library for Event Storming
72 lines • 6.02 kB
JavaScript
import { test } from "ava";
import { EventEntity, SVGGenerator, Renderer } from "eventstorming";
test('should return correctly node svg', t => {
let svgGenerator = new SVGGenerator();
let renderer = new Renderer(svgGenerator);
let eventEntities = [];
let eventEntity = new EventEntity('sticker had created');
eventEntities.push(eventEntity);
renderer.createEntity(eventEntity, eventEntities);
let result = renderer.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\">sticker had created</tspan>
</text>
</g> </svg>`);
});
test('should return correctly svg with two node', t => {
let svgGenerator = new SVGGenerator();
let renderer = new Renderer(svgGenerator);
let eventEntities = [];
let eventEntity = new EventEntity('sticker had created');
eventEntities.push(eventEntity);
renderer.createEntity(eventEntity, eventEntities);
renderer.createEntity(eventEntity, eventEntities);
let result = renderer.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\">sticker had created</tspan>
</text>
</g><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\">sticker had created</tspan>
</text>
</g> </svg>`);
});
test('should return correctly svg with child node', t => {
let svgGenerator = new SVGGenerator();
let renderer = new Renderer(svgGenerator);
let eventEntities = [];
let eventEntity = new EventEntity('sticker had created');
let subEntity = new EventEntity('sticker had render');
eventEntity.addRelatedChild(subEntity);
eventEntities.push(eventEntity);
renderer.createEntity(eventEntity, eventEntities);
renderer.createEntity(eventEntity, eventEntities);
let result = renderer.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\">sticker had created</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 render</tspan>
</text>
</g>
</g><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\">sticker had created</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 render</tspan>
</text>
</g>
</g> </svg>`);
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVuZGVyZXIuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZW5kZXIvUmVuZGVyZXIuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sS0FBSyxDQUFDO0FBQ3pCLE9BQU8sRUFBQyxXQUFXLEVBQUUsWUFBWSxFQUFtQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFbkcsSUFBSSxDQUFDLGtDQUFrQyxFQUFFLENBQUM7SUFDeEMsSUFBSSxZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUN0QyxJQUFJLFFBQVEsR0FBRyxJQUFJLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUUxQyxJQUFJLGFBQWEsR0FBa0IsRUFBRSxDQUFDO0lBQ3RDLElBQUksV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFekQsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNoQyxRQUFRLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUVsRCxJQUFJLE1BQU0sR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDL0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUU7Ozs7O3dCQUtFLENBQUMsQ0FBQztBQUMxQixDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQywyQ0FBMkMsRUFBRSxDQUFDO0lBQ2pELElBQUksWUFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDdEMsSUFBSSxRQUFRLEdBQUcsSUFBSSxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFMUMsSUFBSSxhQUFhLEdBQWtCLEVBQUUsQ0FBQztJQUN0QyxJQUFJLFdBQVcsR0FBRyxJQUFJLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRXpELGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDaEMsUUFBUSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDbEQsUUFBUSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFFbEQsSUFBSSxNQUFNLEdBQUcsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQy9CLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFOzs7Ozs7Ozs7O3dCQVVFLENBQUMsQ0FBQztBQUUxQixDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyw4Q0FBOEMsRUFBRSxDQUFDO0lBQ3BELElBQUksWUFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDdEMsSUFBSSxRQUFRLEdBQUcsSUFBSSxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFMUMsSUFBSSxhQUFhLEdBQWtCLEVBQUUsQ0FBQztJQUN0QyxJQUFJLFdBQVcsR0FBRyxJQUFJLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3pELElBQUksU0FBUyxHQUFHLElBQUksV0FBVyxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDdEQsV0FBVyxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUV2QyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2hDLFFBQVEsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ2xELFFBQVEsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBRWxELElBQUksTUFBTSxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUMvQixDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7d0JBb0JFLENBQUMsQ0FBQztBQUUxQixDQUFDLENBQUMsQ0FBQyJ9