Adding team tests
parent
4ad1c4af07
commit
ccf7f67a53
|
@ -0,0 +1,57 @@
|
|||
var utils = require('../utils');
|
||||
var teamHelper = require('../helpers').team;
|
||||
|
||||
var chai = require('chai');
|
||||
var chaiAsPromised = require('chai-as-promised');
|
||||
|
||||
chai.use(chaiAsPromised);
|
||||
var expect = chai.expect;
|
||||
|
||||
describe('leaving project', function(){
|
||||
before(async function(){
|
||||
browser.get('http://localhost:9001/project/project-4/team');
|
||||
await utils.common.waitLoader();
|
||||
});
|
||||
|
||||
it('leave project', async function(){
|
||||
teamHelper.team().leave();
|
||||
await utils.lightbox.confirm.ok();
|
||||
await utils.common.takeScreenshot("team", "after-leaving");
|
||||
});
|
||||
})
|
||||
|
||||
describe('team', function() {
|
||||
before(async function(){
|
||||
browser.get('http://localhost:9001/project/project-5/team');
|
||||
await utils.common.waitLoader();
|
||||
});
|
||||
|
||||
it('screenshot', async function() {
|
||||
await utils.common.takeScreenshot("team", "team");
|
||||
});
|
||||
|
||||
it('team filled', async function() {
|
||||
let total = await teamHelper.team().count();
|
||||
expect(total).to.be.equal(10);
|
||||
});
|
||||
|
||||
it('search username', async function() {
|
||||
let firstMemberName = await teamHelper.team().firstMember().getText();
|
||||
teamHelper.filters().searchText(firstMemberName);
|
||||
let total = await teamHelper.team().count();
|
||||
expect(total).to.be.equal(1);
|
||||
await utils.common.takeScreenshot("team", "searching-by-name");
|
||||
});
|
||||
|
||||
it('filter role', async function(){
|
||||
teamHelper.filters().clearText();
|
||||
let total = await teamHelper.team().count();
|
||||
let firstRole = await teamHelper.team().firstRole();
|
||||
let roleName = await firstRole.getText();
|
||||
teamHelper.filters().filterByRole(roleName);
|
||||
let newTotal = await teamHelper.team().count();
|
||||
expect(newTotal).to.be.below(total);
|
||||
expect(newTotal).to.be.least(1);
|
||||
await utils.common.takeScreenshot("team", "filtering-by-role");
|
||||
});
|
||||
})
|
|
@ -0,0 +1,55 @@
|
|||
var utils = require('../utils');
|
||||
|
||||
var helper = module.exports;
|
||||
|
||||
helper.team = function() {
|
||||
let el = $('.team');
|
||||
|
||||
let obj = {
|
||||
el: el,
|
||||
firstRole: function() {
|
||||
return el.$$('section[tg-team-members] .avatar span').first();
|
||||
},
|
||||
|
||||
firstMember: function() {
|
||||
return el.$$('section[tg-team-members] a.name').first();
|
||||
},
|
||||
|
||||
count: function() {
|
||||
return el.$$('section[tg-team-members] .row.member').count();
|
||||
},
|
||||
|
||||
leave: function() {
|
||||
el.$(".hero .username a").click();
|
||||
}
|
||||
};
|
||||
|
||||
return obj;
|
||||
};
|
||||
|
||||
helper.filters = function() {
|
||||
let el = $('.team-filters-inner');
|
||||
|
||||
let obj = {
|
||||
el: el,
|
||||
filterByRole: function(roleName) {
|
||||
let roles = el.$$("ul li a");
|
||||
roles.filter(function(role) {
|
||||
return role.getText().then(function(text) {
|
||||
return text.toLowerCase() === roleName.toLowerCase();
|
||||
});
|
||||
}).click();
|
||||
|
||||
},
|
||||
|
||||
clearText: function(text) {
|
||||
el.$('input[ng-model="filtersQ"]').clear();
|
||||
},
|
||||
|
||||
searchText: function(text) {
|
||||
el.$('input[ng-model="filtersQ"]').sendKeys(text);
|
||||
}
|
||||
};
|
||||
|
||||
return obj;
|
||||
};
|
Loading…
Reference in New Issue