in spec/integrated/vnext-spec/grid-view-api-spec.js [186:251]
it('verify head rows function for gridView', function () {
let gridConfig = {
el: '#container',
dataSource: {
type: 'memory',
data: memoryData,
primaryKey: 'UserName',
},
};
gridView = pgridFactory
.create(gridConfig)
.gridView;
return new Promise(resolve => gridView.render(resolve))
.then(() => driver.once(gridView, 'didUpdate'))
.then(() => {
expect(gridView.getHeadRows()[0]).to.be.equal('column-header-rows');
return null;
})
.then(() => {
gridView.setHeadRows([
{ html: '<div class="head-rows-html">head rows html</div>' },
]);
return driver.once(gridView, 'didUpdate');
})
.then(() => {
return driver.element('.table-container .header > tr > th > .head-rows-html');
})
.then(result => {
expect(result.text()).to.be.equal('head rows html');
return null;
})
.then(() => {
gridView.setHeadRows([
'column-header-rows',
]);
gridView.prependHeadRows([
{ html: '<div class="prepend-head-rows-1">prepend head rows 1</div>' },
{ html: '<div class="prepend-head-rows-2">prepend head rows 2</div>' },
]);
gridView.appendHeadRows([
{ html: '<div class="append-head-rows-1">append head rows 1</div>' },
{ html: '<div class="append-head-rows-2">append head rows 2</div>' },
]);
return driver.once(gridView, 'didUpdate');
})
.then(() => {
return Promise.all([
driver.element('.header tr:nth-child(1) .prepend-head-rows-1'),
driver.element('.header tr:nth-child(2) .prepend-head-rows-2'),
driver.element('.header tr:nth-child(3) th'),
driver.element('.header tr:nth-child(4) .append-head-rows-1'),
driver.element('.header tr:nth-child(5) .append-head-rows-2'),
]);
})
.then(result => {
expect(result[0].text()).to.be.equal('prepend head rows 1');
expect(result[1].text()).to.be.equal('prepend head rows 2');
let assertion = util.validateElementMatrix(result[2], expectedHeader);
expect(assertion).to.be.true;
expect(result[3].text()).to.be.equal('append head rows 1');
expect(result[4].text()).to.be.equal('append head rows 2');
return null;
})
.tapCatch(console.log);
});