Brian Murphy Share receiver name: Brian Murphy (brian@owncloud.com)
-
-
-
-
- Access details
-
- Additionbrian@owncloud.com
- TypeUser
-
+
+ Access details
+
+ - Addition
+ - brian@owncloud.com
+ - Type
+ - User
+
@@ -25,12 +24,12 @@ exports[`Collaborator ListItem component share inheritance indicators show when
-
-
-
-
via
- folder
-
+
+ via
+ folder
+
+
+
diff --git a/tests/acceptance/pageObjects/FilesPageElement/SharingDialog/collaboratorsDialog.js b/tests/acceptance/pageObjects/FilesPageElement/SharingDialog/collaboratorsDialog.js
index f0fc100297e..bcf5b72b8e6 100644
--- a/tests/acceptance/pageObjects/FilesPageElement/SharingDialog/collaboratorsDialog.js
+++ b/tests/acceptance/pageObjects/FilesPageElement/SharingDialog/collaboratorsDialog.js
@@ -22,6 +22,7 @@ module.exports = {
.waitForAnimationToFinish() // wait for transition on the modal to finish
.click(dialogConfirmSelector)
.waitForAjaxCallsToStartAndFinish()
+ .waitForElementNotPresent('@collaboratorEditDropDownList')
},
/**
* Open the role selection dialog for a new share or for editing the given collaborator
@@ -98,7 +99,7 @@ module.exports = {
filterDisplayName = null,
timeout = null
) {
- let results = []
+ const results = []
let listItemSelector = {
selector: this.elements.collaboratorsListItem.selector
@@ -137,10 +138,20 @@ module.exports = {
)
}
)
-
- results = listItemElementIds.map(async (collaboratorElementId) => {
+ for (const collaboratorElementId of listItemElementIds) {
const collaboratorResult = {}
+ let collaboratorEditButton = null
+ await this.api.elementIdElement(
+ collaboratorElementId,
+ 'css selector',
+ this.elements.collaboratorEditButton,
+ (result) => {
+ collaboratorEditButton = result.value.ELEMENT
+ }
+ )
+ await this.api.elementIdClick(collaboratorEditButton)
+
let accessDetailsBtn = null
await this.api.elementIdElement(
collaboratorElementId,
@@ -174,11 +185,24 @@ module.exports = {
collaboratorResult[attrName] = false
}
}
- this.api.mouseButtonClick()
- return collaboratorResult
- })
+ results.push(collaboratorResult)
+ let collaboratorAvatarElId = null
+ await this.api.elementIdElement(
+ collaboratorElementId,
+ 'css selector',
+ '.files-collaborators-collaborator-indicator',
+ (result) => {
+ collaboratorAvatarElId = result.value.ELEMENT
+ }
+ )
+ // to hide the access details dialog from the screen, click on the collaborator avatar
+ await this.api.elementIdClick(collaboratorAvatarElId)
+ await this.waitForElementNotPresent(
+ '@collaboratorAccessDetailsDrop',
+ this.api.globals.waitForNegativeConditionTimeout
+ )
+ }
- results = await Promise.all(results)
return results
},
/**
@@ -287,11 +311,17 @@ module.exports = {
selector: '//button[contains(@class, "files-collaborators-expiration-button")]',
locateStrategy: 'xpath'
},
+ collaboratorEditButton: {
+ selector: '.collaborator-edit-dropdown-options-btn'
+ },
collaboratorAccessDetailsButton: {
- selector: '.files-collaborators-collaborator-access-details-button'
+ selector: '.show-access-details'
},
collaboratorAccessDetailsDrop: {
selector: '.share-access-details-drop'
+ },
+ collaboratorEditDropDownList: {
+ selector: '.collaborator-edit-dropdown-options-list'
}
}
}
diff --git a/tests/acceptance/stepDefinitions/sharingContext.js b/tests/acceptance/stepDefinitions/sharingContext.js
index 50670cbea40..4065ec2385a 100644
--- a/tests/acceptance/stepDefinitions/sharingContext.js
+++ b/tests/acceptance/stepDefinitions/sharingContext.js
@@ -145,7 +145,7 @@ const assertCollaboratorslistDoesNotContain = async function (type, name) {
{
displayName: collaboratorsDialog.elements.collaboratorInformationSubName
},
- null,
+ name,
client.globals.waitForNegativeConditionTimeout
)
.then((shares) => {