Files
opencloud/settings/ui/tests/acceptance/pageobjects/filesPageSettingsContext.js
A.Unger f725ddaa65 Add 'settings/' from commit '230545a4a75b0611988fbcea51336a6c316d6a3d'
git-subtree-dir: settings
git-subtree-mainline: c26f7b390a
git-subtree-split: 230545a4a7
2020-09-18 12:43:43 +02:00

86 lines
2.3 KiB
JavaScript

module.exports = {
commands: {
getMenuList: async function () {
const menu = []
await this.isVisible('@openNavigationBtn', (res) => {
if (res.value) {
this.click('@openNavigationBtn')
}
})
await this.waitForElementVisible('@fileSidebarNavItem')
await this.api
.elements('@fileSidebarNavItem', result => {
result.value.map(item => {
this.api.elementIdText(item.ELEMENT, res => {
menu.push(res.value)
})
})
})
return menu
},
getUserMenu: async function () {
const menu = []
await this
.waitForElementVisible('@userMenuBtn')
.click('@userMenuBtn')
.waitForElementVisible('@userMenuContainer')
await this.api
.elements('@userMenuItem', result => {
result.value.map(item => {
this.api.elementIdText(item.ELEMENT, res => {
menu.push(res.value)
})
})
})
await this
.waitForElementVisible('@userMenuBtn')
.click('@userMenuBtn')
.waitForElementNotVisible('@userMenuContainer')
return menu
},
getFileHeaderItems: async function () {
const menu = []
await this.waitForElementVisible('@fileTableHeaderItems')
await this.api
.elements('@fileTableHeaderItems', result => {
result.value.map(item => {
this.api.elementIdText(item.ELEMENT, res => {
menu.push(res.value)
})
})
})
return menu
}
},
elements: {
pageHeader: {
selector: '.oc-page-title'
},
languageValue: {
selector: "//button[@id='single-choice-toggle-profile-language']",
locateStrategy: 'xpath'
},
fileSidebarNavItem: {
selector: '.oc-sidebar-nav-item'
},
openNavigationBtn: {
selector: '//button[@aria-label="Open navigation menu"]',
locateStrategy: 'xpath'
},
userMenuBtn: {
selector: '#_userMenuButton'
},
userMenuItem: {
selector: '#account-info-container li'
},
userMenuContainer: {
selector: '#account-info-container'
},
fileTableHeaderItems: {
selector: '//*[@id="files-table-header"]//span[not(*) and not(ancestor::label)]',
locateStrategy: 'xpath'
}
}
}