125 lines
3.3 KiB
JavaScript
125 lines
3.3 KiB
JavaScript
var utils = require('../../../utils');
|
|
|
|
var adminAttributesHelper = require('../../../helpers').adminAttributes;
|
|
|
|
var chai = require('chai');
|
|
var chaiAsPromised = require('chai-as-promised');
|
|
|
|
chai.use(chaiAsPromised);
|
|
var expect = chai.expect;
|
|
|
|
describe('attributes - status', function() {
|
|
before(async function(){
|
|
browser.get(browser.params.glob.host + 'project/project-0/admin/project-values/status');
|
|
|
|
await utils.common.waitLoader();
|
|
|
|
utils.common.takeScreenshot('attributes', 'status');
|
|
});
|
|
|
|
it('new status', async function() {
|
|
let section = adminAttributesHelper.getSection(0);
|
|
let rows = section.rows();
|
|
let count = await rows.count();
|
|
|
|
let formWrapper = section.openNew();
|
|
|
|
let form = adminAttributesHelper.getStatusForm(formWrapper);
|
|
|
|
await form.status().sendKeys('test test');
|
|
|
|
await form.save();
|
|
|
|
await browser.waitForAngular();
|
|
|
|
let newCount = await rows.count();
|
|
|
|
expect(newCount).to.be.equal(count + 1);
|
|
});
|
|
|
|
it('duplicate status', async function() {
|
|
let section = adminAttributesHelper.getSection(0);
|
|
let rows = section.rows();
|
|
let count = await rows.count();
|
|
|
|
let formWrapper = section.openNew();
|
|
|
|
let form = adminAttributesHelper.getStatusForm(formWrapper);
|
|
|
|
await form.status().sendKeys('test test');
|
|
|
|
await form.save();
|
|
|
|
await browser.waitForAngular();
|
|
|
|
let newCount = await rows.count();
|
|
|
|
let errors = await form.errors().count();
|
|
|
|
utils.common.takeScreenshot('attributes', 'status-error');
|
|
|
|
expect(errors).to.be.equal(1);
|
|
expect(newCount).to.be.equal(count);
|
|
});
|
|
|
|
it('delete', async function() {
|
|
let section = adminAttributesHelper.getSection(0);
|
|
let rows = section.rows();
|
|
|
|
let count = await rows.count();
|
|
|
|
let row = rows.get(count - 1);
|
|
|
|
section.delete(row);
|
|
|
|
let el = $('.lightbox-ask-choice');
|
|
|
|
await utils.lightbox.open(el);
|
|
|
|
utils.common.takeScreenshot('attributes', 'delete-status');
|
|
|
|
el.$('.button-green').click();
|
|
|
|
await browser.waitForAngular();
|
|
|
|
let newCount = await rows.count();
|
|
|
|
expect(newCount).to.be.equal(count - 1);
|
|
});
|
|
|
|
it('edit', async function() {
|
|
let section = adminAttributesHelper.getSection(0);
|
|
let rows = section.rows();
|
|
|
|
let row = rows.get(0);
|
|
|
|
await section.edit(row);
|
|
|
|
let form = adminAttributesHelper.getStatusForm(row.$('form'));
|
|
|
|
let newStatusName = 'test test' + Date.now();
|
|
|
|
await form.status().clear();
|
|
await form.status().sendKeys(newStatusName);
|
|
await form.save();
|
|
|
|
await browser.waitForAngular();
|
|
|
|
let newStatuses = await adminAttributesHelper.getStatusNames(section.el);
|
|
|
|
expect(newStatuses.indexOf(newStatusName)).to.be.not.equal(-1);
|
|
});
|
|
|
|
utils.common.browserSkip(['firefox', 'internet explorer'], 'drag', async function() {
|
|
let section = adminAttributesHelper.getSection(0);
|
|
let rows = section.rows();
|
|
let statuses = await adminAttributesHelper.getStatusNames(section.el);
|
|
|
|
await utils.common.drag(rows.get(0), rows.get(2));
|
|
|
|
let newStatuses = await adminAttributesHelper.getStatusNames(section.el);
|
|
|
|
expect(statuses[0]).to.be.equal(newStatuses[1]);
|
|
});
|
|
});
|