Merge pull request #24045 from nextcloud/backport/24042/stable19
[stable19] Fix sharing tab state not matching resharing admin settings
This commit is contained in:
commit
742ac0f4fe
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -66,6 +66,7 @@
|
||||||
|
|
||||||
<!-- reshare permission -->
|
<!-- reshare permission -->
|
||||||
<ActionCheckbox
|
<ActionCheckbox
|
||||||
|
v-if="config.isResharingAllowed"
|
||||||
ref="canReshare"
|
ref="canReshare"
|
||||||
:checked.sync="canReshare"
|
:checked.sync="canReshare"
|
||||||
:value="permissionsShare"
|
:value="permissionsShare"
|
||||||
|
|
|
@ -94,6 +94,7 @@ import Avatar from '@nextcloud/vue/dist/Components/Avatar'
|
||||||
import axios from '@nextcloud/axios'
|
import axios from '@nextcloud/axios'
|
||||||
import Tab from '@nextcloud/vue/dist/Components/AppSidebarTab'
|
import Tab from '@nextcloud/vue/dist/Components/AppSidebarTab'
|
||||||
|
|
||||||
|
import Config from '../services/ConfigService'
|
||||||
import { shareWithTitle } from '../utils/SharedWithMe'
|
import { shareWithTitle } from '../utils/SharedWithMe'
|
||||||
import Share from '../models/Share'
|
import Share from '../models/Share'
|
||||||
import ShareTypes from '../mixins/ShareTypes'
|
import ShareTypes from '../mixins/ShareTypes'
|
||||||
|
@ -132,6 +133,8 @@ export default {
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
config: new Config(),
|
||||||
|
|
||||||
error: '',
|
error: '',
|
||||||
expirationInterval: null,
|
expirationInterval: null,
|
||||||
icon: 'icon-share',
|
icon: 'icon-share',
|
||||||
|
@ -178,7 +181,7 @@ export default {
|
||||||
|
|
||||||
canReshare() {
|
canReshare() {
|
||||||
return !!(this.fileInfo.permissions & OC.PERMISSION_SHARE)
|
return !!(this.fileInfo.permissions & OC.PERMISSION_SHARE)
|
||||||
|| !!(this.reshare && this.reshare.hasSharePermission)
|
|| !!(this.reshare && this.reshare.hasSharePermission && this.config.isResharingAllowed)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -36,6 +36,7 @@ class SharingContext implements Context, SnippetAcceptingContext {
|
||||||
use CommandLine;
|
use CommandLine;
|
||||||
|
|
||||||
protected function resetAppConfigs() {
|
protected function resetAppConfigs() {
|
||||||
|
$this->modifyServerConfig('core', 'shareapi_default_permissions', '31');
|
||||||
$this->modifyServerConfig('sharebymail', 'enforcePasswordProtection', 'no');
|
$this->modifyServerConfig('sharebymail', 'enforcePasswordProtection', 'no');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -357,6 +357,40 @@ Feature: sharing
|
||||||
| url | AN_URL |
|
| url | AN_URL |
|
||||||
| mimetype | httpd/unix-directory |
|
| mimetype | httpd/unix-directory |
|
||||||
|
|
||||||
|
Scenario: Creating a new share of a file with default permissions
|
||||||
|
Given user "user0" exists
|
||||||
|
And user "user1" exists
|
||||||
|
And As an "user0"
|
||||||
|
And parameter "shareapi_default_permissions" of app "core" is set to "7"
|
||||||
|
When creating a share with
|
||||||
|
| path | welcome.txt |
|
||||||
|
| shareWith | user1 |
|
||||||
|
| shareType | 0 |
|
||||||
|
And the OCS status code should be "100"
|
||||||
|
And the HTTP status code should be "200"
|
||||||
|
And Getting info of last share
|
||||||
|
Then the OCS status code should be "100"
|
||||||
|
And the HTTP status code should be "200"
|
||||||
|
And Share fields of last share match with
|
||||||
|
| permissions | 3 |
|
||||||
|
|
||||||
|
Scenario: Creating a new share of a folder with default permissions
|
||||||
|
Given user "user0" exists
|
||||||
|
And user "user1" exists
|
||||||
|
And As an "user0"
|
||||||
|
And parameter "shareapi_default_permissions" of app "core" is set to "7"
|
||||||
|
When creating a share with
|
||||||
|
| path | FOLDER |
|
||||||
|
| shareWith | user1 |
|
||||||
|
| shareType | 0 |
|
||||||
|
And the OCS status code should be "100"
|
||||||
|
And the HTTP status code should be "200"
|
||||||
|
And Getting info of last share
|
||||||
|
Then the OCS status code should be "100"
|
||||||
|
And the HTTP status code should be "200"
|
||||||
|
And Share fields of last share match with
|
||||||
|
| permissions | 7 |
|
||||||
|
|
||||||
Scenario: getting all shares of a user using that user
|
Scenario: getting all shares of a user using that user
|
||||||
Given user "user0" exists
|
Given user "user0" exists
|
||||||
And user "user1" exists
|
And user "user1" exists
|
||||||
|
|
|
@ -166,3 +166,83 @@ Feature: app-files-sharing-link
|
||||||
And I authenticate with password "abcdef"
|
And I authenticate with password "abcdef"
|
||||||
# download starts no page redirection
|
# download starts no page redirection
|
||||||
And I see that the current page is the Authenticate page for the direct download shared link I wrote down
|
And I see that the current page is the Authenticate page for the direct download shared link I wrote down
|
||||||
|
|
||||||
|
Scenario: sharee can not reshare by link if resharing is disabled in the settings after the share is created
|
||||||
|
Given I act as John
|
||||||
|
And I am logged in as the admin
|
||||||
|
And I act as Jane
|
||||||
|
And I am logged in
|
||||||
|
And I act as John
|
||||||
|
And I rename "welcome.txt" to "farewell.txt"
|
||||||
|
And I see that the file list contains a file named "farewell.txt"
|
||||||
|
And I share "farewell.txt" with "user0"
|
||||||
|
And I see that the file is shared with "user0"
|
||||||
|
And I visit the settings page
|
||||||
|
And I open the "Sharing" section of the "Administration" group
|
||||||
|
And I disable resharing
|
||||||
|
And I see that resharing is disabled
|
||||||
|
When I act as Jane
|
||||||
|
# The Files app is open again to reload the file list
|
||||||
|
And I open the Files app
|
||||||
|
Then I see that the file list contains a file named "farewell.txt"
|
||||||
|
And I open the details view for "farewell.txt"
|
||||||
|
And I see that the details view is open
|
||||||
|
And I open the "Sharing" tab in the details view
|
||||||
|
And I see that the "Sharing" tab in the details view is eventually loaded
|
||||||
|
And I see that the file is shared with me by "admin"
|
||||||
|
And I see that resharing the file by link is not available
|
||||||
|
|
||||||
|
Scenario: sharee can unshare a reshare by link if resharing is disabled in the settings after the reshare is created
|
||||||
|
Given I act as John
|
||||||
|
And I am logged in as the admin
|
||||||
|
And I act as Jane
|
||||||
|
And I am logged in
|
||||||
|
And I act as John
|
||||||
|
And I rename "welcome.txt" to "farewell.txt"
|
||||||
|
And I see that the file list contains a file named "farewell.txt"
|
||||||
|
And I share "farewell.txt" with "user0"
|
||||||
|
And I see that the file is shared with "user0"
|
||||||
|
And I act as Jane
|
||||||
|
# The Files app is open again to reload the file list
|
||||||
|
And I open the Files app
|
||||||
|
And I share the link for "farewell.txt"
|
||||||
|
And I write down the shared link
|
||||||
|
And I act as John
|
||||||
|
And I visit the settings page
|
||||||
|
And I open the "Sharing" section of the "Administration" group
|
||||||
|
And I disable resharing
|
||||||
|
And I see that resharing is disabled
|
||||||
|
When I act as Jane
|
||||||
|
# The Files app is open again to reload the file list
|
||||||
|
And I open the Files app
|
||||||
|
And I open the details view for "farewell.txt"
|
||||||
|
And I see that the details view is open
|
||||||
|
And I open the "Sharing" tab in the details view
|
||||||
|
And I see that the "Sharing" tab in the details view is eventually loaded
|
||||||
|
And I unshare the link share
|
||||||
|
Then I see that resharing the file by link is not available
|
||||||
|
|
||||||
|
Scenario: reshare by link can be accessed if resharing is disabled in the settings after the reshare is created
|
||||||
|
Given I act as John
|
||||||
|
And I am logged in as the admin
|
||||||
|
And I act as Jane
|
||||||
|
And I am logged in
|
||||||
|
And I act as John
|
||||||
|
And I rename "welcome.txt" to "farewell.txt"
|
||||||
|
And I see that the file list contains a file named "farewell.txt"
|
||||||
|
And I share "farewell.txt" with "user0"
|
||||||
|
And I see that the file is shared with "user0"
|
||||||
|
And I act as Jane
|
||||||
|
# The Files app is open again to reload the file list
|
||||||
|
And I open the Files app
|
||||||
|
And I share the link for "farewell.txt"
|
||||||
|
And I write down the shared link
|
||||||
|
And I act as John
|
||||||
|
And I visit the settings page
|
||||||
|
And I open the "Sharing" section of the "Administration" group
|
||||||
|
And I disable resharing
|
||||||
|
And I see that resharing is disabled
|
||||||
|
When I act as Jim
|
||||||
|
And I visit the shared link I wrote down
|
||||||
|
Then I see that the current page is the shared link I wrote down
|
||||||
|
And I see that the shared file preview shows the text "Welcome to your Nextcloud account!"
|
||||||
|
|
|
@ -246,6 +246,110 @@ Feature: app-files-sharing
|
||||||
And I enter in the folder named "Shared folder"
|
And I enter in the folder named "Shared folder"
|
||||||
Then I see that the file list contains a file named "Subfolder"
|
Then I see that the file list contains a file named "Subfolder"
|
||||||
|
|
||||||
|
Scenario: sharer does not see resharing option for a folder if resharing is disabled in the settings after the share is created
|
||||||
|
Given I am logged in as the admin
|
||||||
|
And I create a new folder named "Shared folder"
|
||||||
|
And I see that the file list contains a file named "Shared folder"
|
||||||
|
And I share "Shared folder" with "user0"
|
||||||
|
And I see that the file is shared with "user0"
|
||||||
|
When I visit the settings page
|
||||||
|
And I open the "Sharing" section of the "Administration" group
|
||||||
|
And I disable resharing
|
||||||
|
And I see that resharing is disabled
|
||||||
|
Then I open the Files app
|
||||||
|
And I open the details view for "Shared folder"
|
||||||
|
And I see that the details view is open
|
||||||
|
And I open the "Sharing" tab in the details view
|
||||||
|
And I see that the "Sharing" tab in the details view is eventually loaded
|
||||||
|
And I see that resharing for "user0" is not available
|
||||||
|
|
||||||
|
Scenario: sharee can not reshare a folder if resharing is disabled in the settings after the share is created
|
||||||
|
Given I act as John
|
||||||
|
And I am logged in as the admin
|
||||||
|
And I act as Jane
|
||||||
|
And I am logged in
|
||||||
|
And I act as John
|
||||||
|
And I create a new folder named "Shared folder"
|
||||||
|
And I see that the file list contains a file named "Shared folder"
|
||||||
|
And I share "Shared folder" with "user0"
|
||||||
|
And I see that the file is shared with "user0"
|
||||||
|
And I visit the settings page
|
||||||
|
And I open the "Sharing" section of the "Administration" group
|
||||||
|
And I disable resharing
|
||||||
|
And I see that resharing is disabled
|
||||||
|
When I act as Jane
|
||||||
|
# The Files app is open again to reload the file list
|
||||||
|
And I open the Files app
|
||||||
|
Then I see that the file list contains a file named "Shared folder"
|
||||||
|
And I open the details view for "Shared folder"
|
||||||
|
And I see that the details view is open
|
||||||
|
And I open the "Sharing" tab in the details view
|
||||||
|
And I see that the "Sharing" tab in the details view is eventually loaded
|
||||||
|
And I see that the file is shared with me by "admin"
|
||||||
|
And I see that resharing the file is not allowed
|
||||||
|
|
||||||
|
Scenario: sharee can unshare a folder if resharing is disabled in the settings after the share is created
|
||||||
|
Given I act as John
|
||||||
|
And I am logged in as the admin
|
||||||
|
And I act as Jane
|
||||||
|
And I am logged in
|
||||||
|
And I act as John
|
||||||
|
And I create a new folder named "Shared folder"
|
||||||
|
And I see that the file list contains a file named "Shared folder"
|
||||||
|
And I share "Shared folder" with "user0"
|
||||||
|
And I see that the file is shared with "user0"
|
||||||
|
And I act as Jane
|
||||||
|
# The Files app is open again to reload the file list
|
||||||
|
And I open the Files app
|
||||||
|
And I share "Shared folder" with "user1"
|
||||||
|
And I act as John
|
||||||
|
And I visit the settings page
|
||||||
|
And I open the "Sharing" section of the "Administration" group
|
||||||
|
And I disable resharing
|
||||||
|
And I see that resharing is disabled
|
||||||
|
When I act as Jane
|
||||||
|
# The Files app is open again to reload the file list
|
||||||
|
And I open the Files app
|
||||||
|
Then I see that the file list contains a file named "Shared folder"
|
||||||
|
And I open the details view for "Shared folder"
|
||||||
|
And I see that the details view is open
|
||||||
|
And I open the "Sharing" tab in the details view
|
||||||
|
And I see that the "Sharing" tab in the details view is eventually loaded
|
||||||
|
And I see that the file is shared with me by "admin"
|
||||||
|
And I unshare the share with "user1"
|
||||||
|
And I see that the file is not shared with "user1"
|
||||||
|
|
||||||
|
Scenario: resharee sees a folder created by the owner in a shared folder if resharing is disabled in the settings after the share is created
|
||||||
|
Given I act as John
|
||||||
|
And I am logged in as the admin
|
||||||
|
And I act as Jane
|
||||||
|
And I am logged in
|
||||||
|
And I act as Jim
|
||||||
|
And I am logged in as "user1"
|
||||||
|
And I act as John
|
||||||
|
And I create a new folder named "Shared folder"
|
||||||
|
And I see that the file list contains a file named "Shared folder"
|
||||||
|
And I share "Shared folder" with "user0"
|
||||||
|
And I see that the file is shared with "user0"
|
||||||
|
And I act as Jane
|
||||||
|
# The Files app is open again to reload the file list
|
||||||
|
And I open the Files app
|
||||||
|
And I share "Shared folder" with "user1"
|
||||||
|
And I act as John
|
||||||
|
And I visit the settings page
|
||||||
|
And I open the "Sharing" section of the "Administration" group
|
||||||
|
And I disable resharing
|
||||||
|
And I see that resharing is disabled
|
||||||
|
And I open the Files app
|
||||||
|
And I enter in the folder named "Shared folder"
|
||||||
|
And I create a new folder named "Subfolder"
|
||||||
|
And I see that the file list contains a file named "Subfolder"
|
||||||
|
When I act as Jim
|
||||||
|
# The Files app is open again to reload the file list
|
||||||
|
And I open the Files app
|
||||||
|
And I enter in the folder named "Shared folder"
|
||||||
|
Then I see that the file list contains a file named "Subfolder"
|
||||||
|
|
||||||
Scenario: sharee can not reshare a folder if the sharer disables it
|
Scenario: sharee can not reshare a folder if the sharer disables it
|
||||||
Given I act as John
|
Given I act as John
|
||||||
And I am logged in as the admin
|
And I am logged in as the admin
|
||||||
|
|
|
@ -163,6 +163,15 @@ class FilesAppSharingContext implements Context, ActorAwareInterface {
|
||||||
return self::permissionCheckboxInputFor($sharedWithName, 'Allow resharing');
|
return self::permissionCheckboxInputFor($sharedWithName, 'Allow resharing');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return Locator
|
||||||
|
*/
|
||||||
|
public static function unshareButton($sharedWithName) {
|
||||||
|
return Locator::forThe()->xpath("//li//button[normalize-space() = 'Unshare']")->
|
||||||
|
descendantOf(self::shareWithMenu($sharedWithName))->
|
||||||
|
describedAs("Unshare button in the share with $sharedWithName menu in the details view in Files app");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return Locator
|
* @return Locator
|
||||||
*/
|
*/
|
||||||
|
@ -301,6 +310,15 @@ class FilesAppSharingContext implements Context, ActorAwareInterface {
|
||||||
describedAs("Password protect by Talk checkbox input in the details view in Files app");
|
describedAs("Password protect by Talk checkbox input in the details view in Files app");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return Locator
|
||||||
|
*/
|
||||||
|
public static function unshareLinkButton() {
|
||||||
|
return Locator::forThe()->xpath("//li//button[normalize-space() = 'Unshare']")->
|
||||||
|
descendantOf(self::shareLinkMenu())->
|
||||||
|
describedAs("Unshare link button in the details view in Files app");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Given I share the link for :fileName
|
* @Given I share the link for :fileName
|
||||||
*/
|
*/
|
||||||
|
@ -433,6 +451,24 @@ class FilesAppSharingContext implements Context, ActorAwareInterface {
|
||||||
$this->actor->find(self::canReshareCheckbox($shareWithName), 2)->click();
|
$this->actor->find(self::canReshareCheckbox($shareWithName), 2)->click();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @When I unshare the share with :shareWithName
|
||||||
|
*/
|
||||||
|
public function iUnshareTheFileWith($shareWithName) {
|
||||||
|
$this->showShareWithMenuIfNeeded($shareWithName);
|
||||||
|
|
||||||
|
$this->actor->find(self::unshareButton($shareWithName), 2)->click();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @When I unshare the link share
|
||||||
|
*/
|
||||||
|
public function iUnshareTheLink() {
|
||||||
|
$this->showShareLinkMenuIfNeeded();
|
||||||
|
|
||||||
|
$this->actor->find(self::unshareLinkButton(), 2)->click();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Then I see that the file is shared with me by :sharedByName
|
* @Then I see that the file is shared with me by :sharedByName
|
||||||
*/
|
*/
|
||||||
|
@ -449,6 +485,18 @@ class FilesAppSharingContext implements Context, ActorAwareInterface {
|
||||||
$this->actor->find(self::sharedWithRow($sharedWithName), 10)->isVisible());
|
$this->actor->find(self::sharedWithRow($sharedWithName), 10)->isVisible());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Then I see that the file is not shared with :sharedWithName
|
||||||
|
*/
|
||||||
|
public function iSeeThatTheFileIsNotSharedWith($sharedWithName) {
|
||||||
|
if (!WaitFor::elementToBeEventuallyNotShown(
|
||||||
|
$this->actor,
|
||||||
|
self::sharedWithRow($sharedWithName),
|
||||||
|
$timeout = 10 * $this->actor->getFindTimeoutMultiplier())) {
|
||||||
|
PHPUnit_Framework_Assert::fail("The shared with $sharedWithName row is still shown after $timeout seconds");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Then I see that resharing the file is not allowed
|
* @Then I see that resharing the file is not allowed
|
||||||
*/
|
*/
|
||||||
|
@ -459,6 +507,18 @@ class FilesAppSharingContext implements Context, ActorAwareInterface {
|
||||||
$this->actor->find(self::shareWithInput(), 10)->getWrappedElement()->getAttribute("placeholder"), "Resharing is not allowed");
|
$this->actor->find(self::shareWithInput(), 10)->getWrappedElement()->getAttribute("placeholder"), "Resharing is not allowed");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Then I see that resharing the file by link is not available
|
||||||
|
*/
|
||||||
|
public function iSeeThatResharingTheFileByLinkIsNotAvailable() {
|
||||||
|
if (!WaitFor::elementToBeEventuallyNotShown(
|
||||||
|
$this->actor,
|
||||||
|
self::shareLinkAddNewButton(),
|
||||||
|
$timeout = 10 * $this->actor->getFindTimeoutMultiplier())) {
|
||||||
|
PHPUnit_Framework_Assert::fail("The add new share link button is still shown after $timeout seconds");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Then I see that :sharedWithName can not be allowed to edit the share
|
* @Then I see that :sharedWithName can not be allowed to edit the share
|
||||||
*/
|
*/
|
||||||
|
@ -519,6 +579,20 @@ class FilesAppSharingContext implements Context, ActorAwareInterface {
|
||||||
$this->actor->find(self::canCreateCheckboxInput($sharedWithName), 10)->isChecked());
|
$this->actor->find(self::canCreateCheckboxInput($sharedWithName), 10)->isChecked());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Then I see that resharing for :sharedWithName is not available
|
||||||
|
*/
|
||||||
|
public function iSeeThatResharingForIsNotAvailable($sharedWithName) {
|
||||||
|
$this->showShareWithMenuIfNeeded($sharedWithName);
|
||||||
|
|
||||||
|
if (!WaitFor::elementToBeEventuallyNotShown(
|
||||||
|
$this->actor,
|
||||||
|
self::canReshareCheckbox($sharedWithName),
|
||||||
|
$timeout = 10 * $this->actor->getFindTimeoutMultiplier())) {
|
||||||
|
PHPUnit_Framework_Assert::fail("The resharing checkbox for $sharedWithName is still shown after $timeout seconds");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Then I see that :sharedWithName can reshare the share
|
* @Then I see that :sharedWithName can reshare the share
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -45,6 +45,25 @@ class SettingsContext implements Context, ActorAwareInterface {
|
||||||
describedAs("Accept shares by default checkbox input in Sharing section in Personal Sharing Settings");
|
describedAs("Accept shares by default checkbox input in Sharing section in Personal Sharing Settings");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return Locator
|
||||||
|
*/
|
||||||
|
public static function allowResharingCheckbox() {
|
||||||
|
// forThe()->checkbox("Allow resharing") can not be used here; that
|
||||||
|
// would return the checkbox itself, but the element that the user
|
||||||
|
// interacts with is the label.
|
||||||
|
return Locator::forThe()->xpath("//label[normalize-space() = 'Allow resharing']")->
|
||||||
|
describedAs("Allow resharing checkbox in Sharing section in Administration Sharing Settings");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return Locator
|
||||||
|
*/
|
||||||
|
public static function allowResharingCheckboxInput() {
|
||||||
|
return Locator::forThe()->checkbox("Allow resharing")->
|
||||||
|
describedAs("Allow resharing checkbox input in Sharing section in Administration Sharing Settings");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return Locator
|
* @return Locator
|
||||||
*/
|
*/
|
||||||
|
@ -130,6 +149,15 @@ class SettingsContext implements Context, ActorAwareInterface {
|
||||||
$this->actor->find(self::acceptSharesByDefaultCheckbox(), 2)->click();
|
$this->actor->find(self::acceptSharesByDefaultCheckbox(), 2)->click();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @When I disable resharing
|
||||||
|
*/
|
||||||
|
public function iDisableResharing() {
|
||||||
|
$this->iSeeThatResharingIsEnabled();
|
||||||
|
|
||||||
|
$this->actor->find(self::allowResharingCheckbox(), 2)->click();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @When I enable restricting username autocompletion to groups
|
* @When I enable restricting username autocompletion to groups
|
||||||
*/
|
*/
|
||||||
|
@ -156,6 +184,22 @@ class SettingsContext implements Context, ActorAwareInterface {
|
||||||
$this->actor->find(self::acceptSharesByDefaultCheckboxInput(), 10)->isChecked());
|
$this->actor->find(self::acceptSharesByDefaultCheckboxInput(), 10)->isChecked());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Then I see that resharing is enabled
|
||||||
|
*/
|
||||||
|
public function iSeeThatResharingIsEnabled() {
|
||||||
|
PHPUnit_Framework_Assert::assertTrue(
|
||||||
|
$this->actor->find(self::allowResharingCheckboxInput(), 10)->isChecked());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Then I see that resharing is disabled
|
||||||
|
*/
|
||||||
|
public function iSeeThatResharingIsDisabled() {
|
||||||
|
PHPUnit_Framework_Assert::assertFalse(
|
||||||
|
$this->actor->find(self::allowResharingCheckboxInput(), 10)->isChecked());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Then I see that username autocompletion is restricted to groups
|
* @Then I see that username autocompletion is restricted to groups
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue