diff --git a/tests/acceptance/expected-failures-API-on-OCIS-storage.md b/tests/acceptance/expected-failures-API-on-OCIS-storage.md index c508636675b..83e3ef6adc6 100644 --- a/tests/acceptance/expected-failures-API-on-OCIS-storage.md +++ b/tests/acceptance/expected-failures-API-on-OCIS-storage.md @@ -62,7 +62,6 @@ Synchronization features like etag propagation, setting mtime and locking files - [coreApiTrashbin/trashbinSharingToShares.feature:144](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiTrashbin/trashbinSharingToShares.feature#L144) - [coreApiTrashbin/trashbinSharingToShares.feature:202](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiTrashbin/trashbinSharingToShares.feature#L202) - [coreApiTrashbin/trashbinSharingToShares.feature:203](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiTrashbin/trashbinSharingToShares.feature#L203) -- [coreApiTrashbin/trashbinSharingToShares.feature:204](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiTrashbin/trashbinSharingToShares.feature#L204) ### Other @@ -154,7 +153,7 @@ _ocdav: api compatibility, return correct status code_ #### [Trying to delete other user's trashbin item returns 409 for spaces path instead of 404](https://github.com/owncloud/ocis/issues/9791) -- [coreApiTrashbin/trashbinDelete.feature:97](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiTrashbin/trashbinDelete.feature#L97) +- [coreApiTrashbin/trashbinDelete.feature:92](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiTrashbin/trashbinDelete.feature#L92) #### [MOVE a file into same folder with same name returns 404 instead of 403](https://github.com/owncloud/ocis/issues/1976) diff --git a/tests/acceptance/expected-failures-without-remotephp.md b/tests/acceptance/expected-failures-without-remotephp.md index 7d982527ceb..fdf76e27e42 100644 --- a/tests/acceptance/expected-failures-without-remotephp.md +++ b/tests/acceptance/expected-failures-without-remotephp.md @@ -197,8 +197,7 @@ - [apiSpaces/publicLink.feature:40](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpaces/publicLink.feature#L40) - [apiSpacesShares/shareSpacesViaLink.feature:61](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/shareSpacesViaLink.feature#L61) - [apiDepthInfinity/propfind.feature:74](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiDepthInfinity/propfind.feature#L74) -- [apiDepthInfinity/propfind.feature:140](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiDepthInfinity/propfind.feature#L140) -- [apiDepthInfinity/propfind.feature:141](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiDepthInfinity/propfind.feature#L141) +- [apiDepthInfinity/propfind.feature:124](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiDepthInfinity/propfind.feature#L124) - [apiLocks/lockFiles.feature:490](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L490) - [apiLocks/lockFiles.feature:487](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L487) - [apiLocks/lockFiles.feature:488](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L488) diff --git a/tests/acceptance/features/apiAntivirus/antivirus.feature b/tests/acceptance/features/apiAntivirus/antivirus.feature index d6a552b2597..8e4f8de483c 100644 --- a/tests/acceptance/features/apiAntivirus/antivirus.feature +++ b/tests/acceptance/features/apiAntivirus/antivirus.feature @@ -169,8 +169,6 @@ Feature: antivirus | old | eicar_com.zip | virusFile2.zip | | new | eicar.com | virusFile1.txt | | new | eicar_com.zip | virusFile2.zip | - | spaces | eicar.com | virusFile1.txt | - | spaces | eicar_com.zip | virusFile2.zip | Scenario Outline: upload a file with virus to a user share using spaces dav endpoint @@ -223,8 +221,6 @@ Feature: antivirus | old | eicar_com.zip | virusFile2.zip | | new | eicar.com | virusFile1.txt | | new | eicar_com.zip | virusFile2.zip | - | spaces | eicar.com | virusFile1.txt | - | spaces | eicar_com.zip | virusFile2.zip | Scenario Outline: upload a file with virus to a group share using spaces dav endpoint @@ -433,7 +429,6 @@ Feature: antivirus | dav-path-version | | old | | new | - | spaces | Scenario: try to overwrite a file with the virus content in group share using spaces dav endpoint @@ -497,7 +492,6 @@ Feature: antivirus | dav-path-version | | old | | new | - | spaces | Scenario: try to overwrite a file with the virus content in user share using spaces dav endpoint diff --git a/tests/acceptance/features/apiDepthInfinity/propfind.feature b/tests/acceptance/features/apiDepthInfinity/propfind.feature index 3ffd5828a15..8b600f65a26 100644 --- a/tests/acceptance/features/apiDepthInfinity/propfind.feature +++ b/tests/acceptance/features/apiDepthInfinity/propfind.feature @@ -117,17 +117,15 @@ Feature: PROPFIND with depth:infinity | simple-folder/simple-folder1/simple-folder2/welcome.txt | Examples: | dav-path-version | - | old | | new | | spaces | @issue-10331 - Scenario Outline: get the list of resources in a folder shared through public link with depth infinity when depth infinity is not allowed + Scenario: get the list of resources in a folder shared through public link with depth infinity when depth infinity is not allowed Given the following configs have been set: | config | value | | OCDAV_ALLOW_PROPFIND_DEPTH_INFINITY | false | | OCIS_SHARING_PUBLIC_SHARE_MUST_HAVE_PASSWORD | false | - And using DAV path And using SharingNG And user "Alice" has created the following resource link share: | resource | simple-folder | @@ -135,10 +133,6 @@ Feature: PROPFIND with depth:infinity | permissionsRole | view | When the public lists the resources in the last created public link with depth "infinity" using the WebDAV API Then the HTTP status code should be "400" - Examples: - | dav-path-version | - | new | - | spaces | Scenario Outline: get the list of files in the trashbin with depth infinity when depth infinity is not allowed @@ -153,6 +147,5 @@ Feature: PROPFIND with depth:infinity Then the HTTP status code should be "400" Examples: | dav-path-version | - | old | | new | | spaces | diff --git a/tests/acceptance/features/apiSharingNg1/listPermissions.feature b/tests/acceptance/features/apiSharingNg1/listPermissions.feature index a1ecc27edc1..5b5c3dd881f 100644 --- a/tests/acceptance/features/apiSharingNg1/listPermissions.feature +++ b/tests/acceptance/features/apiSharingNg1/listPermissions.feature @@ -167,7 +167,8 @@ Feature: List a sharing permissions Scenario: user lists permissions of a project space - Given user "Brian" has been created with default attributes and without skeleton files + Given using spaces DAV path + And user "Brian" has been created with default attributes and without skeleton files And the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API And user "Alice" has created a space "new-space" with the default quota using the Graph API When user "Alice" lists the permissions of space "new-space" using permissions endpoint of the Graph API @@ -289,7 +290,8 @@ Feature: List a sharing permissions @issues-8352 Scenario Outline: sharer lists permissions of a shared project space - Given user "Brian" has been created with default attributes and without skeleton files + Given using spaces DAV path + And user "Brian" has been created with default attributes and without skeleton files And the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API And user "Alice" has created a space "new-space" with the default quota using the Graph API And user "Alice" has sent the following space share invitation: @@ -1040,7 +1042,8 @@ Feature: List a sharing permissions Scenario: try to lists the permissions of a Personal drive using root endpoint - Given the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API + Given using spaces DAV path + And the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API And user "Alice" has created a space "new-space" with the default quota using the Graph API When user "Alice" tries to list the permissions of space "Personal" using root endpoint of the Graph API Then the HTTP status code should be "200" @@ -1161,7 +1164,8 @@ Feature: List a sharing permissions Scenario: try to lists the permissions of a Shares drive using root endpoint - Given the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API + Given using spaces DAV path + And the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API And user "Alice" has created a space "new-space" with the default quota using the Graph API When user "Alice" tries to list the permissions of space "Shares" using root endpoint of the Graph API Then the HTTP status code should be "200" @@ -1184,7 +1188,8 @@ Feature: List a sharing permissions Scenario: space admin invites to a project space with all allowed roles - Given the administrator has assigned the role "Admin" to user "Alice" using the Graph API + Given using spaces DAV path + And the administrator has assigned the role "Admin" to user "Alice" using the Graph API And user "Alice" has created a space "new-space" with the default quota using the Graph API And user "Brian" has been created with default attributes and without skeleton files When user "Alice" lists the permissions of space "new-space" using permissions endpoint of the Graph API @@ -1211,7 +1216,8 @@ Feature: List a sharing permissions Scenario: non-member user tries to list the permissions of a project space using permissions endpoint - Given the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API + Given using spaces DAV path + And the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API And user "Brian" has been created with default attributes and without skeleton files And user "Alice" has created a space "new-space" with the default quota using the Graph API When user "Brian" tries to list the permissions of space "new-space" owned by "Alice" using permissions endpoint of the Graph API @@ -1267,7 +1273,8 @@ Feature: List a sharing permissions Scenario: try to list the permissions of other user's personal space - Given user "Brian" has been created with default attributes and without skeleton files + Given using spaces DAV path + And user "Brian" has been created with default attributes and without skeleton files When user "Brian" tries to list the permissions of space "Personal" owned by "Alice" using permissions endpoint of the Graph API Then the HTTP status code should be "404" And the JSON data of the response should match @@ -1306,7 +1313,8 @@ Feature: List a sharing permissions Scenario Outline: sharer lists permissions of a shared project space using root endpoint - Given user "Brian" has been created with default attributes and without skeleton files + Given using spaces DAV path + And user "Brian" has been created with default attributes and without skeleton files And the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API And user "Alice" has created a space "new-space" with the default quota using the Graph API And user "Alice" has sent the following space share invitation: @@ -1582,7 +1590,8 @@ Feature: List a sharing permissions Scenario: user sends share invitation with all allowed roles for a project space using root endpoint - Given the administrator has assigned the role "Admin" to user "Alice" using the Graph API + Given using spaces DAV path + And the administrator has assigned the role "Admin" to user "Alice" using the Graph API And user "Alice" has created a space "new-space" with the default quota using the Graph API And user "Brian" has been created with default attributes and without skeleton files When user "Alice" lists the permissions of space "new-space" using root endpoint of the Graph API @@ -1594,7 +1603,8 @@ Feature: List a sharing permissions @issue-9151 Scenario: non-member user tries to list the permissions of a project space using root endpoint - Given the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API + Given using spaces DAV path + And the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API And user "Brian" has been created with default attributes and without skeleton files And user "Alice" has created a space "new-space" with the default quota using the Graph API When user "Brian" tries to list the permissions of space "new-space" owned by "Alice" using root endpoint of the Graph API diff --git a/tests/acceptance/features/coreApiShareManagementToShares/mergeShare.feature b/tests/acceptance/features/coreApiShareManagementToShares/mergeShare.feature index 513d6f9616a..d18dd40f399 100644 --- a/tests/acceptance/features/coreApiShareManagementToShares/mergeShare.feature +++ b/tests/acceptance/features/coreApiShareManagementToShares/mergeShare.feature @@ -109,8 +109,7 @@ Feature: sharing And as "Brian" folder "/Shares/merge-test-inside-twogroups-perms (2)" should not exist - Scenario Outline: merging shares for recipient when shared from outside with group then user and recipient renames in between - Given using DAV path + Scenario: merging shares for recipient when shared from outside with group then user and recipient renames in between And user "Alice" has created folder "/merge-test-outside-groups-renamebeforesecondshare" # Section 1: Brian receives and accepts the group share from Alice and moves and renames it out of the "Shares" folder When user "Alice" shares folder "/merge-test-outside-groups-renamebeforesecondshare" with group "grp1" using the sharing API @@ -127,15 +126,9 @@ Feature: sharing And the HTTP status code of responses on all endpoints should be "200" And as "Brian" folder "/Shares/merge-test-outside-groups-renamebeforesecondshare" should exist But as "Brian" folder "/merge-test-outside-groups-renamebeforesecondshare-renamed" should not exist - Examples: - | dav-path-version | - | old | - | new | - | spaces | - Scenario Outline: merging shares for recipient when shared from outside with user then group and recipient renames in between - Given using DAV path + Scenario: merging shares for recipient when shared from outside with user then group and recipient renames in between And user "Alice" has created folder "/merge-test-outside-groups-renamebeforesecondshare" # Section 1: Brian receives and accepts the user share from Alice and moves and renames it out of the "Shares" folder When user "Alice" shares folder "/merge-test-outside-groups-renamebeforesecondshare" with user "Brian" using the sharing API @@ -153,8 +146,3 @@ Feature: sharing And the HTTP status code of responses on all endpoints should be "200" And as "Brian" folder "/Shares/merge-test-outside-groups-renamebeforesecondshare" should exist But as "Brian" folder "/merge-test-outside-groups-renamebeforesecondshare-renamed" should not exist - Examples: - | dav-path-version | - | old | - | new | - | spaces | diff --git a/tests/acceptance/features/coreApiSharePublicLink1/accessToPublicLinkShare.feature b/tests/acceptance/features/coreApiSharePublicLink1/accessToPublicLinkShare.feature index 23219c86ae6..fb08fad9c36 100644 --- a/tests/acceptance/features/coreApiSharePublicLink1/accessToPublicLinkShare.feature +++ b/tests/acceptance/features/coreApiSharePublicLink1/accessToPublicLinkShare.feature @@ -68,9 +68,8 @@ Feature: accessing a public link share Then the HTTP status code of responses on all endpoints should be "200" @issue-web-10473 - Scenario Outline: user tries to download public link file using own basic auth - Given using DAV path - And user "Alice" has created folder "FOLDER" + Scenario: user tries to download public link file using own basic auth + Given user "Alice" has created folder "FOLDER" And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "FOLDER/textfile.txt" And using SharingNG And user "Alice" has created the following resource link share: @@ -80,7 +79,3 @@ Feature: accessing a public link share | password | %public% | When user "Alice" tries to download file "textfile.txt" from the last public link using own basic auth and new public WebDAV API Then the HTTP status code should be "401" - Examples: - | dav-path-version | - | new | - | spaces | diff --git a/tests/acceptance/features/coreApiTrashbin/trashbinDelete.feature b/tests/acceptance/features/coreApiTrashbin/trashbinDelete.feature index 9dac3729c06..cec76781bb4 100644 --- a/tests/acceptance/features/coreApiTrashbin/trashbinDelete.feature +++ b/tests/acceptance/features/coreApiTrashbin/trashbinDelete.feature @@ -26,8 +26,6 @@ Feature: files and folders can be deleted from the trashbin And as "Alice" the file with original path "" should not exist in the trashbin Examples: | dav-path-version | file-name | file-name-2 | - | old | textfile0.txt | textfile1.txt | - | old | sample,0.txt | sample,1.txt | | new | textfile0.txt | textfile1.txt | | new | sample,0.txt | sample,1.txt | | spaces | textfile0.txt | textfile1.txt | @@ -48,7 +46,6 @@ Feature: files and folders can be deleted from the trashbin And as "Alice" the file with original path "/PARENT/CHILD/child.txt" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -72,7 +69,6 @@ Feature: files and folders can be deleted from the trashbin And as "Alice" the file with original path "/PARENT/child.txt" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -92,7 +88,6 @@ Feature: files and folders can be deleted from the trashbin And as "Alice" the file with original path "/PARENT/CHILD/child.txt" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -112,7 +107,6 @@ Feature: files and folders can be deleted from the trashbin And as "Alice" the file with original path "/PARENT/CHILD/child.txt" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -132,7 +126,6 @@ Feature: files and folders can be deleted from the trashbin And as "Alice" the file with original path "/PARENT/CHILD/child.txt" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -154,7 +147,6 @@ Feature: files and folders can be deleted from the trashbin And as "Alice" the file with original path "/FOLDER/CHILD/child.txt" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -176,7 +168,6 @@ Feature: files and folders can be deleted from the trashbin And as "Alice" the file with original path "/FOLDER/CHILD/child.txt" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -210,7 +201,6 @@ Feature: files and folders can be deleted from the trashbin | # %ab ab?=ed.txt | Examples: | dav-path-version | - | old | | new | | spaces | @@ -244,7 +234,6 @@ Feature: files and folders can be deleted from the trashbin | # %ab ab?=ed | Examples: | dav-path-version | - | old | | new | | spaces | @@ -290,6 +279,5 @@ Feature: files and folders can be deleted from the trashbin | /fo.exe | Examples: | dav-path-version | - | old | | new | | spaces | diff --git a/tests/acceptance/features/coreApiTrashbin/trashbinFilesFolders.feature b/tests/acceptance/features/coreApiTrashbin/trashbinFilesFolders.feature index 8b2af1abf00..2b357545b96 100644 --- a/tests/acceptance/features/coreApiTrashbin/trashbinFilesFolders.feature +++ b/tests/acceptance/features/coreApiTrashbin/trashbinFilesFolders.feature @@ -17,7 +17,6 @@ Feature: files and folders exist in the trashbin after being deleted But as "Alice" file "/textfile0.txt" should not exist Examples: | dav-path-version | - | old | | new | | spaces | @@ -30,7 +29,6 @@ Feature: files and folders exist in the trashbin after being deleted And as "Alice" folder "/tmp" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -46,7 +44,6 @@ Feature: files and folders exist in the trashbin after being deleted But as "Alice" file "/new-folder/new-file.txt" should not exist Examples: | dav-path-version | - | old | | new | | spaces | @@ -70,7 +67,6 @@ Feature: files and folders exist in the trashbin after being deleted But as "Alice" file "/shared/shared_file.txt" should not exist Examples: | dav-path-version | - | old | | new | | spaces | @@ -92,7 +88,6 @@ Feature: files and folders exist in the trashbin after being deleted And as "Alice" the folder with original path "/shared" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -124,7 +119,6 @@ Feature: files and folders exist in the trashbin after being deleted And as "Alice" the folder with original path "/textfile0.txt" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -144,7 +138,6 @@ Feature: files and folders exist in the trashbin after being deleted And as "Alice" the folder with original path "/textfile0.txt" should exist in the trashbin Examples: | dav-path-version | - | old | | new | | spaces | @@ -162,7 +155,6 @@ Feature: files and folders exist in the trashbin after being deleted | textfile1.txt | testtrashbin100 | Examples: | dav-path-version | - | old | | new | | spaces | @@ -183,7 +175,6 @@ Feature: files and folders exist in the trashbin after being deleted | textfile2.txt | testtrashbin101 | Examples: | dav-path-version | - | old | | new | | spaces | @@ -209,7 +200,6 @@ Feature: files and folders exist in the trashbin after being deleted | textfile3.txt | testtrashbin102 | Examples: | dav-path-version | - | old | | new | | spaces | @@ -222,7 +212,6 @@ Feature: files and folders exist in the trashbin after being deleted Then the HTTP status code should be "404" Examples: | dav-path-version | - | old | | new | | spaces | @@ -233,7 +222,6 @@ Feature: files and folders exist in the trashbin after being deleted Then the HTTP status code should be "404" Examples: | dav-path-version | - | old | | new | | spaces | @@ -249,7 +237,6 @@ Feature: files and folders exist in the trashbin after being deleted | /textfile0.txt | Alice | Examples: | dav-path-version | - | old | | new | | spaces | @@ -265,7 +252,6 @@ Feature: files and folders exist in the trashbin after being deleted | /textfile0.txt | Alice | Examples: | dav-path-version | - | old | | new | | spaces | @@ -280,9 +266,6 @@ Feature: files and folders exist in the trashbin after being deleted But as "" file "/textfile0.txt" should not exist Examples: | dav-path-version | user | - | old | dash-123 | - | old | null | - | old | nil | | new | dash-123 | | new | null | | new | nil | @@ -300,7 +283,6 @@ Feature: files and folders exist in the trashbin after being deleted But as "Alice" file "sample,1.txt" should not exist Examples: | dav-path-version | - | old | | new | | spaces | @@ -317,7 +299,6 @@ Feature: files and folders exist in the trashbin after being deleted But as "Alice" file "/new-folder/new-file.txt" should not exist Examples: | dav-path-version | - | old | | new | | spaces | @@ -331,7 +312,6 @@ Feature: files and folders exist in the trashbin after being deleted And the deleted file "file.txt" should have the correct deletion mtime in the response Examples: | dav-path-version | - | old | | new | | spaces | @@ -389,7 +369,6 @@ Feature: files and folders exist in the trashbin after being deleted | fo.xyz | Examples: | dav-path-version | - | old | | new | | spaces | @@ -447,6 +426,5 @@ Feature: files and folders exist in the trashbin after being deleted | fo.xyz | Examples: | dav-path-version | - | old | | new | | spaces | diff --git a/tests/acceptance/features/coreApiTrashbin/trashbinSharingToShares.feature b/tests/acceptance/features/coreApiTrashbin/trashbinSharingToShares.feature index 0cee372c7d1..8fa69f377b4 100644 --- a/tests/acceptance/features/coreApiTrashbin/trashbinSharingToShares.feature +++ b/tests/acceptance/features/coreApiTrashbin/trashbinSharingToShares.feature @@ -199,7 +199,6 @@ Feature: using trashbin together with sharing And the content of file "/Shares/renamed_shared/shared_file.txt" for user "Brian" should be "file to delete" Examples: | dav-path-version | - | old | | new | | spaces | @@ -225,7 +224,6 @@ Feature: using trashbin together with sharing And as "Brian" file "/shareFolderParent/textfile0.txt" should exist Examples: | dav-path-version | http-status-code | - | old | 400 | | new | 403 | | spaces | 400 | @@ -251,7 +249,6 @@ Feature: using trashbin together with sharing And as "Brian" file "/shareFolderParent/shareFolderChild/textfile0.txt" should not exist Examples: | dav-path-version | http-status-code | - | old | 400 | | new | 403 | | spaces | 400 | @@ -277,6 +274,5 @@ Feature: using trashbin together with sharing And as "Alice" file "/Shares/shareFolderParent/textfile0.txt" should exist Examples: | dav-path-version | http-status-code | - | old | 400 | | new | 403 | | spaces | 400 | diff --git a/tests/acceptance/features/coreApiTrashbinRestore/trashbinRestore.feature b/tests/acceptance/features/coreApiTrashbinRestore/trashbinRestore.feature index 6c4a3250782..4452a2767fe 100644 --- a/tests/acceptance/features/coreApiTrashbinRestore/trashbinRestore.feature +++ b/tests/acceptance/features/coreApiTrashbinRestore/trashbinRestore.feature @@ -142,7 +142,6 @@ Feature: restore deleted files/folders | /textfile0.txt | Examples: | dav-path-version | http-status-code | - | old | 404 | | new | 404 | | spaces | 400 | @@ -158,7 +157,6 @@ Feature: restore deleted files/folders | /textfile0.txt | Examples: | dav-path-version | - | old | | new | | spaces | @@ -174,7 +172,6 @@ Feature: restore deleted files/folders | /textfile0.txt | Examples: | dav-path-version | - | old | | spaces | | new | @@ -467,7 +464,6 @@ Feature: restore deleted files/folders | /parent_folder/sub/parent.txt | Examples: | dav-path-version | - | old | | spaces | | new | @@ -483,7 +479,6 @@ Feature: restore deleted files/folders | /parent.txt | Examples: | dav-path-version | - | old | | spaces | | new | diff --git a/tests/acceptance/features/coreApiVersions/disableFileVersioning.feature b/tests/acceptance/features/coreApiVersions/disableFileVersioning.feature index aac2e1bd999..9de21b5169a 100644 --- a/tests/acceptance/features/coreApiVersions/disableFileVersioning.feature +++ b/tests/acceptance/features/coreApiVersions/disableFileVersioning.feature @@ -9,26 +9,20 @@ Feature: checking file versions | username | | Alice | | Brian | + And using spaces DAV path - Scenario Outline: check version number of a file when versioning is disabled - Given using DAV path - And the config "OCIS_DISABLE_VERSIONING" has been set to "true" + Scenario: check version number of a file when versioning is disabled + Given the config "OCIS_DISABLE_VERSIONING" has been set to "true" And user "Alice" has uploaded file with content "test file version 1" to "/testfile.txt" And user "Alice" has uploaded file with content "test file version 2" to "/testfile.txt" When user "Alice" gets the number of versions of file "/testfile.txt" Then the HTTP status code should be "207" And the number of versions should be "0" - Examples: - | dav-path-version | - | old | - | new | - | spaces | - Scenario Outline: file version number should not be added after disabling versioning - Given using DAV path - And user "Alice" has uploaded file with content "test file version 1" to "/testfile.txt" + Scenario: file version number should not be added after disabling versioning + Given user "Alice" has uploaded file with content "test file version 1" to "/testfile.txt" And user "Alice" has uploaded file with content "test file version 2" to "/testfile.txt" And the config "OCIS_DISABLE_VERSIONING" has been set to "true" And user "Alice" has uploaded file with content "test file version 3" to "/testfile.txt" @@ -36,16 +30,10 @@ Feature: checking file versions When user "Alice" gets the number of versions of file "/testfile.txt" Then the HTTP status code should be "207" And the number of versions should be "1" - Examples: - | dav-path-version | - | old | - | new | - | spaces | Scenario Outline: sharee tries to check version number of a file shared from project space when versioning is disabled - Given using spaces DAV path - And the config "OCIS_DISABLE_VERSIONING" has been set to "true" + Given the config "OCIS_DISABLE_VERSIONING" has been set to "true" And the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API And user "Alice" has created a space "Project1" with the default quota using the Graph API And user "Alice" has uploaded a file inside space "Project1" with content "hello world version 1" to "text.txt" @@ -66,8 +54,7 @@ Feature: checking file versions Scenario Outline: sharee tries to check version number of a file shared from personal space when versioning is disabled - Given using DAV path - And the config "OCIS_DISABLE_VERSIONING" has been set to "true" + Given the config "OCIS_DISABLE_VERSIONING" has been set to "true" And user "Alice" has uploaded file with content "test file version 2" to "/text.txt" And user "Alice" has sent the following resource share invitation: | resource | text.txt | @@ -79,18 +66,13 @@ Feature: checking file versions When user "Brian" tries to get the number of versions of file "/text.txt" from space "Shares" Then the HTTP status code should be "403" Examples: - | permissionsRole | dav-path-version | - | File Editor | old | - | Viewer | old | - | File Editor | new | - | Viewer | new | - | File Editor | spaces | - | Viewer | spaces | + | permissionsRole | + | File Editor | + | Viewer | - Scenario Outline: check file version number after disabling versioning, creating versions and then enabling versioning - Given using DAV path - And the config "OCIS_DISABLE_VERSIONING" has been set to "true" + Scenario: check file version number after disabling versioning, creating versions and then enabling versioning + Given the config "OCIS_DISABLE_VERSIONING" has been set to "true" And user "Alice" has uploaded file with content "test file version 1" to "/testfile.txt" And user "Alice" has uploaded file with content "test file version 2" to "/testfile.txt" And the config "OCIS_DISABLE_VERSIONING" has been set to "false" @@ -99,8 +81,3 @@ Feature: checking file versions When user "Alice" gets the number of versions of file "/testfile.txt" Then the HTTP status code should be "207" And the number of versions should be "2" - Examples: - | dav-path-version | - | old | - | new | - | spaces | diff --git a/tests/acceptance/features/coreApiVersions/fileVersions.feature b/tests/acceptance/features/coreApiVersions/fileVersions.feature index d55c8381b4a..70b9f957990 100644 --- a/tests/acceptance/features/coreApiVersions/fileVersions.feature +++ b/tests/acceptance/features/coreApiVersions/fileVersions.feature @@ -79,39 +79,26 @@ Feature: dav-versions | spaces | @smokeTest - Scenario Outline: restore a file and check its content - Given using DAV path - And user "Alice" has uploaded file with content "Test Content." to "/davtest.txt" + Scenario: restore a file and check its content + Given user "Alice" has uploaded file with content "Test Content." to "/davtest.txt" And user "Alice" has uploaded file with content "Content Test Updated." to "/davtest.txt" And the version folder of file "/davtest.txt" for user "Alice" should contain "1" element When user "Alice" restores version index "1" of file "/davtest.txt" using the WebDAV API Then the HTTP status code should be "204" And the content of file "/davtest.txt" for user "Alice" should be "Test Content." - Examples: - | dav-path-version | - | old | - | new | - | spaces | @smokeTest @skipOnStorage:ceph @skipOnStorage:scality - Scenario Outline: restore a file back to bigger content and check its content - Given using DAV path + Scenario: restore a file back to bigger content and check its content And user "Alice" has uploaded file with content "Back To The Future." to "/davtest.txt" And user "Alice" has uploaded file with content "Update Content." to "/davtest.txt" And the version folder of file "/davtest.txt" for user "Alice" should contain "1" element When user "Alice" restores version index "1" of file "/davtest.txt" using the WebDAV API Then the HTTP status code should be "204" And the content of file "/davtest.txt" for user "Alice" should be "Back To The Future." - Examples: - | dav-path-version | - | old | - | new | - | spaces | @smokeTest @skipOnStorage:ceph - Scenario Outline: uploading a chunked file does create the correct version that can be restored - Given using DAV path - And user "Alice" has uploaded file with content "textfile0" to "textfile0.txt" + Scenario: uploading a chunked file does create the correct version that can be restored + Given user "Alice" has uploaded file with content "textfile0" to "textfile0.txt" When user "Alice" uploads file "filesForUpload/davtest.txt" to "/textfile0.txt" in 2 chunks using the WebDAV API And user "Alice" uploads file "filesForUpload/lorem.txt" to "/textfile0.txt" in 3 chunks using the WebDAV API Then the HTTP status code of responses on all endpoints should be "201" @@ -119,94 +106,55 @@ Feature: dav-versions When user "Alice" restores version index "1" of file "/textfile0.txt" using the WebDAV API Then the HTTP status code should be "204" And the content of file "/textfile0.txt" for user "Alice" should be "Dav-Test" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnStorage:ceph @skipOnStorage:scality - Scenario Outline: restore a file and check the content and checksum - Given using DAV path - And user "Alice" has uploaded file with content "AAAAABBBBBCCCCC" and checksum "MD5:45a72715acdd5019c5be30bdbb75233e" to "/davtest.txt" + Scenario: restore a file and check the content and checksum + Given user "Alice" has uploaded file with content "AAAAABBBBBCCCCC" and checksum "MD5:45a72715acdd5019c5be30bdbb75233e" to "/davtest.txt" And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/davtest.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a" And the version folder of file "/davtest.txt" for user "Alice" should contain "1" element When user "Alice" restores version index "1" of file "/davtest.txt" using the WebDAV API Then the HTTP status code should be "204" And the content of file "/davtest.txt" for user "Alice" should be "AAAAABBBBBCCCCC" And as user "Alice" the webdav checksum of "/davtest.txt" via propfind should match "SHA1:acfa6b1565f9710d4d497c6035d5c069bd35a8e8 MD5:45a72715acdd5019c5be30bdbb75233e ADLER32:1ecd03df" - Examples: - | dav-path-version | - | old | - | new | - | spaces | - Scenario Outline: user cannot access meta folder of a file which is owned by somebody else - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: user cannot access meta folder of a file which is owned by somebody else + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has uploaded file with content "123" to "/davtest.txt" And we save it into "FILEID" When user "Brian" sends HTTP method "PROPFIND" to URL "/dav/meta/<>" Then the HTTP status code should be "400" or "404" - Examples: - | dav-path-version | - | old | - | new | - | spaces | - Scenario Outline: user cannot access meta folder of a file which does not exist - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: user cannot access meta folder of a file which does not exist + Given user "Brian" has been created with default attributes and without skeleton files When user "Brian" sends HTTP method "PROPFIND" to URL "/dav/meta/MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU2OjhjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA==" Then the HTTP status code should be "400" or "404" - Examples: - | dav-path-version | - | old | - | new | - | spaces | Scenario Outline: user cannot access meta folder of a file with invalid fileid - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Given user "Brian" has been created with default attributes and without skeleton files When user "Brian" sends HTTP method "PROPFIND" to URL "/dav/meta//v" Then the HTTP status code should be "400" or "404" Examples: - | dav-path-version | file-id | decoded-value | comment | - | old | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3PThjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bdc4-0b0000009157=8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with = sign | - | old | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3OGNjZDI3NTEtOTBhNC00MGYyLWI5ZjMtNjFlZGY4NDQyMWY0 | 1284d238-aa92-42ce-bdc4-0b00000091578ccd2751-90a4-40f2-b9f3-61edf84421f4 | no = sign | - | old | c29tZS1yYW5kb20tZmlsZUlkPWFub3RoZXItcmFuZG9tLWZpbGVJZA== | some-random-fileId=another-random-fileId | some random string | - | old | MTI4NGQyMzgtYWE5Mi00MmNlLWJkxzQtMGIwMDAwMDA5MTU2OjhjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bd�4-0b0000009156:8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with : and � sign | - | new | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3PThjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bdc4-0b0000009157=8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with = sign | - | new | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3OGNjZDI3NTEtOTBhNC00MGYyLWI5ZjMtNjFlZGY4NDQyMWY0 | 1284d238-aa92-42ce-bdc4-0b00000091578ccd2751-90a4-40f2-b9f3-61edf84421f4 | no = sign | - | new | c29tZS1yYW5kb20tZmlsZUlkPWFub3RoZXItcmFuZG9tLWZpbGVJZA== | some-random-fileId=another-random-fileId | some random string | - | new | MTI4NGQyMzgtYWE5Mi00MmNlLWJkxzQtMGIwMDAwMDA5MTU2OjhjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bd�4-0b0000009156:8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with : and � sign | - | spaces | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3PThjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bdc4-0b0000009157=8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with = sign | - | spaces | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3OGNjZDI3NTEtOTBhNC00MGYyLWI5ZjMtNjFlZGY4NDQyMWY0 | 1284d238-aa92-42ce-bdc4-0b00000091578ccd2751-90a4-40f2-b9f3-61edf84421f4 | no = sign | - | spaces | c29tZS1yYW5kb20tZmlsZUlkPWFub3RoZXItcmFuZG9tLWZpbGVJZA== | some-random-fileId=another-random-fileId | some random string | - | spaces | MTI4NGQyMzgtYWE5Mi00MmNlLWJkxzQtMGIwMDAwMDA5MTU2OjhjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bd�4-0b0000009156:8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with : and � sign | - - - Scenario Outline: version history is preserved when a file is renamed - Given using DAV path - And user "Alice" has uploaded file with content "old content" to "/textfile.txt" + | file-id | decoded-value | comment | + | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3PThjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bdc4-0b0000009157=8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with = sign | + | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3OGNjZDI3NTEtOTBhNC00MGYyLWI5ZjMtNjFlZGY4NDQyMWY0 | 1284d238-aa92-42ce-bdc4-0b00000091578ccd2751-90a4-40f2-b9f3-61edf84421f4 | no = sign | + | c29tZS1yYW5kb20tZmlsZUlkPWFub3RoZXItcmFuZG9tLWZpbGVJZA== | some-random-fileId=another-random-fileId | some random string | + | MTI4NGQyMzgtYWE5Mi00MmNlLWJkxzQtMGIwMDAwMDA5MTU2OjhjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bd�4-0b0000009156:8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with : and � sign | + + + Scenario: version history is preserved when a file is renamed + Given user "Alice" has uploaded file with content "old content" to "/textfile.txt" And user "Alice" has uploaded file with content "new content" to "/textfile.txt" And user "Alice" has moved file "/textfile.txt" to "/renamedfile.txt" When user "Alice" restores version index "1" of file "/renamedfile.txt" using the WebDAV API Then the HTTP status code should be "204" And the content of file "/renamedfile.txt" for user "Alice" should be "old content" - Examples: - | dav-path-version | - | old | - | new | - | spaces | - Scenario Outline: user can access version number after moving a file - Given using DAV path - And user "Alice" has created folder "testFolder" + Scenario: user can access version number after moving a file + Given user "Alice" has created folder "testFolder" And user "Alice" has uploaded file with content "uploaded content" to "textfile0.txt" And user "Alice" has uploaded file with content "version 1" to "textfile0.txt" And user "Alice" has uploaded file with content "version 2" to "textfile0.txt" @@ -215,45 +163,27 @@ Feature: dav-versions And user "Alice" gets the number of versions of file "/testFolder/textfile0.txt" Then the HTTP status code should be "207" And the number of versions should be "3" - Examples: - | dav-path-version | - | old | - | new | - | spaces | - Scenario Outline: original file has version number 0 - Given using DAV path - And user "Alice" has uploaded file with content "uploaded content" to "textfile0.txt" + Scenario: original file has version number 0 + Given user "Alice" has uploaded file with content "uploaded content" to "textfile0.txt" When user "Alice" gets the number of versions of file "textfile0.txt" Then the HTTP status code should be "207" And the number of versions should be "0" - Examples: - | dav-path-version | - | old | - | new | - | spaces | - Scenario Outline: number of etag elements in response changes according to version of the file - Given using DAV path - And user "Alice" has uploaded file with content "uploaded content" to "textfile0.txt" + Scenario: number of etag elements in response changes according to version of the file + Given user "Alice" has uploaded file with content "uploaded content" to "textfile0.txt" And user "Alice" has uploaded file with content "version 1" to "textfile0.txt" And user "Alice" has uploaded file with content "version 2" to "textfile0.txt" When user "Alice" gets the number of versions of file "textfile0.txt" Then the HTTP status code should be "207" And the number of etag elements in the response should be "2" And the number of versions should be "2" - Examples: - | dav-path-version | - | old | - | new | - | spaces | - Scenario Outline: download old versions of a file - Given using DAV path - And user "Alice" has uploaded file with content "uploaded content" to "textfile0.txt" + Scenario: download old versions of a file + Given user "Alice" has uploaded file with content "uploaded content" to "textfile0.txt" And user "Alice" has uploaded file with content "version 1" to "textfile0.txt" And user "Alice" has uploaded file with content "version 2" to "textfile0.txt" When user "Alice" downloads the version of file "textfile0.txt" with the index "1" @@ -268,16 +198,10 @@ Feature: dav-versions | header | value | | Content-Disposition | attachment; filename*=UTF-8''textfile0.txt; filename="textfile0.txt" | And the downloaded content should be "uploaded content" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnStorage:ceph @skipOnStorage:scality - Scenario Outline: download an old version of a restored file - Given using DAV path - And user "Alice" has uploaded file with content "uploaded content" to "textfile0.txt" + Scenario: download an old version of a restored file + Given user "Alice" has uploaded file with content "uploaded content" to "textfile0.txt" And user "Alice" has uploaded file with content "version 1" to "textfile0.txt" And user "Alice" has uploaded file with content "version 2" to "textfile0.txt" And user "Alice" has restored version index "1" of file "textfile0.txt" @@ -293,11 +217,6 @@ Feature: dav-versions | header | value | | Content-Disposition | attachment; filename*=UTF-8''textfile0.txt; filename="textfile0.txt" | And the downloaded content should be "uploaded content" - Examples: - | dav-path-version | - | old | - | new | - | spaces | Scenario: user can retrieve meta information of a root folder @@ -321,43 +240,27 @@ Feature: dav-versions And the single response should contain a property "oc:meta-path-for-user" with value "/testFolder/davtest.txt" - Scenario Outline: user cannot retrieve meta information of a file which is owned by somebody else - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: user cannot retrieve meta information of a file which is owned by somebody else + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has uploaded file with content "123" to "/davtest.txt " And we save it into "FILEID" When user "Brian" retrieves the meta information of fileId "<>" using the meta API Then the HTTP status code should be "404" - Examples: - | dav-path-version | - | old | - | new | - | spaces | Scenario Outline: user cannot retrieve meta information of a file that does not exist - Given using DAV path When user "Alice" retrieves the meta information of fileId "" using the meta API Then the HTTP status code should be "400" or "404" Examples: - | dav-path-version | file-id | decoded-value | comment | - | old | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3PThjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bdc4-0b0000009157=8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with = sign | - | old | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3OGNjZDI3NTEtOTBhNC00MGYyLWI5ZjMtNjFlZGY4NDQyMWY0 | 1284d238-aa92-42ce-bdc4-0b00000091578ccd2751-90a4-40f2-b9f3-61edf84421f4 | no = sign | - | old | c29tZS1yYW5kb20tZmlsZUlkPWFub3RoZXItcmFuZG9tLWZpbGVJZA== | some-random-fileId=another-random-fileId | some random string | - | old | GQyMzgtYWE5Mi00MmNlLWJkxzQtMGIwMDAwMDA5MTU2OjhjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bd�4-0b0000009156:8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with : and � sign | - | new | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3PThjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bdc4-0b0000009157=8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with = sign | - | new | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3OGNjZDI3NTEtOTBhNC00MGYyLWI5ZjMtNjFlZGY4NDQyMWY0 | 1284d238-aa92-42ce-bdc4-0b00000091578ccd2751-90a4-40f2-b9f3-61edf84421f4 | no = sign | - | new | c29tZS1yYW5kb20tZmlsZUlkPWFub3RoZXItcmFuZG9tLWZpbGVJZA== | some-random-fileId=another-random-fileId | some random string | - | new | GQyMzgtYWE5Mi00MmNlLWJkxzQtMGIwMDAwMDA5MTU2OjhjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bd�4-0b0000009156:8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with : and � sign | - | spaces | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3PThjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bdc4-0b0000009157=8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with = sign | - | spaces | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3OGNjZDI3NTEtOTBhNC00MGYyLWI5ZjMtNjFlZGY4NDQyMWY0 | 1284d238-aa92-42ce-bdc4-0b00000091578ccd2751-90a4-40f2-b9f3-61edf84421f4 | no = sign | - | spaces | c29tZS1yYW5kb20tZmlsZUlkPWFub3RoZXItcmFuZG9tLWZpbGVJZA== | some-random-fileId=another-random-fileId | some random string | - | spaces | GQyMzgtYWE5Mi00MmNlLWJkxzQtMGIwMDAwMDA5MTU2OjhjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bd�4-0b0000009156:8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with : and � sign | - - - Scenario Outline: file versions sets back after getting deleted and restored from trashbin - Given using DAV path - And user "Alice" has uploaded file with content "Old Test Content." to "/davtest.txt" + | file-id | decoded-value | comment | + | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3PThjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bdc4-0b0000009157=8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with = sign | + | MTI4NGQyMzgtYWE5Mi00MmNlLWJkYzQtMGIwMDAwMDA5MTU3OGNjZDI3NTEtOTBhNC00MGYyLWI5ZjMtNjFlZGY4NDQyMWY0 | 1284d238-aa92-42ce-bdc4-0b00000091578ccd2751-90a4-40f2-b9f3-61edf84421f4 | no = sign | + | c29tZS1yYW5kb20tZmlsZUlkPWFub3RoZXItcmFuZG9tLWZpbGVJZA== | some-random-fileId=another-random-fileId | some random string | + | MTI4NGQyMzgtYWE5Mi00MmNlLWJkxzQtMGIwMDAwMDA5MTU2OjhjY2QyNzUxLTkwYTQtNDBmMi1iOWYzLTYxZWRmODQ0MjFmNA== | 1284d238-aa92-42ce-bd�4-0b0000009156:8ccd2751-90a4-40f2-b9f3-61edf84421f4 | with : and � sign | + + + Scenario: file versions sets back after getting deleted and restored from trashbin + Given user "Alice" has uploaded file with content "Old Test Content." to "/davtest.txt" And user "Alice" has uploaded file with content "New Test Content." to "/davtest.txt" And the version folder of file "/davtest.txt" for user "Alice" should contain "1" element And user "Alice" has deleted file "/davtest.txt" @@ -370,10 +273,6 @@ Feature: dav-versions When user "Alice" restores version index "1" of file "/davtest.txt" using the WebDAV API Then the HTTP status code should be "204" And the content of file "/davtest.txt" for user "Alice" should be "Old Test Content." - Examples: - | dav-path-version | - | new | - | spaces | Scenario Outline: upload the same file twice with the same mtime and a version is available @@ -403,23 +302,16 @@ Feature: dav-versions | spaces | - Scenario Outline: upload the same file twice with the same mtime and no version after restoring - Given using DAV path - And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "file.txt" with mtime "Thu, 08 Aug 2019 04:18:13 GMT" using the WebDAV API + Scenario: upload the same file twice with the same mtime and no version after restoring + Given user "Alice" has uploaded file "filesForUpload/textfile.txt" to "file.txt" with mtime "Thu, 08 Aug 2019 04:18:13 GMT" using the WebDAV API And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "file.txt" with mtime "Thu, 08 Aug 2019 04:18:13 GMT" using the WebDAV API When user "Alice" restores version index "1" of file "/file.txt" using the WebDAV API Then the HTTP status code should be "204" And the version folder of file "/file.txt" for user "Alice" should contain "0" element - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnReva - Scenario Outline: sharer of a file can see the old version information when the sharee changes the content of the file - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: sharer of a file can see the old version information when the sharee changes the content of the file + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has uploaded file with content "First content" to "sharefile.txt" And user "Alice" has sent the following resource share invitation: | resource | sharefile.txt | @@ -433,16 +325,10 @@ Feature: dav-versions And the version folder of file "/sharefile.txt" for user "Alice" should contain "1" element When user "Brian" gets the number of versions of file "/Shares/sharefile.txt" Then the HTTP status code should be "403" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnReva - Scenario Outline: sharer of a file can restore the original content of a shared file after the file has been modified by the sharee - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: sharer of a file can restore the original content of a shared file after the file has been modified by the sharee + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has uploaded file with content "First content" to "sharefile.txt" And user "Alice" has sent the following resource share invitation: | resource | sharefile.txt | @@ -456,16 +342,10 @@ Feature: dav-versions Then the HTTP status code should be "204" And the content of file "/sharefile.txt" for user "Alice" should be "First content" And the content of file "/Shares/sharefile.txt" for user "Brian" should be "First content" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnReva - Scenario Outline: sharer can restore a file inside a shared folder modified by sharee - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: sharer can restore a file inside a shared folder modified by sharee + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has created folder "/sharingfolder" And user "Alice" has sent the following resource share invitation: | resource | sharingfolder | @@ -480,16 +360,10 @@ Feature: dav-versions Then the HTTP status code should be "204" And the content of file "/sharingfolder/sharefile.txt" for user "Alice" should be "First content" And the content of file "/Shares/sharingfolder/sharefile.txt" for user "Brian" should be "First content" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnReva - Scenario Outline: sharee cannot see a version of a file inside a shared folder when modified by sharee - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: sharee cannot see a version of a file inside a shared folder when modified by sharee + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has created folder "/sharingfolder" And user "Alice" has sent the following resource share invitation: | resource | sharingfolder | @@ -504,16 +378,10 @@ Feature: dav-versions Then the HTTP status code should be "403" And the content of file "/Shares/sharingfolder/sharefile.txt" for user "Brian" should be "Second content" And the content of file "/sharingfolder/sharefile.txt" for user "Alice" should be "Second content" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnReva - Scenario Outline: sharer can restore a file inside a shared folder created by sharee and modified by sharer - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: sharer can restore a file inside a shared folder created by sharee and modified by sharer + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has created folder "/sharingfolder" And user "Alice" has sent the following resource share invitation: | resource | sharingfolder | @@ -528,16 +396,10 @@ Feature: dav-versions Then the HTTP status code should be "204" And the content of file "/sharingfolder/sharefile.txt" for user "Alice" should be "First content" And the content of file "/Shares/sharingfolder/sharefile.txt" for user "Brian" should be "First content" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnReva - Scenario Outline: sharer can restore a file inside a shared folder created by sharee and modified by sharee - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: sharer can restore a file inside a shared folder created by sharee and modified by sharee + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has created folder "/sharingfolder" And user "Alice" has sent the following resource share invitation: | resource | sharingfolder | @@ -552,16 +414,10 @@ Feature: dav-versions Then the HTTP status code should be "204" And the content of file "/sharingfolder/sharefile.txt" for user "Alice" should be "old content" And the content of file "/Shares/sharingfolder/sharefile.txt" for user "Brian" should be "old content" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnReva - Scenario Outline: sharer can restore a file inside a group shared folder modified by sharee - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: sharer can restore a file inside a group shared folder modified by sharee + Given user "Brian" has been created with default attributes and without skeleton files And user "Carol" has been created with default attributes and without skeleton files And group "grp1" has been created And user "Brian" has been added to group "grp1" @@ -583,11 +439,6 @@ Feature: dav-versions And the content of file "/sharingfolder/sharefile.txt" for user "Alice" should be "First content" And the content of file "/Shares/sharingfolder/sharefile.txt" for user "Brian" should be "First content" And the content of file "/Shares/sharingfolder/sharefile.txt" for user "Carol" should be "First content" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnReva Scenario Outline: moving a file (with versions) into a shared folder as the sharer @@ -624,9 +475,8 @@ Feature: dav-versions | spaces | Editor | @skipOnReva - Scenario Outline: sharee tries to get file versions of file not shared by the sharer - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: sharee tries to get file versions of file not shared by the sharer + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has uploaded file with content "textfile0" to "textfile0.txt" And user "Alice" has uploaded file with content "textfile1" to "textfile1.txt" And user "Alice" has sent the following resource share invitation: @@ -639,16 +489,10 @@ Feature: dav-versions When user "Brian" tries to get versions of file "textfile1.txt" from "Alice" Then the HTTP status code should be "404" And the value of the item "//s:exception" in the response about user "Alice" should be "Sabre\DAV\Exception\NotFound" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnStorage:ceph @skipOnReva - Scenario Outline: receiver tries get file versions of shared file from the sharer - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: receiver tries get file versions of shared file from the sharer + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has uploaded file with content "textfile0" to "textfile0.txt" And user "Alice" has uploaded file with content "version 1" to "textfile0.txt" And user "Alice" has uploaded file with content "version 2" to "textfile0.txt" @@ -662,16 +506,10 @@ Feature: dav-versions And user "Brian" has a share "textfile0.txt" synced When user "Brian" tries to get versions of file "textfile0.txt" from "Alice" Then the HTTP status code should be "403" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @skipOnReva - Scenario Outline: receiver tries get file versions of shared file before receiving it - Given using DAV path - And user "Brian" has been created with default attributes and without skeleton files + Scenario: receiver tries get file versions of shared file before receiving it + Given user "Brian" has been created with default attributes and without skeleton files And user "Alice" has uploaded file with content "textfile0" to "textfile0.txt" And user "Alice" has uploaded file with content "version 1" to "textfile0.txt" And user "Alice" has uploaded file with content "version 2" to "textfile0.txt" @@ -685,16 +523,10 @@ Feature: dav-versions When user "Brian" tries to get versions of file "textfile0.txt" from "Alice" Then the HTTP status code should be "403" And the value of the item "//s:exception" in the response about user "Alice" should be "Sabre\DAV\Exception\Forbidden" - Examples: - | dav-path-version | - | old | - | new | - | spaces | @issue-enterprise-6249 - Scenario Outline: upload empty content file and check versions after multiple restores - Given using DAV path - And user "Alice" has uploaded file with content "" to "textfile.txt" + Scenario: upload empty content file and check versions after multiple restores + Given user "Alice" has uploaded file with content "" to "textfile.txt" And user "Alice" has uploaded file with content "test content" to "textfile.txt" And the version folder of file "textfile.txt" for user "Alice" should contain "1" element When user "Alice" restores version index "1" of file "textfile.txt" using the WebDAV API @@ -705,16 +537,10 @@ Feature: dav-versions Then the HTTP status code should be "204" And the content of file "textfile.txt" for user "Alice" should be "test content" And the version folder of file "textfile.txt" for user "Alice" should contain "1" elements - Examples: - | dav-path-version | - | old | - | new | - | spaces | - Scenario Outline: update with empty content and check versions after multiple restores - Given using DAV path - And user "Alice" has uploaded file with content "test content" to "textfile.txt" + Scenario: update with empty content and check versions after multiple restores + Given user "Alice" has uploaded file with content "test content" to "textfile.txt" And user "Alice" has uploaded file with content "" to "textfile.txt" And the version folder of file "textfile.txt" for user "Alice" should contain "1" element When user "Alice" restores version index "1" of file "textfile.txt" using the WebDAV API @@ -725,8 +551,3 @@ Feature: dav-versions Then the HTTP status code should be "204" And the content of file "textfile.txt" for user "Alice" should be "" And the version folder of file "textfile.txt" for user "Alice" should contain "1" elements - Examples: - | dav-path-version | - | old | - | new | - | spaces | diff --git a/tests/acceptance/features/coreApiWebdavEtagPropagation2/restoreVersion.feature b/tests/acceptance/features/coreApiWebdavEtagPropagation2/restoreVersion.feature index 5c1704d5273..173070f4158 100644 --- a/tests/acceptance/features/coreApiWebdavEtagPropagation2/restoreVersion.feature +++ b/tests/acceptance/features/coreApiWebdavEtagPropagation2/restoreVersion.feature @@ -9,9 +9,8 @@ Feature: propagation of etags when restoring a version of a file And user "Alice" has been created with default attributes and without skeleton files @skipOnStorage:ceph @skipOnStorage:scality - Scenario Outline: restoring a file changes the etags of all parents - Given using DAV path - And user "Alice" has created folder "/upload" + Scenario: restoring a file changes the etags of all parents + Given user "Alice" has created folder "/upload" And user "Alice" has created folder "/upload/sub" And user "Alice" has uploaded file with content "uploaded content" to "/upload/sub/file.txt" And user "Alice" has uploaded file with content "changed content" to "/upload/sub/file.txt" @@ -25,8 +24,3 @@ Feature: propagation of etags when restoring a version of a file | Alice | / | | Alice | /upload | | Alice | /upload/sub | - Examples: - | dav-path-version | - | old | - | new | - | spaces |