mirror of
https://github.com/nextcloud/server.git
synced 2026-06-04 14:24:59 -04:00
Add integration tests for deleting federated shares
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
This commit is contained in:
parent
ec4474c459
commit
66b5a2d56a
2 changed files with 102 additions and 8 deletions
|
|
@ -39,6 +39,9 @@ class FederationContext implements Context, SnippetAcceptingContext {
|
|||
use AppConfiguration;
|
||||
use CommandLine;
|
||||
|
||||
/** @var string */
|
||||
private $lastAcceptedRemoteShareId;
|
||||
|
||||
/**
|
||||
* @BeforeScenario
|
||||
*/
|
||||
|
|
@ -109,6 +112,17 @@ class FederationContext implements Context, SnippetAcceptingContext {
|
|||
$this->theHTTPStatusCodeShouldBe('200');
|
||||
$this->theOCSStatusCodeShouldBe('100');
|
||||
$this->usingServer($previous);
|
||||
|
||||
$this->lastAcceptedRemoteShareId = $share_id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @When /^user "([^"]*)" deletes last accepted remote share$/
|
||||
* @param string $user
|
||||
*/
|
||||
public function deleteLastAcceptedRemoteShare($user) {
|
||||
$this->asAn($user);
|
||||
$this->sendingToWith('DELETE', "/apps/files_sharing/api/v1/remote_shares/" . $this->lastAcceptedRemoteShareId, null);
|
||||
}
|
||||
|
||||
protected function resetAppConfigs() {
|
||||
|
|
|
|||
|
|
@ -278,13 +278,93 @@ Feature: federated
|
|||
|
||||
|
||||
|
||||
Scenario: Delete federated share with another server
|
||||
Given Using server "LOCAL"
|
||||
And user "user0" exists
|
||||
Given Using server "REMOTE"
|
||||
And user "user1" exists
|
||||
# Rename file so it has a unique name in the target server (as the target
|
||||
# server may have its own /textfile0.txt" file)
|
||||
And User "user1" copies file "/textfile0.txt" to "/remote-share.txt"
|
||||
And User "user1" from server "REMOTE" shares "/remote-share.txt" with user "user0" from server "LOCAL"
|
||||
And As an "user1"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/shares"
|
||||
And the list of returned shares has 1 shares
|
||||
And Using server "LOCAL"
|
||||
And User "user0" from server "LOCAL" accepts last pending share
|
||||
And as "user0" the file "/remote-share.txt" exists
|
||||
And As an "user0"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/remote_shares"
|
||||
And the list of returned shares has 1 shares
|
||||
And Using server "REMOTE"
|
||||
When As an "user1"
|
||||
And Deleting last share
|
||||
Then the OCS status code should be "100"
|
||||
And the HTTP status code should be "200"
|
||||
And As an "user1"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/shares"
|
||||
And the list of returned shares has 0 shares
|
||||
And Using server "LOCAL"
|
||||
And as "user0" the file "/remote-share.txt" does not exist
|
||||
And As an "user0"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/remote_shares"
|
||||
And the list of returned shares has 0 shares
|
||||
|
||||
Scenario: Delete federated share from another server
|
||||
Given Using server "LOCAL"
|
||||
And user "user0" exists
|
||||
Given Using server "REMOTE"
|
||||
And user "user1" exists
|
||||
# Rename file so it has a unique name in the target server (as the target
|
||||
# server may have its own /textfile0.txt" file)
|
||||
And User "user1" copies file "/textfile0.txt" to "/remote-share.txt"
|
||||
And User "user1" from server "REMOTE" shares "/remote-share.txt" with user "user0" from server "LOCAL"
|
||||
And As an "user1"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/shares"
|
||||
And the list of returned shares has 1 shares
|
||||
And Using server "LOCAL"
|
||||
And User "user0" from server "LOCAL" accepts last pending share
|
||||
And as "user0" the file "/remote-share.txt" exists
|
||||
And As an "user0"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/remote_shares"
|
||||
And the list of returned shares has 1 shares
|
||||
When user "user0" deletes last accepted remote share
|
||||
Then the OCS status code should be "100"
|
||||
And the HTTP status code should be "200"
|
||||
And as "user0" the file "/remote-share.txt" does not exist
|
||||
And As an "user0"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/remote_shares"
|
||||
And the list of returned shares has 0 shares
|
||||
And Using server "REMOTE"
|
||||
And As an "user1"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/shares"
|
||||
And the list of returned shares has 0 shares
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Scenario: Delete federated share file from another server
|
||||
Given Using server "LOCAL"
|
||||
And user "user0" exists
|
||||
Given Using server "REMOTE"
|
||||
And user "user1" exists
|
||||
# Rename file so it has a unique name in the target server (as the target
|
||||
# server may have its own /textfile0.txt" file)
|
||||
And User "user1" copies file "/textfile0.txt" to "/remote-share.txt"
|
||||
And User "user1" from server "REMOTE" shares "/remote-share.txt" with user "user0" from server "LOCAL"
|
||||
And As an "user1"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/shares"
|
||||
And the list of returned shares has 1 shares
|
||||
And Using server "LOCAL"
|
||||
And User "user0" from server "LOCAL" accepts last pending share
|
||||
And as "user0" the file "/remote-share.txt" exists
|
||||
And As an "user0"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/remote_shares"
|
||||
And the list of returned shares has 1 shares
|
||||
When User "user0" deletes file "/remote-share.txt"
|
||||
Then the HTTP status code should be "204"
|
||||
And as "user0" the file "/remote-share.txt" does not exist
|
||||
And As an "user0"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/remote_shares"
|
||||
And the list of returned shares has 0 shares
|
||||
And Using server "REMOTE"
|
||||
And As an "user1"
|
||||
And sending "GET" to "/apps/files_sharing/api/v1/shares"
|
||||
And the list of returned shares has 0 shares
|
||||
|
|
|
|||
Loading…
Reference in a new issue