-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathSketchyRendererSpec.js
100 lines (72 loc) · 2 KB
/
SketchyRendererSpec.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
import TestContainer from 'mocha-test-container-support';
import {
insertCSS
} from 'bpmn-js/test/helper';
insertCSS('diagram-js.css', require('diagram-js/assets/diagram-js.css'));
insertCSS('bpmn-embedded.css', require('bpmn-js/dist/assets/bpmn-font/css/bpmn-embedded.css'));
insertCSS('test-container.css', `
.test-container {
display: flex;
flex-direction: column;
}
.test-content-container {
flex: 1;
}
`);
import Modeler from 'bpmn-js/lib/Modeler';
import sketchyRendererModule from '../lib';
import processXML from './pizza-collaboration.bpmn';
function appendStylesheet(url) {
return new Promise((resolve, reject) => {
var stylesheet = document.createElement('link');
stylesheet.href = url;
stylesheet.rel = 'stylesheet';
stylesheet.type = 'text/css';
stylesheet.onload = resolve;
stylesheet.onerror = reject;
document.getElementsByTagName('head')[0].appendChild(stylesheet);
});
}
function wait(ms = 0) {
return new Promise((resolve) => {
setTimeout(resolve, ms);
});
}
describe('SketchyRenderer', function() {
this.timeout(10000);
before(async function() {
await appendStylesheet('/base/test/style.css');
await wait(2000);
});
var container;
beforeEach(function() {
container = TestContainer.get(this);
});
it('should import process', async function() {
var modeler = new Modeler({
container: container,
keyboard: {
bindTo: document
},
textRenderer: {
defaultStyle: {
fontFamily: '"Virgil"',
fontWeight: 'normal',
fontSize: 16,
lineHeight: 1.1
},
externalStyle: {
fontSize: 15,
lineHeight: 1.1
}
},
additionalModules: [
sketchyRendererModule
]
});
const {
warnings
} = await modeler.importXML(processXML);
expect(warnings).to.have.length(0);
});
});