Merge pull request #4371 from BryceLTaylor/fix-my-stuff-tests

Fix my stuff tests
This commit is contained in:
Bryce Taylor 2020-08-28 14:00:02 -04:00 committed by GitHub
commit b06b3c27cc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 15 deletions

View file

@ -41,27 +41,41 @@ describe('www-integration my_stuff', () => {
test('verify My Stuff structure (tabs, title)', async () => { test('verify My Stuff structure (tabs, title)', async () => {
await driver.get(myStuffURL); await driver.get(myStuffURL);
await findByXpath('//div[@class="box-head"]/h2'); let header = await findByXpath('//div[@class="box-head"]/h2');
await findByXpath('//li[@data-tab="projects"]/a'); let headerVisible = await header.isDisplayed();
await findByXpath('//li[@data-tab="shared"]/a'); await expect(headerVisible).toBe(true);
await findByXpath('//li[@data-tab="unshared"]/a'); let allTab = await findByXpath('//li[@data-tab="projects"]/a');
await findByXpath('//li[@data-tab="galleries"]/a'); let allTabVisible = await allTab.isDisplayed();
await findByXpath('//li[@data-tab="trash"]/a'); await expect(allTabVisible).toBe(true);
let sharedTab = await findByXpath('//li[@data-tab="shared"]/a');
let sharedTabVisible = await sharedTab.isDisplayed();
await expect(sharedTabVisible).toBe(true);
let unsharedTab = await findByXpath('//li[@data-tab="unshared"]/a');
let unsharedTabVisible = await unsharedTab.isDisplayed();
await expect(unsharedTabVisible).toBe(true);
let studios = await findByXpath('//li[@data-tab="galleries"]/a');
let studiosVisible = await studios.isDisplayed();
await expect(studiosVisible).toBe(true);
let trash = await findByXpath('//li[@data-tab="trash"]/a');
let trashVisible = await trash.isDisplayed();
await expect(trashVisible).toBe(true);
}); });
test('clicking a project title should take you to the project page', async () =>{ test('clicking a project title should take you to the project page', async () => {
await driver.get(myStuffURL); await driver.get(myStuffURL);
await clickXpath('//span[@class="media-info-item title"]'); await clickXpath('//span[@class="media-info-item title"]');
await driver.sleep(6000); await driver.sleep(6000);
let gui = await findByXpath('//div[@class="guiPlayer"]'); let gui = await findByXpath('//div[@class="guiPlayer"]');
await expect(gui.isDisplayed()); let guiVisible = await gui.isDisplayed();
await expect(guiVisible).toBe(true);
}); });
test('clicking "see inside" should take you to the editor', async () =>{ test('clicking "see inside" should take you to the editor', async () =>{
await driver.get(myStuffURL); await driver.get(myStuffURL);
await clickXpath('//a[@data-control="edit"]'); await clickXpath('//a[@data-control="edit"]');
let gf = await findByXpath('//img[@class="green-flag_green-flag_1kiAo"]'); let gf = await findByXpath('//img[@class="green-flag_green-flag_1kiAo"]');
await expect(gf.isDisplayed()); let gfVisible = await gf.isDisplayed();
await expect(gfVisible).toBe(true);
}); });
test('Add To button should bring up a list of studios', async () =>{ test('Add To button should bring up a list of studios', async () =>{
@ -69,24 +83,26 @@ describe('www-integration my_stuff', () => {
await clickXpath('//div[@id="sidebar"]/ul/li[@data-tab="shared"]'); await clickXpath('//div[@id="sidebar"]/ul/li[@data-tab="shared"]');
await clickXpath('//div[@data-control="add-to"]'); await clickXpath('//div[@data-control="add-to"]');
let dropDown = await findByXpath('//div[@class="dropdown-menu"]/ul/li'); let dropDown = await findByXpath('//div[@class="dropdown-menu"]/ul/li');
await expect(dropDown.isDisplayed()); let dropDownVisible = await dropDown.isDisplayed();
await expect(dropDownVisible).toBe(true);
}); });
test('+ New Studio button should take you to the studio page', async ()=>{ test('+ New Studio button should take you to the studio page', async ()=>{
await driver.get(myStuffURL); await driver.get(myStuffURL);
await clickXpath('//form[@id="new_studio"]/button[@type="submit"]'); await clickXpath('//form[@id="new_studio"]/button[@type="submit"]');
await driver.sleep(1000); await driver.sleep(500);
// my stuff also has an element with the id tabs // my stuff also has an element with the id tabs
let tabs = await findByXpath('//ul[@id="tabs" and @class="tabs-index box-h-tabs h-tabs"]'); let tabs = await findByXpath('//ul[@id="tabs" and @class="tabs-index box-h-tabs h-tabs"]');
expect(tabs.isDisplayed()); let tabsVisible = await tabs.isDisplayed();
expect(tabsVisible).toBe(true);
}); });
test('+ New Project button should open the editor', async () =>{ test('+ New Project button should open the editor', async () =>{
await driver.get(myStuffURL); await driver.get(myStuffURL);
await clickText('+ New Project'); await clickText('+ New Project');
let gf = await findByXpath('//img[@class="green-flag_green-flag_1kiAo"]'); let gf = await findByXpath('//img[@class="green-flag_green-flag_1kiAo"]');
await expect(gf.isDisplayed()); let gfVisible = await gf.isDisplayed();
await expect(gfVisible).toBe(true);
}); });
}); });

View file

@ -68,7 +68,7 @@ class SeleniumHelper {
let driverConfig = { let driverConfig = {
browserName: 'chrome', browserName: 'chrome',
platform: 'macOS 10.14', platform: 'macOS 10.14',
version: '76.0' version: '84.0'
}; };
var driver = new webdriver.Builder() var driver = new webdriver.Builder()
.withCapabilities({ .withCapabilities({