Adding common detail testing for title, tags and description
parent
2ed7ac62f4
commit
eea81738fe
|
@ -16,7 +16,13 @@ describe('Issue detail', function(){
|
||||||
await utils.common.takeScreenshot("issues", "detail");
|
await utils.common.takeScreenshot("issues", "detail");
|
||||||
});
|
});
|
||||||
|
|
||||||
it('assigned to', utils.detail.assignedToTesting);
|
it('title edition', utils.detail.titleTesting);
|
||||||
|
|
||||||
|
it('tags edition', utils.detail.tagsTesting);
|
||||||
|
|
||||||
|
it('description edition', utils.detail.descriptionTesting);
|
||||||
|
|
||||||
|
it('assigned to edition', utils.detail.assignedToTesting);
|
||||||
|
|
||||||
it('screenshot', async function() {
|
it('screenshot', async function() {
|
||||||
await utils.common.takeScreenshot("issues", "detail updated");
|
await utils.common.takeScreenshot("issues", "detail updated");
|
||||||
|
|
|
@ -16,7 +16,13 @@ describe('Task detail', function(){
|
||||||
await utils.common.takeScreenshot("tasks", "detail");
|
await utils.common.takeScreenshot("tasks", "detail");
|
||||||
});
|
});
|
||||||
|
|
||||||
it('assigned to', utils.detail.assignedToTesting);
|
it('title edition', utils.detail.titleTesting);
|
||||||
|
|
||||||
|
it('tags edition', utils.detail.tagsTesting);
|
||||||
|
|
||||||
|
it('description edition', utils.detail.descriptionTesting);
|
||||||
|
|
||||||
|
it('assigned to edition', utils.detail.assignedToTesting);
|
||||||
|
|
||||||
it('screenshot', async function() {
|
it('screenshot', async function() {
|
||||||
await utils.common.takeScreenshot("tasks", "detail updated");
|
await utils.common.takeScreenshot("tasks", "detail updated");
|
||||||
|
|
|
@ -16,7 +16,13 @@ describe('USer story detail', function(){
|
||||||
await utils.common.takeScreenshot("user-stories", "detail");
|
await utils.common.takeScreenshot("user-stories", "detail");
|
||||||
});
|
});
|
||||||
|
|
||||||
it('assigned to', utils.detail.assignedToTesting);
|
it('title edition', utils.detail.titleTesting);
|
||||||
|
|
||||||
|
it('tags edition', utils.detail.tagsTesting);
|
||||||
|
|
||||||
|
it('description edition', utils.detail.descriptionTesting);
|
||||||
|
|
||||||
|
it('assigned to edition', utils.detail.assignedToTesting);
|
||||||
|
|
||||||
it('screenshot', async function() {
|
it('screenshot', async function() {
|
||||||
await utils.common.takeScreenshot("user-stories", "detail updated");
|
await utils.common.takeScreenshot("user-stories", "detail updated");
|
||||||
|
|
|
@ -2,28 +2,115 @@ var utils = require('../utils');
|
||||||
|
|
||||||
var helper = module.exports;
|
var helper = module.exports;
|
||||||
|
|
||||||
|
helper.title = function() {
|
||||||
|
let el = $('span[tg-editable-subject]');
|
||||||
|
|
||||||
|
let obj = {
|
||||||
|
el: el,
|
||||||
|
|
||||||
|
getTitle: function() {
|
||||||
|
return el.$('.view-subject').getText();
|
||||||
|
},
|
||||||
|
|
||||||
|
setTitle: function(title) {
|
||||||
|
el.$('.view-subject').click();
|
||||||
|
el.$('.edit-subject input').clear().sendKeys(title);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
return obj;
|
||||||
|
}
|
||||||
|
|
||||||
|
helper.description = function(){
|
||||||
|
let el = $('section[tg-editable-description]');
|
||||||
|
|
||||||
|
let obj = {
|
||||||
|
el: el,
|
||||||
|
|
||||||
|
enabledEditionMode: async function(){
|
||||||
|
await el.$(".view-description").click();
|
||||||
|
},
|
||||||
|
|
||||||
|
getInnerHtml: async function(text){
|
||||||
|
let html = await el.$(".wysiwyg.editable").getInnerHtml();
|
||||||
|
return html;
|
||||||
|
},
|
||||||
|
|
||||||
|
setText: async function(text){
|
||||||
|
await el.$("textarea").clear().sendKeys(text);
|
||||||
|
},
|
||||||
|
|
||||||
|
save: async function(){
|
||||||
|
await el.$(".save").click();
|
||||||
|
await browser.waitForAngular();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
return obj;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
helper.tags = function() {
|
||||||
|
let el = $('div[tg-tag-line]');
|
||||||
|
|
||||||
|
let obj = {
|
||||||
|
el:el,
|
||||||
|
|
||||||
|
clearTags: async function() {
|
||||||
|
let tags = await el.$$('.icon-delete');
|
||||||
|
let totalTags = tags.length
|
||||||
|
while (totalTags > 0) {
|
||||||
|
el.$$('.icon-delete').first().click();
|
||||||
|
await browser.waitForAngular();
|
||||||
|
totalTags --;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
getTagsText: async function() {
|
||||||
|
let tags = await el.$$('.tag-name');
|
||||||
|
let text = "";
|
||||||
|
for (let tag of tags) {
|
||||||
|
let tagText = await tag.getText();
|
||||||
|
text += tagText;
|
||||||
|
}
|
||||||
|
return text;
|
||||||
|
},
|
||||||
|
|
||||||
|
addTags: async function(tags) {
|
||||||
|
el.$('.add-tag').click();
|
||||||
|
for (let tag of tags){
|
||||||
|
el.$('.tag-input').sendKeys(tag);
|
||||||
|
browser.actions().sendKeys(protractor.Key.ENTER).perform();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return obj;
|
||||||
|
}
|
||||||
|
|
||||||
helper.assignedTo = function() {
|
helper.assignedTo = function() {
|
||||||
let el = $('.assigned-to');
|
let el = $('.assigned-to');
|
||||||
|
|
||||||
let obj = {
|
let obj = {
|
||||||
el: el,
|
el: el,
|
||||||
clear: async function() {
|
|
||||||
el.$('.icon-delete').click();
|
|
||||||
await utils.lightbox.confirm.ok();
|
|
||||||
await browser.waitForAngular();
|
|
||||||
},
|
|
||||||
|
|
||||||
assign: function() {
|
clear: async function() {
|
||||||
el.$('.user-assigned').click();
|
el.$('.icon-delete').click();
|
||||||
},
|
await utils.lightbox.confirm.ok();
|
||||||
|
await browser.waitForAngular();
|
||||||
|
},
|
||||||
|
|
||||||
getUserName: function() {
|
assign: function() {
|
||||||
return el.$('.user-assigned').getText();
|
el.$('.user-assigned').click();
|
||||||
}
|
},
|
||||||
|
|
||||||
};
|
getUserName: function() {
|
||||||
|
return el.$('.user-assigned').getText();
|
||||||
|
}
|
||||||
|
|
||||||
return obj;
|
};
|
||||||
|
|
||||||
|
return obj;
|
||||||
};
|
};
|
||||||
|
|
||||||
helper.assignToLightbox = function() {
|
helper.assignToLightbox = function() {
|
||||||
|
|
|
@ -8,6 +8,39 @@ var expect = chai.expect;
|
||||||
|
|
||||||
var helper = module.exports;
|
var helper = module.exports;
|
||||||
|
|
||||||
|
helper.titleTesting = async function() {
|
||||||
|
let titleHelper = detailHelper.title();
|
||||||
|
let title = await titleHelper.getTitle();
|
||||||
|
let date = Date.now()
|
||||||
|
titleHelper.setTitle("New title " + date);
|
||||||
|
let newTitle = await titleHelper.getTitle();
|
||||||
|
expect(newTitle).to.be.not.equal(title);
|
||||||
|
}
|
||||||
|
|
||||||
|
helper.tagsTesting = async function() {
|
||||||
|
let tagsHelper = detailHelper.tags();
|
||||||
|
let tagsText = await tagsHelper.getTagsText();
|
||||||
|
await tagsHelper.clearTags();
|
||||||
|
let date = Date.now();
|
||||||
|
let tags = [1, 2, 3, 4, 5].map(function(i){ return date + "-" + i})
|
||||||
|
tagsHelper.addTags(tags);
|
||||||
|
await browser.waitForAngular();
|
||||||
|
let newtagsText = await tagsHelper.getTagsText();
|
||||||
|
expect(newtagsText).to.be.not.equal(tagsText);
|
||||||
|
}
|
||||||
|
|
||||||
|
helper.descriptionTesting = async function() {
|
||||||
|
let descriptionHelper = detailHelper.description();
|
||||||
|
let description = await descriptionHelper.getInnerHtml();
|
||||||
|
let date = Date.now()
|
||||||
|
descriptionHelper.enabledEditionMode();
|
||||||
|
descriptionHelper.setText("New description " + date)
|
||||||
|
descriptionHelper.save();
|
||||||
|
let newDescription = await descriptionHelper.getInnerHtml();
|
||||||
|
expect(newDescription).to.be.not.equal(description);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
helper.assignedToTesting = async function() {
|
helper.assignedToTesting = async function() {
|
||||||
let assignedTo = detailHelper.assignedTo();
|
let assignedTo = detailHelper.assignedTo();
|
||||||
let assignToLightbox = detailHelper.assignToLightbox();
|
let assignToLightbox = detailHelper.assignToLightbox();
|
||||||
|
|
Loading…
Reference in New Issue