it()

in spec/integrated/vnext-spec/selection-spec.js [41:89]


  it('selection should works as expected', function () {
    let baseSelectionConfig = {
      selection: {
        enabled: true,
      },
    };
    gridView = pgridFactory
      .create(_.extend(baseSelectionConfig, gridConfig))
      .gridView;

    return new Promise(resolve => gridView.render(resolve))
      .then(() => driver.once(gridView, 'didUpdate'))
      .then(() => {
        return driver.element('#container > .table-container tbody tr[data-key]');
      })
      .then(result => {
        return driver.click(util.getCheckboxElFromTbody(result, 0, 0));
      })
      .then(() => {
        let expectedSelectedKey = 'russellwhyte';
        expect(gridView.selectedKeys()[0]).to.be.equal(expectedSelectedKey);
        let selectedItems = gridView.selectedItems();
        expect(selectedItems.length).to.be.equal(1);
        expect(selectedItems[0].UserName).to.be.equal(expectedSelectedKey);
        return driver.element('#container > .table-container tbody tr[data-key]');
      })
      .then(result => {
        let checkboxEl = util.getCheckboxElFromTbody(result, 0, 0);
        let assertion = checkboxEl.is(':checked');
        expect(assertion).to.be.true;
        return null;
      })
      .then(() => {
        return driver.element('#container > .table-container tbody tr[data-key]');
      })
      .then(result => {
        return driver.click(util.getCheckboxElFromTbody(result, 0, 0));
      })
      .then(() => {
        return driver.element('#container > .table-container tbody tr[data-key]');
      })
      .then(result => {
        let checkboxEl = util.getCheckboxElFromTbody(result, 0, 0);
        let assertion = checkboxEl.is(':checked');
        expect(assertion).to.be.false;
        return null;
      })
      .tapCatch(console.log);
  });