]> source.dussan.org Git - nextcloud-server.git/commitdiff
Add acceptance test for resharing a file with another user
authorDaniel Calviño Sánchez <danxuliu@gmail.com>
Fri, 23 Nov 2018 11:29:30 +0000 (12:29 +0100)
committerDaniel Calviño Sánchez <danxuliu@gmail.com>
Fri, 23 Nov 2018 14:14:48 +0000 (15:14 +0100)
To reshare a file there must be at least three enabled users in the
system; although it would be possible to run the steps to create a third
user in the scenarios that need it for convenience a third enabled user
besides "admin" and "user0" was added to the default setup.

In a similar way, a new step was added too to login as a given user
name, similar to the steps to log in as "user0" and as "admin".

Finally, another actor, "Jim", was introduced for those scenarios which
should be played by three standard actors (that is, without a special
configuration like "Rubeus").

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
tests/acceptance/config/behat.yml
tests/acceptance/features/app-files.feature
tests/acceptance/features/bootstrap/LoginPageContext.php
tests/acceptance/installAndConfigureServer.sh

index d1489a00864a02602a745818d9c47d6f4a24f733..3108ea41407ee1a0a8f0eae4fd0d2b80c00e017f 100644 (file)
@@ -63,6 +63,9 @@ default:
         Jane:
           selenium2:
             wd_host: %selenium.server%
+        Jim:
+          selenium2:
+            wd_host: %selenium.server%
         Rubeus:
           # Rubeus uses a browser that has CSS grid support.
           selenium2:
index 3c7c64cef27e673bf3de0f90f82beeca8707aea9..ab4131357ed85a14bcd9c5b0cc7ae245ee479cc5 100644 (file)
@@ -321,6 +321,33 @@ Feature: app-files
     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"
 
+  Scenario: reshare a file with another user
+    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 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
+    When I share "farewell.txt" with "user1"
+    And I see that the file is shared with "user1"
+    And I act as Jim
+    # 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 "user0"
+
   Scenario: share an empty folder with another user
     Given I act as John
     And I am logged in as the admin
index df7944aa912f91c394bc75e2d0e2a73ff7850d0e..048d23d92953d30700ae837281196b326a1e4434 100644 (file)
@@ -131,6 +131,15 @@ class LoginPageContext implements Context, ActorAwareInterface {
                $this->filesAppContext->iSeeThatTheCurrentPageIsTheFilesApp();
        }
 
+       /**
+        * @Given I am logged in as :userName
+        */
+       public function iAmLoggedInAs($userName) {
+               $this->featureContext->iVisitTheHomePage();
+               $this->iLogInWithUserAndPassword($userName, "123456acb");
+               $this->filesAppContext->iSeeThatTheCurrentPageIsTheFilesApp();
+       }
+
        /**
         * @Given I am logged in as the admin
         */
index 98de72bf45ef28a39c9b8bc582346e38ef05b7fb..d24405fa448f7a6b02fa4d90cc36e0e0352c16ec 100755 (executable)
@@ -35,6 +35,7 @@ fi
 php occ maintenance:install --admin-pass=admin
 
 OC_PASS=123456acb php occ user:add --password-from-env user0
+OC_PASS=123456acb php occ user:add --password-from-env user1
 OC_PASS=123456acb php occ user:add --password-from-env disabledUser
 php occ user:disable disabledUser