it('should preselect next/previus results on arrow down/up', inject(function(canvas, eventBus, searchPad) { // given typeText(input_node, 'two'); var result_nodes = domQueryAll(SearchPad.RESULT_SELECTOR, canvas.getContainer()); // when press 'down' triggerKeyEvent(input_node, 'keyup', 40); // then expect(domClasses(result_nodes[0]).has(SearchPad.RESULT_SELECTED_CLASS)).to.be.false; expect(domClasses(result_nodes[1]).has(SearchPad.RESULT_SELECTED_CLASS)).to.be.true; // when press 'up' triggerKeyEvent(input_node, 'keyup', 38); // then expect(domClasses(result_nodes[0]).has(SearchPad.RESULT_SELECTED_CLASS)).to.be.true; expect(domClasses(result_nodes[1]).has(SearchPad.RESULT_SELECTED_CLASS)).to.be.false; expect(capturedEvents).to.eql([ EVENTS.opened, EVENTS.preselected, EVENTS.preselected, EVENTS.preselected ]); }));
it('should provide BPMN modeling palette', inject(function(canvas, palette) { // when var paletteElement = domQuery('.djs-palette', canvas._container); var entries = domQueryAll('.entry', paletteElement); // then expect(entries.length).to.equal(13); }));
it('should preselect first result', inject(function(canvas, eventBus, searchPad) { // when typeText(input_node, 'two'); // then var result_nodes = domQueryAll(SearchPad.RESULT_SELECTOR, canvas.getContainer()); expect(domClasses(result_nodes[0]).has(SearchPad.RESULT_SELECTED_CLASS)).to.be.true; expect(capturedEvents).to.eql([ EVENTS.opened, EVENTS.preselected ]); }));
it('should edit range end type', function() { // given const select = domQueryAll('.dms-input-select', simpleNumberEdit)[2]; // when triggerInputSelectChange(select, 'include', testContainer); // then expect(inputEntry2.businessObject.text).to.equal('[10..20]'); });
it('should edit operator', function() { // given const select = domQueryAll('.dms-input-select', simpleNumberEdit)[1]; // when triggerInputSelectChange(select, 'greater', testContainer); // then expect(inputEntry4.businessObject.text).to.equal('> 1000'); });
it('should show during resize', inject(function(canvas, resize, dragging) { // when resize.activate(canvasEvent({ x: 0, y: 0 }), shape, 'se'); dragging.move(canvasEvent({ x: 20, y: 20 })); // then var frames = domQueryAll('.djs-resize-overlay', canvas.getDefaultLayer()); expect(frames.length).to.equal(1); }));
it('should display results', inject(function(canvas, eventBus, searchPad) { // given var find = sinon.spy(searchProvider, 'find'); // when typeText(input_node, 'two'); // then expect(find).callCount(3); var result_nodes = domQueryAll(SearchPad.RESULT_SELECTOR, canvas.getContainer()); expect(result_nodes).length(2); }));
function expectEntries(contextPad, element, entries) { var pad = contextPad.getPad(element), html = pad.html; entries.forEach(function(e) { var entry = domQuery('[data-action="' + e + '"]', html); expect(entry).not.to.be.null; }); expect(domQueryAll('.entry', html).length).to.equal(entries.length); }
it('should render annotation cells', function() { // then const cells = domQueryAll('td.annotation', testContainer); expect(cells).to.have.lengthOf(4); expect(cells[0].textContent).to.equal('Bronze is really not that good'); expect(cells[1].textContent).to.equal('Silver is actually quite okay'); expect(cells[2].textContent).to.equal('Same here'); expect(cells[3].textContent).to.equal( 'Gold is really good, try even harder next time though' ); });
it('should connect-hover and out', inject(function(canvas, bendpointMove, dragging) { // when bendpointMove.start(canvasEvent({ x: 500, y: 500 }), connection, 2); dragging.hover({ element: rootShape, gfx: canvas.getGraphics(rootShape) }); dragging.out(); dragging.hover({ element: shape2, gfx: canvas.getGraphics(shape2) }); dragging.out(); dragging.hover({ element: shape3, gfx: canvas.getGraphics(shape3) }); dragging.out(); dragging.hover({ element: rootShape, gfx: canvas.getGraphics(rootShape) }); // then var hoverNodes = domQueryAll('.connect-hover, .connect-ok, .connect-not-ok', canvas._svg); // connect-hover indicator expect(hoverNodes.length).to.equal(1); }));
inject(function(canvas, elementFactory, elementRegistry, selection) { // given var s = elementFactory.createShape({ id: 'c2', resizable: false, x: 300, y: 100, width: 100, height: 100 }); var nonResizable = canvas.addShape(s); // when selection.select(nonResizable); // then var resizeAnchors = domQueryAll('.resize', gfx); expect(resizeAnchors.length).to.equal(0); })
it('should remove elements', inject(function(canvas, elementRegistry) { // given canvas.setRootElement({ id: 'FOO' }); canvas.addShape({ id: 'a', x: 10, y: 20, width: 50, height: 50 }); canvas.addShape({ id: 'b', x: 100, y: 20, width: 50, height: 50 }); var baseLayer = canvas.getDefaultLayer(); // when canvas._clear(); // then expect(canvas._rootElement).not.to.exist; // all elements got removed expect(domQueryAll('*', baseLayer).length).to.equal(0); expect(elementRegistry.getAll()).to.be.empty; expect(canvas._cachedViewbox).not.to.exist; }));
return inject(function(resizeHandles) { return domQueryAll('.djs-resizer', resizeHandles._getResizersParent()); })();
it('should render if no inputs', function() { // then expect(domQueryAll('.create-inputs', testContainer)).to.have.length(2); });
function clearSegmentDraggers(gfx) { forEach(domQueryAll('.' + SEGMENT_DRAGGER_CLS, gfx), function(node) { svgRemove(node); }); }
function clearBendpoints(gfx) { forEach(domQueryAll('.' + BENDPOINT_CLS, gfx), function(node) { svgRemove(node); }); }