Files
opencloud/services/settings/ui/tests/acceptance/pageobjects/filesPageSettingsContext.js
Pascal Wengerter c0b92f9571 Unskip settings service acceptance tests (#4057)
* Update dependencies, browserslist, linting, acceptance test translations for settings service

* Unskip settings service acceptance tests

* unsilence ci-node-generate steps

* Reset nodejs in CI from 16 to 14

Co-authored-by: Willy Kloucek <wkloucek@owncloud.com>
2022-06-29 12:17:55 +02:00

83 lines
2.1 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 undefined
})
})
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)
})
return undefined
})
})
await this
.click('@userMenuBtn')
.waitForElementNotPresent('@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 undefined
})
})
return menu
}
},
elements: {
pageHeader: {
selector: '.oc-page-title'
},
fileSidebarNavItem: {
selector: '.oc-sidebar-nav-item'
},
openNavigationBtn: {
selector: '.oc-app-navigation-toggle'
},
userMenuBtn: {
selector: '#_userMenuButton'
},
userMenuItem: {
selector: '#account-info-container li'
},
userMenuContainer: {
selector: '#account-info-container'
},
fileTableHeaderItems: {
selector: '//*[@id="files-personal-table"]//th[not(.//div)]',
locateStrategy: 'xpath'
}
}
}