示例#1
0
    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);
  }));
示例#3
0
    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 ]);
    }));
示例#4
0
      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]');
      });
示例#5
0
      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');
      });
示例#6
0
    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);
    }));
示例#7
0
    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);
    }));
示例#8
0
    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);
    }
示例#9
0
  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'
    );
  });
示例#10
0
    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);
    }));
示例#11
0
      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);
      })
示例#12
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;
    }));
示例#13
0
 return inject(function(resizeHandles) {
   return domQueryAll('.djs-resizer', resizeHandles._getResizersParent());
 })();
示例#14
0
  it('should render if no inputs', function() {

    // then
    expect(domQueryAll('.create-inputs', testContainer)).to.have.length(2);
  });
示例#15
0
 function clearSegmentDraggers(gfx) {
   forEach(domQueryAll('.' + SEGMENT_DRAGGER_CLS, gfx), function(node) {
     svgRemove(node);
   });
 }
示例#16
0
 function clearBendpoints(gfx) {
   forEach(domQueryAll('.' + BENDPOINT_CLS, gfx), function(node) {
     svgRemove(node);
   });
 }