Initial QSfera import
This commit is contained in:
+661
@@ -0,0 +1,661 @@
|
||||
@skipOnReva
|
||||
Feature: sharing
|
||||
As a user
|
||||
I want to share resources to others
|
||||
So that they can have access on them
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created with default attributes
|
||||
|
||||
@smokeTest
|
||||
Scenario Outline: creating a share of a file with a user, the default permissions are read(1)+update(2)
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has uploaded file with content "КуСфера test text file 0" to "/textfile0.txt"
|
||||
When user "Alice" shares file "textfile0.txt" with user "Brian" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with user "Brian" should include
|
||||
| share_with | %username% |
|
||||
| share_with_displayname | %displayname% |
|
||||
| share_with_user_type | 0 |
|
||||
| file_target | /Shares/textfile0.txt |
|
||||
| path | /textfile0.txt |
|
||||
| permissions | read,update |
|
||||
| uid_owner | %username% |
|
||||
| displayname_owner | %displayname% |
|
||||
| item_type | file |
|
||||
| mimetype | text/plain |
|
||||
| storage_id | ANY_VALUE |
|
||||
| share_type | user |
|
||||
And the content of file "/Shares/textfile0.txt" for user "Brian" should be "КуСфера test text file 0"
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@smokeTest @issue-2133
|
||||
Scenario Outline: creating a share of a file containing commas in the filename, with a user, the default permissions are read(1)+update(2)+can-share(16)
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has uploaded file with content "file with comma in filename" to "/sample,1.txt"
|
||||
When user "Alice" shares file "sample,1.txt" with user "Brian" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with user "Brian" should include
|
||||
| share_with | %username% |
|
||||
| share_with_displayname | %displayname% |
|
||||
| file_target | /Shares/sample,1.txt |
|
||||
| path | /sample,1.txt |
|
||||
| permissions | read,update |
|
||||
| uid_owner | %username% |
|
||||
| displayname_owner | %displayname% |
|
||||
| item_type | file |
|
||||
| mimetype | text/plain |
|
||||
| storage_id | ANY_VALUE |
|
||||
| share_type | user |
|
||||
And the content of file "/Shares/sample,1.txt" for user "Brian" should be "file with comma in filename"
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@issue-2133 @issue-1270 @issue-1271
|
||||
Scenario Outline: creating a share of a file with a user and asking for various permission combinations
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has uploaded file with content "КуСфера test text file 0" to "/textfile0.txt"
|
||||
When user "Alice" shares file "textfile0.txt" with user "Brian" with permissions <requested-permissions> using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with user "Brian" should include
|
||||
| share_with | %username% |
|
||||
| share_with_displayname | %displayname% |
|
||||
| file_target | /Shares/textfile0.txt |
|
||||
| path | /textfile0.txt |
|
||||
| permissions | <granted-permissions> |
|
||||
| uid_owner | %username% |
|
||||
| displayname_owner | %displayname% |
|
||||
| item_type | file |
|
||||
| mimetype | text/plain |
|
||||
| storage_id | ANY_VALUE |
|
||||
| share_type | user |
|
||||
Examples:
|
||||
| ocs-api-version | requested-permissions | granted-permissions | ocs-status-code |
|
||||
# Ask for full permissions. You get share plus read plus update. create and delete do not apply to shares of a file
|
||||
| 1 | 15 | 3 | 100 |
|
||||
| 2 | 15 | 3 | 200 |
|
||||
# Ask for read, create and delete. You get share plus read
|
||||
| 1 | 13 | 1 | 100 |
|
||||
| 2 | 13 | 1 | 200 |
|
||||
# Ask for read, update, create, delete. You get read plus update.
|
||||
| 1 | 15 | 3 | 100 |
|
||||
| 2 | 15 | 3 | 200 |
|
||||
# Ask for just update. You get exactly update (you do not get read or anything else)
|
||||
| 1 | 2 | 2 | 100 |
|
||||
| 2 | 2 | 2 | 200 |
|
||||
|
||||
|
||||
Scenario Outline: creating a share of a file with no permissions should fail
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has uploaded file with content "Random data" to "randomfile.txt"
|
||||
When user "Alice" shares file "randomfile.txt" with user "Brian" with permissions "0" using the sharing API
|
||||
Then the OCS status code should be "400"
|
||||
And the HTTP status code should be "<http_status_code>"
|
||||
And the sharing API should report that no shares are shared with user "Brian"
|
||||
And as "Brian" file "/Shares/randomfile.txt" should not exist
|
||||
And as "Brian" file "randomfile.txt" should not exist
|
||||
Examples:
|
||||
| ocs-api-version | http_status_code |
|
||||
| 1 | 200 |
|
||||
| 2 | 400 |
|
||||
|
||||
|
||||
Scenario Outline: creating a share of a folder with no permissions should fail
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has created folder "/afolder"
|
||||
When user "Alice" shares folder "afolder" with user "Brian" with permissions "0" using the sharing API
|
||||
Then the OCS status code should be "400"
|
||||
And the HTTP status code should be "<http_status_code>"
|
||||
And the sharing API should report that no shares are shared with user "Brian"
|
||||
And as "Brian" folder "/Shares/afolder" should not exist
|
||||
And as "Brian" folder "afolder" should not exist
|
||||
Examples:
|
||||
| ocs-api-version | http_status_code |
|
||||
| 1 | 200 |
|
||||
| 2 | 400 |
|
||||
|
||||
@issue-2133
|
||||
Scenario Outline: creating a share of a folder with a user, the default permissions are all permissions(15)
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has created folder "/FOLDER"
|
||||
When user "Alice" shares folder "/FOLDER" with user "Brian" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with user "Brian" should include
|
||||
| share_with | %username% |
|
||||
| share_with_displayname | %displayname% |
|
||||
| file_target | /Shares/FOLDER |
|
||||
| path | /FOLDER |
|
||||
| permissions | all |
|
||||
| uid_owner | %username% |
|
||||
| displayname_owner | %displayname% |
|
||||
| item_type | folder |
|
||||
| mimetype | httpd/unix-directory |
|
||||
| storage_id | ANY_VALUE |
|
||||
| share_type | user |
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
|
||||
Scenario Outline: creating a share of a file with a group, the default permissions are read(1)+update(2)
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And group "grp1" has been created
|
||||
And user "Alice" has uploaded file with content "КуСфера test text file 0" to "/textfile0.txt"
|
||||
When user "Alice" shares file "/textfile0.txt" with group "grp1" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with group "grp1" should include
|
||||
| share_with | grp1 |
|
||||
| share_with_displayname | grp1 |
|
||||
| file_target | /Shares/textfile0.txt |
|
||||
| path | /textfile0.txt |
|
||||
| permissions | read,update |
|
||||
| uid_owner | %username% |
|
||||
| displayname_owner | %displayname% |
|
||||
| item_type | file |
|
||||
| mimetype | text/plain |
|
||||
| storage_id | ANY_VALUE |
|
||||
| share_type | group |
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
|
||||
Scenario Outline: creating a share of a folder with a group, the default permissions are all permissions(15)
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And group "grp1" has been created
|
||||
And user "Alice" has created folder "/FOLDER"
|
||||
When user "Alice" shares folder "/FOLDER" with group "grp1" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with user "Brian" should include
|
||||
| share_with | grp1 |
|
||||
| share_with_displayname | grp1 |
|
||||
| file_target | /Shares/FOLDER |
|
||||
| path | /FOLDER |
|
||||
| permissions | all |
|
||||
| uid_owner | %username% |
|
||||
| displayname_owner | %displayname% |
|
||||
| item_type | folder |
|
||||
| mimetype | httpd/unix-directory |
|
||||
| storage_id | ANY_VALUE |
|
||||
| share_type | group |
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@smokeTest
|
||||
Scenario: share of folder to a group
|
||||
Given these users have been created with default attributes:
|
||||
| username |
|
||||
| Brian |
|
||||
| Carol |
|
||||
And group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Carol" has been added to group "grp1"
|
||||
And user "Alice" has created folder "/PARENT"
|
||||
And user "Alice" has uploaded file with content "file in parent folder" to "/PARENT/parent.txt"
|
||||
When user "Alice" shares folder "/PARENT" with group "grp1" using the sharing API
|
||||
And user "Brian" should see the following elements
|
||||
| /Shares/PARENT |
|
||||
| /Shares/PARENT/parent.txt |
|
||||
And user "Carol" should see the following elements
|
||||
| /Shares/PARENT |
|
||||
| /Shares/PARENT/parent.txt |
|
||||
|
||||
@smokeTest @skipOnReva # reva doesn't have a pre-created admin user
|
||||
Scenario: user included in multiple groups receives a share from the admin
|
||||
And group "grp1" has been created
|
||||
And group "grp2" has been created
|
||||
And user "Alice" has been added to group "grp1"
|
||||
And user "Alice" has been added to group "grp2"
|
||||
And admin has created folder "/PARENT"
|
||||
When user "admin" shares folder "/PARENT" with group "grp1" using the sharing API
|
||||
Then user "Alice" should see the following elements
|
||||
| /Shares/PARENT |
|
||||
|
||||
@smokeTest
|
||||
Scenario: user included in multiple groups, shares a folder with a group
|
||||
Given these users have been created with default attributes:
|
||||
| username |
|
||||
| Brian |
|
||||
And group "grp1" has been created
|
||||
And group "grp2" has been created
|
||||
And user "Alice" has been added to group "grp1"
|
||||
And user "Alice" has been added to group "grp2"
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Brian" has been added to group "grp2"
|
||||
And user "Alice" has created folder "/PARENT"
|
||||
When user "Alice" shares folder "/PARENT" with group "grp1" using the sharing API
|
||||
Then user "Brian" should have sync enabled for share "PARENT"
|
||||
And user "Brian" should see the following elements
|
||||
| /Shares/PARENT |
|
||||
|
||||
|
||||
Scenario: sharing again an own file while belonging to a group
|
||||
Given user "Brian" has been created with default attributes
|
||||
And group "grp1" has been created
|
||||
And user "Alice" has been added to group "grp1"
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Brian" has uploaded file with content "КуСфера test text file 0" to "/randomfile.txt"
|
||||
And user "Brian" has sent the following resource share invitation:
|
||||
| resource | randomfile.txt |
|
||||
| space | Personal |
|
||||
| sharee | grp1 |
|
||||
| shareType | group |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Brian" has removed the access of group "grp1" from resource "randomfile.txt" of space "Personal"
|
||||
When user "Brian" shares file "/randomfile.txt" with group "grp1" using the sharing API
|
||||
And as "Alice" file "/Shares/randomfile.txt" should exist
|
||||
|
||||
@issue-2201
|
||||
Scenario Outline: sharing subfolder of already shared folder, GET result is correct
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And these users have been created with default attributes:
|
||||
| username |
|
||||
| Brian |
|
||||
| Carol |
|
||||
| David |
|
||||
| Emily |
|
||||
And user "Alice" has created folder "/folder1"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | folder1 |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | folder1 |
|
||||
| space | Personal |
|
||||
| sharee | Carol |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Alice" has created folder "/folder1/folder2"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | folder1/folder2 |
|
||||
| space | Personal |
|
||||
| sharee | David |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | folder1/folder2 |
|
||||
| space | Personal |
|
||||
| sharee | Emily |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
When user "Alice" sends HTTP method "GET" to OCS API endpoint "/apps/files_sharing/api/v1/shares"
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the response should contain 4 entries
|
||||
And folder "/folder1" should be included as path in the response
|
||||
And folder "/folder1/folder2" should be included as path in the response
|
||||
When user "Alice" sends HTTP method "GET" to OCS API endpoint "/apps/files_sharing/api/v1/shares?path=/folder1/folder2"
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the response should contain 2 entries
|
||||
And folder "/folder1" should not be included as path in the response
|
||||
And folder "/folder1/folder2" should be included as path in the response
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
|
||||
Scenario Outline: user shares a file with file name longer than 64 chars to another user
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has uploaded file with content "КуСфера test text file 0" to "/textfile0.txt"
|
||||
And user "Alice" has moved file "textfile0.txt" to "aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog.txt"
|
||||
When user "Alice" shares file "aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog.txt" with user "Brian" using the sharing API
|
||||
Then as "Brian" file "/Shares/aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog.txt" should exist
|
||||
Examples:
|
||||
| ocs-api-version |
|
||||
| 1 |
|
||||
| 2 |
|
||||
|
||||
|
||||
Scenario Outline: user shares a file with file name longer than 64 chars to a group
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And group "grp1" has been created
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has uploaded file with content "КуСфера test text file 0" to "/textfile0.txt"
|
||||
And user "Alice" has moved file "textfile0.txt" to "aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog.txt"
|
||||
When user "Alice" shares file "aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog.txt" with group "grp1" using the sharing API
|
||||
Then as "Brian" file "/Shares/aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog.txt" should exist
|
||||
Examples:
|
||||
| ocs-api-version |
|
||||
| 1 |
|
||||
| 2 |
|
||||
|
||||
|
||||
Scenario Outline: user shares a folder with folder name longer than 64 chars to another user
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has uploaded file with content "КуСфера test" to "/textfile0.txt"
|
||||
And user "Alice" has created folder "/aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog"
|
||||
And user "Alice" has moved file "textfile0.txt" to "aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog/textfile0.txt"
|
||||
When user "Alice" shares folder "/aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog" with user "Brian" using the sharing API
|
||||
Then the content of file "/Shares/aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog/textfile0.txt" for user "Brian" should be "КуСфера test"
|
||||
Examples:
|
||||
| ocs-api-version |
|
||||
| 1 |
|
||||
| 2 |
|
||||
|
||||
|
||||
Scenario Outline: user shares a folder with folder name longer than 64 chars to a group
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And group "grp1" has been created
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has uploaded file with content "КуСфера test" to "/textfile0.txt"
|
||||
And user "Alice" has created folder "/aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog"
|
||||
And user "Alice" has moved file "textfile0.txt" to "aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog/textfile0.txt"
|
||||
When user "Alice" shares folder "/aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog" with group "grp1" using the sharing API
|
||||
Then the content of file "/Shares/aquickbrownfoxjumpsoveraverylazydogaquickbrownfoxjumpsoveralazydog/textfile0.txt" for user "Brian" should be "КуСфера test"
|
||||
Examples:
|
||||
| ocs-api-version |
|
||||
| 1 |
|
||||
| 2 |
|
||||
|
||||
|
||||
Scenario: share with user when username contains capital letters
|
||||
Given these users have been created with default attributes:
|
||||
| username |
|
||||
| brian |
|
||||
And user "Alice" has uploaded file with content "Random data" to "/randomfile.txt"
|
||||
When user "Alice" shares file "/randomfile.txt" with user "BRIAN" using the sharing API
|
||||
Then the OCS status code should be "100"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with user "BRIAN" should include
|
||||
| share_with | brian |
|
||||
| file_target | /Shares/randomfile.txt |
|
||||
| path | /randomfile.txt |
|
||||
| permissions | read,update |
|
||||
| uid_owner | %username% |
|
||||
And user "brian" should see the following elements
|
||||
| /Shares/randomfile.txt |
|
||||
And the content of file "Shares/randomfile.txt" for user "brian" should be "Random data"
|
||||
|
||||
|
||||
Scenario: creating a new share with user of a group when group name contains capital letters
|
||||
Given these users have been created with default attributes:
|
||||
| username |
|
||||
| Brian |
|
||||
And group "GROUP" has been created
|
||||
And user "Brian" has been added to group "GROUP"
|
||||
And user "Alice" has uploaded file with content "Random data" to "/randomfile.txt"
|
||||
When user "Alice" shares file "randomfile.txt" with group "GROUP" using the sharing API
|
||||
Then the OCS status code should be "100"
|
||||
And the HTTP status code should be "200"
|
||||
And user "Brian" should see the following elements
|
||||
| /Shares/randomfile.txt |
|
||||
And the content of file "/Shares/randomfile.txt" for user "Brian" should be "Random data"
|
||||
|
||||
|
||||
Scenario Outline: share of folder to a group with emoji in the name
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And these users have been created with default attributes:
|
||||
| username |
|
||||
| Brian |
|
||||
| Carol |
|
||||
And group "😀 😁" has been created
|
||||
And user "Brian" has been added to group "😀 😁"
|
||||
And user "Carol" has been added to group "😀 😁"
|
||||
And user "Alice" has created folder "/PARENT"
|
||||
And user "Alice" has uploaded file with content "file in parent folder" to "/PARENT/parent.txt"
|
||||
When user "Alice" shares folder "/PARENT" with group "😀 😁" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And user "Brian" should see the following elements
|
||||
| /Shares/PARENT |
|
||||
| /Shares/PARENT/parent.txt |
|
||||
And user "Carol" should see the following elements
|
||||
| /Shares/PARENT |
|
||||
| /Shares/PARENT/parent.txt |
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@skipOnReva
|
||||
Scenario Outline: share with a group and then add a user to that group
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And these users have been created with default attributes:
|
||||
| username |
|
||||
| Brian |
|
||||
| Carol |
|
||||
And these groups have been created:
|
||||
| groupname |
|
||||
| grp1 |
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has uploaded file with content "some content" to "lorem.txt"
|
||||
When user "Alice" shares file "lorem.txt" with group "grp1" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the content of file "/Shares/lorem.txt" for user "Brian" should be "some content"
|
||||
When the administrator adds user "Carol" to group "grp1" using the provisioning API
|
||||
And user "Carol" should not see the following elements
|
||||
| /Shares/lorem.txt |
|
||||
And the sharing API should report to user "Carol" that these shares are in the pending state
|
||||
| path |
|
||||
| /lorem.txt |
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
# deleting an LDAP group is not relevant or possible using the provisioning API
|
||||
@issue-2441
|
||||
Scenario Outline: shares shared to deleted group should not be available
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And these users have been created with default attributes:
|
||||
| username |
|
||||
| Brian |
|
||||
| Carol |
|
||||
And group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Carol" has been added to group "grp1"
|
||||
And user "Alice" has uploaded file with content "КуСфера test text file 0" to "/textfile0.txt"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | grp1 |
|
||||
| shareType | group |
|
||||
| permissionsRole | File Editor |
|
||||
And user "Brian" has a share "textfile0.txt" synced
|
||||
And user "Carol" has a share "textfile0.txt" synced
|
||||
When user "Alice" sends HTTP method "GET" to OCS API endpoint "/apps/files_sharing/api/v1/shares"
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with group "grp1" should include
|
||||
| share_with | grp1 |
|
||||
| file_target | /Shares/textfile0.txt |
|
||||
| path | /textfile0.txt |
|
||||
| uid_owner | %username% |
|
||||
And as "Brian" file "/Shares/textfile0.txt" should exist
|
||||
And as "Carol" file "/Shares/textfile0.txt" should exist
|
||||
When the administrator deletes group "grp1" using the Graph API
|
||||
And user "Alice" sends HTTP method "GET" to OCS API endpoint "/apps/files_sharing/api/v1/shares"
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And as "Brian" file "/Shares/textfile0.txt" should not exist
|
||||
And as "Carol" file "/Shares/textfile0.txt" should not exist
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@issue-764 @issue-7555
|
||||
Scenario Outline: share a file by multiple channels and download from sub-folder and direct file share
|
||||
Given using <dav-path-version> DAV path
|
||||
And these users have been created with default attributes:
|
||||
| username |
|
||||
| Brian |
|
||||
| Carol |
|
||||
And group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Carol" has been added to group "grp1"
|
||||
And user "Alice" has created folder "/common"
|
||||
And user "Alice" has created folder "/common/sub"
|
||||
And user "Alice" has uploaded file with content "КуСфера" to "/textfile0.txt"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | common |
|
||||
| space | Personal |
|
||||
| sharee | grp1 |
|
||||
| shareType | group |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Brian" has a share "common" synced
|
||||
And user "Carol" has a share "common" synced
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | Carol |
|
||||
| shareType | user |
|
||||
| permissionsRole | File Editor |
|
||||
And user "Carol" has a share "textfile0.txt" synced
|
||||
And user "Alice" has moved file "/textfile0.txt" to "/common/textfile0.txt"
|
||||
And user "Alice" has moved file "/common/textfile0.txt" to "/common/sub/textfile0.txt"
|
||||
When user "Carol" uploads file "filesForUpload/file_to_overwrite.txt" to "/Shares/textfile0.txt" using the WebDAV API
|
||||
Then the HTTP status code should be "204"
|
||||
And the content of file "/Shares/common/sub/textfile0.txt" for user "Carol" should be "BLABLABLA" plus end-of-line
|
||||
And the content of file "/Shares/textfile0.txt" for user "Carol" should be "BLABLABLA" plus end-of-line
|
||||
And user "Carol" should see the following elements
|
||||
| /Shares/common/sub/textfile0.txt |
|
||||
| /Shares/textfile0.txt |
|
||||
And the content of file "/Shares/common/sub/textfile0.txt" for user "Brian" should be "BLABLABLA" plus end-of-line
|
||||
And the content of file "/common/sub/textfile0.txt" for user "Alice" should be "BLABLABLA" plus end-of-line
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| old |
|
||||
| new |
|
||||
|
||||
@smokeTest
|
||||
Scenario Outline: creating a share of a renamed file
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has uploaded file with content "КуСфера test text file 0" to "/textfile0.txt"
|
||||
And user "Alice" has moved file "/textfile0.txt" to "/renamed.txt"
|
||||
When user "Alice" shares file "renamed.txt" with user "Brian" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with user "Brian" should include
|
||||
| share_with | %username% |
|
||||
| share_with_displayname | %displayname% |
|
||||
| file_target | /Shares/renamed.txt |
|
||||
| path | /renamed.txt |
|
||||
| permissions | read,update |
|
||||
| uid_owner | %username% |
|
||||
| displayname_owner | %displayname% |
|
||||
| item_type | file |
|
||||
| mimetype | text/plain |
|
||||
| storage_id | ANY_VALUE |
|
||||
| share_type | user |
|
||||
And the content of file "/Shares/renamed.txt" for user "Brian" should be "КуСфера test text file 0"
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@issue-903
|
||||
Scenario Outline: shares to a deleted user should not be listed as shares for the sharer
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And these users have been created with default attributes:
|
||||
| username |
|
||||
| Brian |
|
||||
| Carol |
|
||||
And user "Alice" has uploaded file with content "КуСфера test text file 0" to "/textfile0.txt"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | Carol |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Brian" has been deleted
|
||||
When user "Alice" gets all the shares of the file "textfile0.txt" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And user "Carol" should be included in the response
|
||||
But user "Brian" should not be included in the response
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@issue-719
|
||||
Scenario Outline: creating a share of a renamed file when another share exists
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Brian" has been created with default attributes
|
||||
And user "Alice" has created folder "/Folder1"
|
||||
And user "Alice" has created folder "/Folder2"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | Folder1 |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Alice" has moved file "/Folder2" to "/renamedFolder2"
|
||||
When user "Alice" shares folder "/renamedFolder2" with user "Brian" using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the fields of the last response to user "Alice" sharing with user "Brian" should include
|
||||
| share_with | %username% |
|
||||
| share_with_displayname | %displayname% |
|
||||
| file_target | /Shares/renamedFolder2 |
|
||||
| path | /renamedFolder2 |
|
||||
| permissions | all |
|
||||
| uid_owner | %username% |
|
||||
| displayname_owner | %displayname% |
|
||||
| item_type | folder |
|
||||
| mimetype | httpd/unix-directory |
|
||||
| storage_id | ANY_VALUE |
|
||||
| share_type | user |
|
||||
And as "Brian" folder "/Shares/renamedFolder2" should exist
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@issue-1710
|
||||
Scenario Outline: sharing a same file twice to the same group is not possible
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And group "grp1" has been created
|
||||
And user "Alice" has uploaded file with content "КуСфера test text file 0" to "/textfile0.txt"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | grp1 |
|
||||
| shareType | group |
|
||||
| permissionsRole | File Editor |
|
||||
When user "Alice" shares file "textfile0.txt" with group "grp1" using the sharing API
|
||||
Then the HTTP status code should be "<http-status>"
|
||||
And the OCS status code should be "104"
|
||||
And the OCS status message should be "A share for the recipient already exists"
|
||||
Examples:
|
||||
| ocs-api-version | http-status |
|
||||
| 1 | 200 |
|
||||
| 2 | 403 |
|
||||
+341
@@ -0,0 +1,341 @@
|
||||
@skipOnReva @issue-1328 @issue-1289
|
||||
Feature: sharing
|
||||
As a user
|
||||
I want to delete shares
|
||||
So that I don't have redundant shares
|
||||
|
||||
Background:
|
||||
Given these users have been created with default attributes:
|
||||
| username |
|
||||
| Alice |
|
||||
| Brian |
|
||||
And user "Alice" has uploaded file with content "example test text file 0" to "/textfile0.txt"
|
||||
|
||||
@issue-7555
|
||||
Scenario Outline: delete all group shares
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And using SharingNG
|
||||
And group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | grp1 |
|
||||
| shareType | group |
|
||||
| permissionsRole | File Editor |
|
||||
And user "Brian" has a share "textfile0.txt" synced
|
||||
And user "Brian" has moved file "/Shares/textfile0.txt" to "/Shares/anotherName.txt"
|
||||
When user "Alice" deletes the last share using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And user "Brian" should not see the share id of the last share
|
||||
And as "Brian" file "/Shares/textfile0.txt" should not exist
|
||||
And as "Brian" file "/Shares/anotherName.txt" should not exist
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@smokeTest
|
||||
Scenario Outline: delete a share
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And using SharingNG
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
When user "Alice" deletes the last share using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And the last share id should not be included in the response
|
||||
And as "Brian" file "/Shares/textfile0.txt" should not exist
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
|
||||
Scenario Outline: orphaned shares
|
||||
Given using <dav-path-version> DAV path
|
||||
And using OCS API version "1"
|
||||
And user "Alice" has created folder "/common"
|
||||
And user "Alice" has created folder "/common/sub"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | /common/sub |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
When user "Alice" deletes folder "/common" using the WebDAV API
|
||||
Then the HTTP status code should be "204"
|
||||
And as "Brian" folder "/Shares/sub" should not exist
|
||||
And as "Brian" folder "/sub" should not exist
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| old |
|
||||
| new |
|
||||
| spaces |
|
||||
|
||||
@smokeTest
|
||||
Scenario Outline: deleting a file out of a share as recipient creates a backup for the owner
|
||||
Given using <dav-path-version> DAV path
|
||||
And using OCS API version "1"
|
||||
And user "Alice" has created folder "/shared"
|
||||
And user "Alice" has moved file "/textfile0.txt" to "/shared/shared_file.txt"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | shared |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Editor |
|
||||
And user "Brian" has a share "shared" synced
|
||||
When user "Brian" deletes file "/Shares/shared/shared_file.txt" using the WebDAV API
|
||||
Then the HTTP status code should be "204"
|
||||
And as "Brian" file "/Shares/shared/shared_file.txt" should not exist
|
||||
And as "Alice" file "/shared/shared_file.txt" should not exist
|
||||
And as "Alice" file "/shared_file.txt" should exist in the trashbin
|
||||
And as "Brian" the file with original path "/shared_file.txt" should not exist in the trashbin
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| old |
|
||||
| new |
|
||||
| spaces |
|
||||
|
||||
|
||||
Scenario Outline: deleting a folder out of a share as recipient creates a backup for the owner
|
||||
Given using <dav-path-version> DAV path
|
||||
And using OCS API version "1"
|
||||
And user "Alice" has created folder "/shared"
|
||||
And user "Alice" has created folder "/shared/sub"
|
||||
And user "Alice" has moved file "/textfile0.txt" to "/shared/sub/shared_file.txt"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | shared |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Editor |
|
||||
And user "Brian" has a share "shared" synced
|
||||
When user "Brian" deletes folder "/Shares/shared/sub" using the WebDAV API
|
||||
Then the HTTP status code should be "204"
|
||||
And as "Brian" folder "/Shares/shared/sub" should not exist
|
||||
And as "Alice" folder "/shared/sub" should not exist
|
||||
And as "Alice" folder "/sub" should exist in the trashbin
|
||||
And as "Alice" file "/sub/shared_file.txt" should exist in the trashbin
|
||||
And as "Brian" the folder with original path "/sub" should not exist in the trashbin
|
||||
And as "Brian" the file with original path "/sub/shared_file.txt" should not exist in the trashbin
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| old |
|
||||
| new |
|
||||
| spaces |
|
||||
|
||||
@smokeTest
|
||||
Scenario: unshare from self
|
||||
And group "grp1" has been created
|
||||
And these users have been created with default attributes:
|
||||
| username |
|
||||
| Carol |
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Carol" has been added to group "grp1"
|
||||
And user "Carol" has created folder "PARENT"
|
||||
And user "Carol" has uploaded file "filesForUpload/textfile.txt" to "PARENT/parent.txt"
|
||||
And user "Carol" has sent the following resource share invitation:
|
||||
| resource | /PARENT/parent.txt |
|
||||
| space | Personal |
|
||||
| sharee | grp1 |
|
||||
| shareType | group |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Carol" has stored etag of element "/PARENT"
|
||||
And user "Brian" has stored etag of element "/"
|
||||
And user "Brian" has stored etag of element "/Shares"
|
||||
When user "Brian" declines share "/Shares/parent.txt" offered by user "Carol" using the sharing API
|
||||
Then the HTTP status code should be "200"
|
||||
And the etag of element "/" of user "Brian" should have changed
|
||||
And the etag of element "/Shares" of user "Brian" should have changed
|
||||
And the etag of element "/PARENT" of user "Carol" should not have changed
|
||||
|
||||
|
||||
Scenario Outline: sharee of a read-only share folder tries to delete the shared folder
|
||||
Given using <dav-path-version> DAV path
|
||||
And using OCS API version "1"
|
||||
And user "Alice" has created folder "/shared"
|
||||
And user "Alice" has moved file "/textfile0.txt" to "/shared/shared_file.txt"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | shared |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Brian" has a share "shared" synced
|
||||
When user "Brian" deletes file "/Shares/shared/shared_file.txt" using the WebDAV API
|
||||
Then the HTTP status code should be "403"
|
||||
And as "Alice" file "/shared/shared_file.txt" should exist
|
||||
And as "Brian" file "/Shares/shared/shared_file.txt" should exist
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| old |
|
||||
| new |
|
||||
| spaces |
|
||||
|
||||
|
||||
Scenario Outline: sharee of a upload-only shared folder tries to delete a file in the shared folder
|
||||
Given using <dav-path-version> DAV path
|
||||
And using OCS API version "1"
|
||||
And user "Alice" has created folder "/shared"
|
||||
And user "Alice" has moved file "/textfile0.txt" to "/shared/shared_file.txt"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | shared |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Uploader |
|
||||
And user "Brian" has a share "shared" synced
|
||||
When user "Brian" deletes file "/Shares/shared/shared_file.txt" using the WebDAV API
|
||||
Then the HTTP status code should be "403"
|
||||
And as "Alice" file "/shared/shared_file.txt" should exist
|
||||
And as "Brian" file "/Shares/shared/shared_file.txt" should exist
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| old |
|
||||
| new |
|
||||
| spaces |
|
||||
|
||||
|
||||
Scenario Outline: sharee of an upload-only shared folder tries to delete their file in the folder
|
||||
Given using <dav-path-version> DAV path
|
||||
And using OCS API version "1"
|
||||
And user "Alice" has created folder "/shared"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | shared |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | Uploader |
|
||||
And user "Brian" has a share "shared" synced
|
||||
And user "Brian" has uploaded file "filesForUpload/textfile.txt" to "/Shares/shared/textfile.txt"
|
||||
When user "Brian" deletes file "/Shares/shared/textfile.txt" using the WebDAV API
|
||||
Then the HTTP status code should be "403"
|
||||
And as "Alice" file "/shared/textfile.txt" should exist
|
||||
And as "Brian" file "/Shares/shared/textfile.txt" should exist
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| old |
|
||||
| new |
|
||||
| spaces |
|
||||
|
||||
|
||||
Scenario Outline: group share recipient tries to delete the share
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And group "grp1" has been created
|
||||
And these users have been created with default attributes:
|
||||
| username |
|
||||
| Carol |
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Carol" has been added to group "grp1"
|
||||
And user "Alice" has created folder "/shared"
|
||||
And user "Alice" has moved file "/textfile0.txt" to "/shared/shared_file.txt"
|
||||
And using SharingNG
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | <entry-to-share> |
|
||||
| space | Personal |
|
||||
| sharee | grp1 |
|
||||
| shareType | group |
|
||||
| permissionsRole | <permission-role> |
|
||||
And user "Brian" has a share "<sync-entry>" synced
|
||||
When user "Brian" deletes the last share of user "Alice" using the sharing API
|
||||
Then the OCS status code should be "996"
|
||||
And the HTTP status code should be "<http-status-code>"
|
||||
And as "Alice" entry "<entry-to-share>" should exist
|
||||
And as "Brian" entry "<received-entry>" should exist
|
||||
And as "Carol" entry "<received-entry>" should exist
|
||||
Examples:
|
||||
| entry-to-share | permission-role | ocs-api-version | http-status-code | received-entry | sync-entry |
|
||||
| /shared/shared_file.txt | File Editor | 1 | 200 | /Shares/shared_file.txt | shared_file.txt |
|
||||
| /shared/shared_file.txt | File Editor | 2 | 500 | /Shares/shared_file.txt | shared_file.txt |
|
||||
| /shared | Editor | 1 | 200 | /Shares/shared | shared |
|
||||
| /shared | Editor | 2 | 500 | /Shares/shared | shared |
|
||||
|
||||
|
||||
Scenario Outline: individual share recipient tries to delete the share
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And using SharingNG
|
||||
And user "Alice" has created folder "/shared"
|
||||
And user "Alice" has moved file "/textfile0.txt" to "/shared/shared_file.txt"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | <entry-to-share> |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | <permission-role> |
|
||||
And user "Brian" has a share "<sync-entry>" synced
|
||||
When user "Brian" deletes the last share of user "Alice" using the sharing API
|
||||
Then the OCS status code should be "996"
|
||||
And the HTTP status code should be "<http-status-code>"
|
||||
And as "Alice" entry "<entry-to-share>" should exist
|
||||
And as "Brian" entry "<received-entry>" should exist
|
||||
Examples:
|
||||
| entry-to-share | permission-role | ocs-api-version | http-status-code | received-entry | sync-entry |
|
||||
| /shared/shared_file.txt | File Editor | 1 | 200 | /Shares/shared_file.txt | shared_file.txt |
|
||||
| /shared/shared_file.txt | File Editor | 2 | 500 | /Shares/shared_file.txt | shared_file.txt |
|
||||
| /shared | Editor | 1 | 200 | /Shares/shared | shared |
|
||||
| /shared | Editor | 2 | 500 | /Shares/shared | shared |
|
||||
|
||||
@issue-720
|
||||
Scenario Outline: request PROPFIND after sharer deletes the collaborator
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And using SharingNG
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | File Editor |
|
||||
And user "Brian" has a share "textfile0.txt" synced
|
||||
When user "Alice" deletes the last share using the sharing API
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
When user "Brian" requests "/dav/files/%username%" with "PROPFIND" using basic auth
|
||||
Then the HTTP status code should be "207"
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
|
||||
@issue-1229
|
||||
Scenario Outline: delete a share with wrong authentication
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And using SharingNG
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | File Editor |
|
||||
And user "Brian" has a share "textfile0.txt" synced
|
||||
When user "Brian" tries to delete the last share of user "Alice" using the sharing API
|
||||
Then the HTTP status code should be "<http-status-code>"
|
||||
And the OCS status code should be "996"
|
||||
Examples:
|
||||
| ocs-api-version | http-status-code |
|
||||
| 1 | 200 |
|
||||
| 2 | 500 |
|
||||
|
||||
|
||||
Scenario Outline: unshare a shared resources
|
||||
Given using OCS API version "<ocs-api-version>"
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | textfile0.txt |
|
||||
| space | Personal |
|
||||
| sharee | Brian |
|
||||
| shareType | user |
|
||||
| permissionsRole | File Editor |
|
||||
When user "Alice" unshares file "textfile0.txt" shared to "Brian"
|
||||
Then the OCS status code should be "<ocs-status-code>"
|
||||
And the HTTP status code should be "200"
|
||||
And as "Brian" file "/Shares/textfile0.txt" should not exist
|
||||
Examples:
|
||||
| ocs-api-version | ocs-status-code |
|
||||
| 1 | 100 |
|
||||
| 2 | 200 |
|
||||
Reference in New Issue
Block a user