Skip to content

Commit 18a665c

Browse files
committed
FOOP
1 parent ec488a3 commit 18a665c

File tree

5 files changed

+441
-447
lines changed

5 files changed

+441
-447
lines changed

test/TestHelper.js

+18-81
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@ import {
1212
insertCSS
1313
} from 'bpmn-js/test/helper';
1414

15-
import semver from 'semver';
16-
1715
import fileDrop from 'file-drops';
1816

1917
import download from 'downloadjs';
@@ -25,6 +23,16 @@ import zeebeModdle from 'zeebe-bpmn-moddle/resources/zeebe';
2523

2624
import propertiesPanelCSS from '@bpmn-io/properties-panel/dist/assets/properties-panel.css';
2725

26+
import elementTemplatesCSS from '../assets/element-templates.css';
27+
import elementTemplateChooserCSS from '@bpmn-io/element-template-chooser/dist/element-template-chooser.css';
28+
import lintingCSS from '@camunda/linting/assets/linting.css';
29+
30+
import testCSS from './test.css';
31+
32+
import diagramCSS from 'bpmn-js/dist/assets/diagram-js.css';
33+
import bpmnJsCSS from 'bpmn-js/dist/assets/bpmn-js.css';
34+
import bpmnFontCSS from 'bpmn-js/dist/assets/bpmn-font/css/bpmn-embedded.css';
35+
2836

2937
export * from 'bpmn-js/test/helper';
3038

@@ -77,96 +85,25 @@ export function clickInput(input) {
7785
}
7886

7987
export function insertCoreStyles() {
80-
insertCSS(
81-
'properties-panel.css',
82-
require('@bpmn-io/properties-panel/dist/assets/properties-panel.css').default
83-
);
84-
85-
insertCSS(
86-
'element-templates.css',
87-
require('../assets/element-templates.css').default
88-
);
89-
90-
insertCSS(
91-
'test.css',
92-
require('./test.css').default
93-
);
94-
95-
insertCSS(
96-
'element-template-chooser.css',
97-
require('@bpmn-io/element-template-chooser/dist/element-template-chooser.css').default
98-
);
99-
100-
insertCSS('linting.css',
101-
require('@camunda/linting/assets/linting.css').default
102-
);
88+
insertCSS('properties-panel.css', propertiesPanelCSS);
89+
insertCSS('element-templates.css', elementTemplatesCSS);
90+
insertCSS('element-template-chooser.css', elementTemplateChooserCSS);
91+
insertCSS('linting.css', lintingCSS);
10392

93+
insertCSS('test.css', testCSS);
10494
}
10595

10696
export function insertBpmnStyles() {
107-
insertCSS(
108-
'diagram.css',
109-
require('bpmn-js/dist/assets/diagram-js.css').default
110-
);
111-
112-
// @barmac: this fails before bpmn-js@9
113-
if (bpmnJsSatisfies('>=9')) {
114-
insertCSS(
115-
'bpmn-js.css',
116-
require('bpmn-js/dist/assets/bpmn-js.css').default
117-
);
118-
}
97+
insertCSS('diagram.css', diagramCSS);
11998

120-
insertCSS(
121-
'bpmn-font.css',
122-
require('bpmn-js/dist/assets/bpmn-font/css/bpmn-embedded.css').default
123-
);
99+
insertCSS('bpmn-js.css', bpmnJsCSS);
100+
insertCSS('bpmn-font.css', bpmnFontCSS);
124101
}
125102

126103
export function bootstrapModeler(diagram, options, locals) {
127104
return bootstrapBpmnJS(Modeler, diagram, options, locals);
128105
}
129106

130-
/**
131-
* Execute test only if currently installed bpmn-js is of given version.
132-
*
133-
* @param {string} versionRange
134-
* @param {boolean} only
135-
*/
136-
export function withBpmnJs(versionRange, only = false) {
137-
if (bpmnJsSatisfies(versionRange)) {
138-
return only ? it.only : it;
139-
} else {
140-
return it.skip;
141-
}
142-
}
143-
144-
function bpmnJsSatisfies(versionRange) {
145-
const bpmnJsVersion = require('bpmn-js/package.json').version;
146-
147-
return semver.satisfies(bpmnJsVersion, versionRange, { includePrerelease: true });
148-
}
149-
150-
/**
151-
* Execute test only if currently installed @bpmn-io/properties-panel is of given version.
152-
*
153-
* @param {string} versionRange
154-
* @param {boolean} only
155-
*/
156-
export function withPropertiesPanel(versionRange, only = false) {
157-
if (propertiesPanelSatisfies(versionRange)) {
158-
return only ? it.only : it;
159-
} else {
160-
return it.skip;
161-
}
162-
}
163-
164-
function propertiesPanelSatisfies(versionRange) {
165-
const version = require('@bpmn-io/properties-panel/package.json').version;
166-
167-
return semver.satisfies(version, versionRange, { includePrerelease: true });
168-
}
169-
170107
export async function setEditorValue(editor, value) {
171108
await act(() => {
172109
editor.textContent = value;

test/spec/Example.spec.js

+14-4
Original file line numberDiff line numberDiff line change
@@ -170,12 +170,19 @@ describe('<BpmnPropertiesPanelRenderer>', function() {
170170
(singleStart === 'cloud-templates' ? it.only : it)('should import simple process (cloud-templates)', async function() {
171171

172172
// given
173-
const diagramXml = require('test/spec/cloud-element-templates/fixtures/complex.bpmn').default;
173+
const diagramXml = (await import('test/spec/cloud-element-templates/fixtures/complex.bpmn')).default;
174174

175-
const elementTemplateContext = require.context('test/spec/cloud-element-templates/fixtures', false, /\.json$/);
175+
const elementTemplateContext = import.meta.webpackContext('test/spec/cloud-element-templates/fixtures', {
176+
recursive: false,
177+
regExp: /\.json$/
178+
});
179+
180+
console.log(elementTemplateContext.keys());
176181

177182
const elementTemplates = elementTemplateContext.keys().map(key => elementTemplateContext(key)).flat();
178183

184+
console.log(elementTemplates);
185+
179186
// when
180187
const result = await createModeler(
181188
diagramXml,
@@ -273,9 +280,12 @@ describe('<BpmnPropertiesPanelRenderer>', function() {
273280
(singleStart === 'templates' ? it.only : it)('should import simple process (templates)', async function() {
274281

275282
// given
276-
const diagramXml = require('test/spec/element-templates/fixtures/complex.bpmn').default;
283+
const diagramXml = (await import('test/spec/element-templates/fixtures/complex.bpmn')).default;
277284

278-
const elementTemplateContext = require.context('test/spec/element-templates/fixtures', false, /\.json$/);
285+
const elementTemplateContext = import.meta.webpackContext('test/spec/element-templates/fixtures', {
286+
recursive: false,
287+
regExp: /\.json$/
288+
});
279289

280290
const elementTemplates = elementTemplateContext.keys().map(key => elementTemplateContext(key)).flat();
281291

0 commit comments

Comments
 (0)