aboutsummaryrefslogtreecommitdiffstats
path: root/build/integration/sharing_features/sharing-v1.feature
diff options
context:
space:
mode:
authorDaniel Calviño Sánchez <danxuliu@gmail.com>2020-05-28 20:52:11 +0200
committerDaniel Calviño Sánchez <danxuliu@gmail.com>2020-05-29 02:50:29 +0200
commita2f80d4f4c7e451f698ee3312500f48067aaa5e3 (patch)
treefe09ae44e870e60e5b051dcbebbeb01d3be0aaf5 /build/integration/sharing_features/sharing-v1.feature
parent7817f8578b397fbec4e279fb4069f30fe04b37e9 (diff)
downloadnextcloud-server-a2f80d4f4c7e451f698ee3312500f48067aaa5e3.tar.gz
nextcloud-server-a2f80d4f4c7e451f698ee3312500f48067aaa5e3.zip
Add integration tests for creating and updating a mail share
In most cases, when a mail share is created or updated an e-mail is sent to the sharee, which is done by connecting to the SMTP server set in the configuration. If the server can not be contacted then the creation or update of the mail share fails. To make possible to test mail shares without using a real SMTP server a fake one has been added. The original script, which is MIT licensed, was based on inetd, so it was slightly modified to run on its own. In order to use it from the integration tests the "Given dummy mail server is listening" step has to be called in the scenarios in which the mail server is needed. For now that is the only available step; things like checking the sent mails, while possible (as the script can log the mails to certain file), have not been added yet. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Diffstat (limited to 'build/integration/sharing_features/sharing-v1.feature')
-rw-r--r--build/integration/sharing_features/sharing-v1.feature86
1 files changed, 86 insertions, 0 deletions
diff --git a/build/integration/sharing_features/sharing-v1.feature b/build/integration/sharing_features/sharing-v1.feature
index 498fe1456f6..764cd857a3e 100644
--- a/build/integration/sharing_features/sharing-v1.feature
+++ b/build/integration/sharing_features/sharing-v1.feature
@@ -56,6 +56,92 @@ Feature: sharing
Then the OCS status code should be "403"
And the HTTP status code should be "401"
+ Scenario: Creating a new mail share
+ Given dummy mail server is listening
+ And user "user0" exists
+ And As an "user0"
+ When creating a share with
+ | path | welcome.txt |
+ | shareType | 4 |
+ | shareWith | dumy@test.com |
+ Then the OCS status code should be "100"
+ And the HTTP status code should be "200"
+ And last share can be downloaded
+
+ Scenario: Creating a new mail share with password
+ Given dummy mail server is listening
+ And user "user0" exists
+ And As an "user0"
+ When creating a share with
+ | path | welcome.txt |
+ | shareType | 4 |
+ | shareWith | dumy@test.com |
+ | password | publicpw |
+ Then the OCS status code should be "100"
+ And the HTTP status code should be "200"
+ And last share with password "publicpw" can be downloaded
+
+ Scenario: Creating a new mail share with password when password protection is enforced
+ Given dummy mail server is listening
+ And As an "admin"
+ And parameter "enforcePasswordProtection" of app "sharebymail" is set to "yes"
+ And user "user0" exists
+ And As an "user0"
+ When creating a share with
+ | path | welcome.txt |
+ | shareType | 4 |
+ | shareWith | dumy@test.com |
+ | password | publicpw |
+ Then the OCS status code should be "100"
+ And the HTTP status code should be "200"
+ And last share with password "publicpw" can be downloaded
+
+ Scenario: Creating a new mail share and setting a password
+ Given dummy mail server is listening
+ And user "user0" exists
+ And As an "user0"
+ When creating a share with
+ | path | welcome.txt |
+ | shareType | 4 |
+ | shareWith | dumy@test.com |
+ And Updating last share with
+ | password | publicpw |
+ Then the OCS status code should be "100"
+ And the HTTP status code should be "200"
+ And last share with password "publicpw" can be downloaded
+
+ Scenario: Creating a new mail share and setting a password twice
+ Given dummy mail server is listening
+ And user "user0" exists
+ And As an "user0"
+ When creating a share with
+ | path | welcome.txt |
+ | shareType | 4 |
+ | shareWith | dumy@test.com |
+ And Updating last share with
+ | password | publicpw |
+ And Updating last share with
+ | password | another publicpw |
+ Then the OCS status code should be "100"
+ And the HTTP status code should be "200"
+ And last share with password "another publicpw" can be downloaded
+
+ Scenario: Creating a new mail share and setting the same password twice
+ Given dummy mail server is listening
+ And user "user0" exists
+ And As an "user0"
+ When creating a share with
+ | path | welcome.txt |
+ | shareType | 4 |
+ | shareWith | dumy@test.com |
+ And Updating last share with
+ | password | publicpw |
+ And Updating last share with
+ | password | publicpw |
+ Then the OCS status code should be "100"
+ And the HTTP status code should be "200"
+ And last share with password "publicpw" can be downloaded
+
Scenario: Creating a new public share
Given user "user0" exists
And As an "user0"