From bc59eab37b5ed1368b487111a9b18b241c51cff9 Mon Sep 17 00:00:00 2001 From: Sawjan Gurung Date: Tue, 9 Jan 2024 16:33:04 +0545 Subject: [PATCH] [tests-only] Added API tests coverage for MOVE within same folder with same filename (#8135) * added API tests for moving a file within same folder and same name * added API tests for moving a file within same folder and same name (file-id) * update expected failure file --- tests/acceptance/config/behat-core.yml | 1 + .../expected-failures-API-on-OCIS-storage.md | 18 ++- ...ected-failures-localAPI-on-OCIS-storage.md | 115 ++++++++++-------- .../moveByFileId.feature | 57 +++++++++ .../apiSpacesShares/moveSpaces.feature | 34 ++++++ .../coreApiWebdavMove2/moveFile.feature | 18 +++ .../moveShareOnOcis.feature | 25 ++++ 7 files changed, 216 insertions(+), 52 deletions(-) diff --git a/tests/acceptance/config/behat-core.yml b/tests/acceptance/config/behat-core.yml index 8df0367f9f..90711e3a0b 100644 --- a/tests/acceptance/config/behat-core.yml +++ b/tests/acceptance/config/behat-core.yml @@ -287,6 +287,7 @@ default: - FeatureContext: *common_feature_context_params - WebDavPropertiesContext: - FilesVersionsContext: + - TrashbinContext: coreApiWebdavOperations: paths: diff --git a/tests/acceptance/expected-failures-API-on-OCIS-storage.md b/tests/acceptance/expected-failures-API-on-OCIS-storage.md index 7b79b35cb5..64a10814f7 100644 --- a/tests/acceptance/expected-failures-API-on-OCIS-storage.md +++ b/tests/acceptance/expected-failures-API-on-OCIS-storage.md @@ -426,9 +426,9 @@ Not everything needs to be implemented for ocis. While the oc10 testsuite covers - [coreApiWebdavUpload1/uploadFile.feature:181](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUpload1/uploadFile.feature#L181) - [coreApiWebdavUpload1/uploadFile.feature:180](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUpload1/uploadFile.feature#L180) - [coreApiWebdavUpload1/uploadFile.feature:186](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavUpload1/uploadFile.feature#L186) -- [coreApiWebdavMove2/moveFile.feature:178](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L178) -- [coreApiWebdavMove2/moveFile.feature:179](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L179) -- [coreApiWebdavMove2/moveFile.feature:184](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L184) +- [coreApiWebdavMove2/moveFile.feature:196](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L196) +- [coreApiWebdavMove2/moveFile.feature:197](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L197) +- [coreApiWebdavMove2/moveFile.feature:202](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L202) #### [cannot set blacklisted file names](https://github.com/owncloud/product/issues/260) @@ -469,7 +469,7 @@ Not everything needs to be implemented for ocis. While the oc10 testsuite covers - [coreApiWebdavMove1/moveFolder.feature:26](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove1/moveFolder.feature#L26) - [coreApiWebdavMove1/moveFolder.feature:44](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove1/moveFolder.feature#L44) - [coreApiWebdavMove1/moveFolder.feature:62](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove1/moveFolder.feature#L62) -- [coreApiWebdavMove2/moveFile.feature:140](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L140) +- [coreApiWebdavMove2/moveFile.feature:158](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L158) - [coreApiWebdavMove2/moveFileToBlacklistedName.feature:24](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFileToBlacklistedName.feature#L24) #### [REPORT method on spaces returns an incorrect d:href response](https://github.com/owncloud/ocis/issues/3111) @@ -493,5 +493,15 @@ Not everything needs to be implemented for ocis. While the oc10 testsuite covers - [coreApiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature:22](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature#L22) - [coreApiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature:23](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature#L23) +### [MOVE a file into same folder with same name returns 404 instead of 403](https://github.com/owncloud/ocis/issues/1976) + +- [coreApiWebdavMove2/moveFile.feature:120](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L120) +- [coreApiWebdavMove2/moveFile.feature:121](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L121) +- [coreApiWebdavMove2/moveFile.feature:126](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature#L126) +- [coreApiWebdavMove2/moveShareOnOcis.feature:283](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveShareOnOcis.feature#L283) +- [coreApiWebdavMove2/moveShareOnOcis.feature:284](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveShareOnOcis.feature#L284) +- [coreApiWebdavMove2/moveShareOnOcis.feature:286](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveShareOnOcis.feature#L286) +- [coreApiWebdavMove2/moveShareOnOcis.feature:287](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavMove2/moveShareOnOcis.feature#L287) + Note: always have an empty line at the end of this file. The bash script that processes this file requires that the last line has a newline on the end. diff --git a/tests/acceptance/expected-failures-localAPI-on-OCIS-storage.md b/tests/acceptance/expected-failures-localAPI-on-OCIS-storage.md index 7c4a68c113..f647f4bb9e 100644 --- a/tests/acceptance/expected-failures-localAPI-on-OCIS-storage.md +++ b/tests/acceptance/expected-failures-localAPI-on-OCIS-storage.md @@ -273,68 +273,87 @@ The expected failures in this file are from features in the owncloud/ocis repo. ### [sharee (editor role) MOVE a file by file-id into same shared folder returns 403](https://github.com/owncloud/ocis/issues/7617) -- [apiSpacesDavOperation/moveByFileId.feature:407](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L407) -- [apiSpacesDavOperation/moveByFileId.feature:408](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L408) -- [apiSpacesDavOperation/moveByFileId.feature:409](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L409) -- [apiSpacesDavOperation/moveByFileId.feature:410](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L410) -- [apiSpacesDavOperation/moveByFileId.feature:629](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L629) -- [apiSpacesDavOperation/moveByFileId.feature:630](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L630) -- [apiSpacesDavOperation/moveByFileId.feature:631](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L631) -- [apiSpacesDavOperation/moveByFileId.feature:632](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L632) +- [apiSpacesDavOperation/moveByFileId.feature:443](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L443) +- [apiSpacesDavOperation/moveByFileId.feature:444](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L444) +- [apiSpacesDavOperation/moveByFileId.feature:445](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L445) +- [apiSpacesDavOperation/moveByFileId.feature:446](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L446) +- [apiSpacesDavOperation/moveByFileId.feature:686](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L686) +- [apiSpacesDavOperation/moveByFileId.feature:687](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L687) +- [apiSpacesDavOperation/moveByFileId.feature:688](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L688) +- [apiSpacesDavOperation/moveByFileId.feature:689](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L689) ### [MOVE a file from Project space (manager/editor) to Personal space returns 502 code](https://github.com/owncloud/ocis/issues/7618) -- [apiSpacesDavOperation/moveByFileId.feature:117](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L117) -- [apiSpacesDavOperation/moveByFileId.feature:118](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L118) -- [apiSpacesDavOperation/moveByFileId.feature:120](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L120) -- [apiSpacesDavOperation/moveByFileId.feature:121](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L121) -- [apiSpacesDavOperation/moveByFileId.feature:139](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L139) -- [apiSpacesDavOperation/moveByFileId.feature:140](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L140) -- [apiSpacesDavOperation/moveByFileId.feature:362](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L362) -- [apiSpacesDavOperation/moveByFileId.feature:363](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L363) -- [apiSpacesDavOperation/moveByFileId.feature:365](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L365) -- [apiSpacesDavOperation/moveByFileId.feature:366](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L366) -- [apiSpacesDavOperation/moveByFileId.feature:384](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L384) -- [apiSpacesDavOperation/moveByFileId.feature:385](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L385) -- [apiSpacesShares/moveSpaces.feature:95](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L95) -- [apiSpacesShares/moveSpaces.feature:96](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L96) -- [apiSpacesShares/moveSpaces.feature:143](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L143) -- [apiSpacesShares/moveSpaces.feature:144](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L144) +- [apiSpacesDavOperation/moveByFileId.feature:130](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L130) +- [apiSpacesDavOperation/moveByFileId.feature:131](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L131) +- [apiSpacesDavOperation/moveByFileId.feature:133](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L133) +- [apiSpacesDavOperation/moveByFileId.feature:134](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L134) +- [apiSpacesDavOperation/moveByFileId.feature:152](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L152) +- [apiSpacesDavOperation/moveByFileId.feature:153](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L153) +- [apiSpacesDavOperation/moveByFileId.feature:398](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L398) +- [apiSpacesDavOperation/moveByFileId.feature:399](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L399) +- [apiSpacesDavOperation/moveByFileId.feature:401](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L401) +- [apiSpacesDavOperation/moveByFileId.feature:402](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L402) +- [apiSpacesDavOperation/moveByFileId.feature:420](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L420) +- [apiSpacesDavOperation/moveByFileId.feature:421](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L421) +- [apiSpacesShares/moveSpaces.feature:113](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L113) +- [apiSpacesShares/moveSpaces.feature:114](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L114) +- [apiSpacesShares/moveSpaces.feature:161](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L161) +- [apiSpacesShares/moveSpaces.feature:162](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L162) ### [MOVE a file from Project space (manager/editor) to Project space (manager/editor) returns 502 code](https://github.com/owncloud/ocis/issues/8116) -- [apiSpacesDavOperation/moveByFileId.feature:264](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L264) -- [apiSpacesDavOperation/moveByFileId.feature:265](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L265) -- [apiSpacesDavOperation/moveByFileId.feature:266](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L266) -- [apiSpacesDavOperation/moveByFileId.feature:267](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L267) -- [apiSpacesDavOperation/moveByFileId.feature:273](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L273) -- [apiSpacesDavOperation/moveByFileId.feature:274](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L274) -- [apiSpacesDavOperation/moveByFileId.feature:275](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L275) -- [apiSpacesDavOperation/moveByFileId.feature:276](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L276) +- [apiSpacesDavOperation/moveByFileId.feature:300](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L300) +- [apiSpacesDavOperation/moveByFileId.feature:301](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L301) - [apiSpacesDavOperation/moveByFileId.feature:302](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L302) - [apiSpacesDavOperation/moveByFileId.feature:303](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L303) -- [apiSpacesShares/moveSpaces.feature:69](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L69) -- [apiSpacesShares/moveSpaces.feature:70](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L70) -- [apiSpacesShares/moveSpaces.feature:71](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L71) -- [apiSpacesShares/moveSpaces.feature:72](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L72) +- [apiSpacesDavOperation/moveByFileId.feature:309](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L309) +- [apiSpacesDavOperation/moveByFileId.feature:310](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L310) +- [apiSpacesDavOperation/moveByFileId.feature:311](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L311) +- [apiSpacesDavOperation/moveByFileId.feature:312](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L312) +- [apiSpacesDavOperation/moveByFileId.feature:338](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L338) +- [apiSpacesDavOperation/moveByFileId.feature:339](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L339) +- [apiSpacesShares/moveSpaces.feature:87](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L87) +- [apiSpacesShares/moveSpaces.feature:88](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L88) +- [apiSpacesShares/moveSpaces.feature:89](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L89) +- [apiSpacesShares/moveSpaces.feature:90](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L90) ### [sharee (editor role) MOVE a file by file-id into Personal space responds with 502 instead of 403](https://github.com/owncloud/ocis/issues/8124) -- [apiSpacesDavOperation/moveByFileId.feature:486](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L486) -- [apiSpacesDavOperation/moveByFileId.feature:487](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L487) -- [apiSpacesDavOperation/moveByFileId.feature:488](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L488) -- [apiSpacesDavOperation/moveByFileId.feature:489](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L489) +- [apiSpacesDavOperation/moveByFileId.feature:543](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L543) +- [apiSpacesDavOperation/moveByFileId.feature:544](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L544) +- [apiSpacesDavOperation/moveByFileId.feature:545](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L545) +- [apiSpacesDavOperation/moveByFileId.feature:546](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L546) ### [sharee (editor role) MOVE a file by file-id into Project space (manager/editor role) responds with 502 instead of 403](https://github.com/owncloud/ocis/issues/8125) -- [apiSpacesDavOperation/moveByFileId.feature:513](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L513) -- [apiSpacesDavOperation/moveByFileId.feature:514](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L514) -- [apiSpacesDavOperation/moveByFileId.feature:516](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L516) -- [apiSpacesDavOperation/moveByFileId.feature:517](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L517) -- [apiSpacesDavOperation/moveByFileId.feature:522](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L522) -- [apiSpacesDavOperation/moveByFileId.feature:523](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L523) -- [apiSpacesDavOperation/moveByFileId.feature:525](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L525) -- [apiSpacesDavOperation/moveByFileId.feature:526](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L526) +- [apiSpacesDavOperation/moveByFileId.feature:570](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L570) +- [apiSpacesDavOperation/moveByFileId.feature:571](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L571) +- [apiSpacesDavOperation/moveByFileId.feature:573](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L573) +- [apiSpacesDavOperation/moveByFileId.feature:574](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L574) +- [apiSpacesDavOperation/moveByFileId.feature:579](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L579) +- [apiSpacesDavOperation/moveByFileId.feature:580](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L580) +- [apiSpacesDavOperation/moveByFileId.feature:582](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L582) +- [apiSpacesDavOperation/moveByFileId.feature:583](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L583) + +### [MOVE a file into same folder with same name returns 404 instead of 403](https://github.com/owncloud/ocis/issues/1976) + +- [apiSpacesShares/moveSpaces.feature:63](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L63) +- [apiSpacesShares/moveSpaces.feature:64](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L64) +- [apiSpacesShares/moveSpaces.feature:332](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L332) +- [apiSpacesShares/moveSpaces.feature:333](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesShares/moveSpaces.feature#L333) +- [apiSpacesDavOperation/moveByFileId.feature:86](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L86) +- [apiSpacesDavOperation/moveByFileId.feature:87](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L87) +- [apiSpacesDavOperation/moveByFileId.feature:195](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L195) +- [apiSpacesDavOperation/moveByFileId.feature:196](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L196) +- [apiSpacesDavOperation/moveByFileId.feature:197](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L197) +- [apiSpacesDavOperation/moveByFileId.feature:198](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L198) +- [apiSpacesDavOperation/moveByFileId.feature:199](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L199) +- [apiSpacesDavOperation/moveByFileId.feature:200](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L200) +- [apiSpacesDavOperation/moveByFileId.feature:462](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L462) +- [apiSpacesDavOperation/moveByFileId.feature:463](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L463) +- [apiSpacesDavOperation/moveByFileId.feature:464](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L464) +- [apiSpacesDavOperation/moveByFileId.feature:465](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature#L465) - Note: always have an empty line at the end of this file. The bash script that processes this file requires that the last line has a newline on the end. diff --git a/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature b/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature index 97767308ac..0a92b25b02 100644 --- a/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature +++ b/tests/acceptance/features/apiSpacesDavOperation/moveByFileId.feature @@ -73,6 +73,19 @@ Feature: moving/renaming file using file id | /remote.php/dav/spaces/<> | | /dav/spaces/<> | + @issue-1976 + Scenario Outline: try to move a file into same folder with same name + And user "Alice" has uploaded file with content "some data" to "textfile.txt" + And we save it into "FILEID" + When user "Alice" moves a file "textfile.txt" into "/" inside space "Personal" using file-id path "" + Then the HTTP status code should be "403" + And as "Alice" file "textfile.txt" should not exist in the trashbin of the space "Personal" + And for user "Alice" the content of the file "textfile.txt" of the space "Personal" should be "some data" + Examples: + | dav-path | + | /remote.php/dav/spaces/<> | + | /dav/spaces/<> | + Scenario Outline: move a file from personal to share space Given user "Brian" has been created with default attributes and without skeleton files @@ -163,6 +176,29 @@ Feature: moving/renaming file using file id | manager | /dav/spaces/<> | | editor | /dav/spaces/<> | + @issue-1976 + Scenario Outline: try to move a file within a project space into a folder with same name + Given 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 "project-space" with the default quota using the Graph API + And user "Alice" has uploaded a file inside space "project-space" with content "some data" to "textfile.txt" + And we save it into "FILEID" + And user "Alice" has shared a space "project-space" with settings: + | shareWith | Brian | + | role | | + When user "Brian" moves a file "textfile.txt" into "/" inside space "project-space" using file-id path "" + Then the HTTP status code should be "403" + And as "Alice" file "textfile.txt" should not exist in the trashbin of the space "project-space" + And for user "Brian" the content of the file "textfile.txt" of the space "project-space" should be "some data" + Examples: + | role | dav-path | + | manager | /remote.php/dav/spaces/<> | + | editor | /remote.php/dav/spaces/<> | + | viewer | /remote.php/dav/spaces/<> | + | manager | /dav/spaces/<> | + | editor | /dav/spaces/<> | + | viewer | /dav/spaces/<> | + Scenario Outline: try to move a file into a folder inside project space (viewer) Given the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API @@ -409,6 +445,27 @@ Feature: moving/renaming file using file id | change | /remote.php/dav/spaces/<> | | change | /dav/spaces/<> | + @issue-1976 + Scenario Outline: sharee tries to move a file into same shared folder with same name + Given user "Brian" has been created with default attributes and without skeleton files + And user "Alice" has created folder "folder" + And user "Alice" has uploaded file with content "some data" to "folder/test.txt" + And we save it into "FILEID" + And user "Alice" has shared folder "folder" with user "Brian" with permissions "" + When user "Brian" moves a file "Shares/folder/test.txt" into "folder" inside space "Shares" using file-id path "" + Then the HTTP status code should be "403" + And as "Alice" file "test.txt" should not exist in the trashbin of the space "Personal" + And for user "Brian" the content of the file "folder/test.txt" of the space "Shares" should be "some data" + And for user "Alice" the content of the file "folder/test.txt" of the space "Personal" should be "some data" + Examples: + | permissions | dav-path | + | all | /remote.php/dav/spaces/<> | + | all | /dav/spaces/<> | + | change | /remote.php/dav/spaces/<> | + | change | /dav/spaces/<> | + | read | /remote.php/dav/spaces/<> | + | read | /dav/spaces/<> | + Scenario Outline: try to move a file into a folder within a shared folder (read permissions) Given user "Brian" has been created with default attributes and without skeleton files diff --git a/tests/acceptance/features/apiSpacesShares/moveSpaces.feature b/tests/acceptance/features/apiSpacesShares/moveSpaces.feature index 8800ed320c..47130d389d 100644 --- a/tests/acceptance/features/apiSpacesShares/moveSpaces.feature +++ b/tests/acceptance/features/apiSpacesShares/moveSpaces.feature @@ -46,6 +46,24 @@ Feature: move (rename) file But for user "Alice" the space "Project" should contain these entries: | insideSpace.txt | + @issue-1976 + Scenario Outline: try to move a file within a project space into a folder with same name + Given the administrator has assigned the role "Space Admin" to user "Brian" using the Graph API + And user "Brian" has created a space "Project" with the default quota using the Graph API + And user "Brian" has uploaded a file inside space "Project" with content "some content" to "insideSpace.txt" + And user "Brian" has shared a space "Project" with settings: + | shareWith | Alice | + | role | | + When user "Alice" moves file "insideSpace.txt" from space "Project" to "insideSpace.txt" inside space "Project" using the WebDAV API + Then the HTTP status code should be "403" + And as "Brian" file "insideSpace.txt" should not exist in the trashbin of the space "Project" + And for user "Alice" the content of the file "insideSpace.txt" of the space "Project" should be "some content" + Examples: + | role | + | manager | + | editor | + | viewer | + @issue-8116 Scenario Outline: user moves a file from a space project with different a role to a space project with different role Given the administrator has assigned the role "Space Admin" to user "Brian" using the Graph API @@ -299,6 +317,22 @@ Feature: move (rename) file But for user "Alice" folder "testshare" of the space "Shares" should contain these entries: | testfile.txt | + @issue-1976 + Scenario Outline: sharee tries to move a file into same shared folder with same name + Given user "Brian" has created folder "testshare" + And user "Brian" has uploaded file with content "test file content" to "testshare/testfile.txt" + And user "Brian" has shared folder "testshare" with user "Alice" with permissions "" + When user "Alice" moves file "testshare/testfile.txt" from space "Shares" to "testshare/testfile.txt" inside space "Shares" using the WebDAV API + Then the HTTP status code should be "403" + And as "Brian" file "testfile.txt" should not exist in the trashbin of the space "Personal" + And for user "Alice" the content of the file "testshare/testfile.txt" of the space "Shares" should be "test file content" + And for user "Brian" the content of the file "testshare/testfile.txt" of the space "Personal" should be "test file content" + Examples: + | permissions | + | all | + | change | + | read | + Scenario: overwrite a file while moving in project space Given the administrator has assigned the role "Space Admin" to user "Brian" using the Graph API diff --git a/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature b/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature index 3dcd3f5365..5eba558a66 100644 --- a/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature +++ b/tests/acceptance/features/coreApiWebdavMove2/moveFile.feature @@ -107,6 +107,24 @@ Feature: move (rename) file | dav-path-version | | spaces | + @issue-1976 + Scenario Outline: try to move a file into same folder with same name + Given using DAV path + And user "Alice" has uploaded file with content "ownCloud test text file" to "testfile.txt" + When user "Alice" moves file "testfile.txt" to "testfile.txt" using the WebDAV API + Then the HTTP status code should be "403" + And as "Alice" the file with original path "testfile.txt" should not exist in the trashbin + And the content of file "testfile.txt" for user "Alice" should be "ownCloud test text file" + Examples: + | dav-path-version | + | old | + | new | + + @skipOnRevaMaster + Examples: + | dav-path-version | + | spaces | + Scenario Outline: move file into a not-existing folder Given using DAV path diff --git a/tests/acceptance/features/coreApiWebdavMove2/moveShareOnOcis.feature b/tests/acceptance/features/coreApiWebdavMove2/moveShareOnOcis.feature index 27d7e6b4a4..feba1ab4f6 100644 --- a/tests/acceptance/features/coreApiWebdavMove2/moveShareOnOcis.feature +++ b/tests/acceptance/features/coreApiWebdavMove2/moveShareOnOcis.feature @@ -261,3 +261,28 @@ Feature: move (rename) file | dav-path-version | | old | | new | + + @issue-1976 + Scenario Outline: sharee tries to move a file into same shared folder with same name + Given using DAV path + And user "Brian" has been created with default attributes and without skeleton files + And user "Brian" has created folder "testshare" + And user "Brian" has uploaded file with content "test data" to "testshare/testfile.txt" + And user "Brian" has created a share with settings + | path | testshare | + | shareType | user | + | permissions | | + | shareWith | Alice | + When user "Alice" moves folder "Shares/testshare/testfile.txt" to "Shares/testshare/testfile.txt" using the WebDAV API + Then the HTTP status code should be "403" + And as "Brian" the file with original path "testshare/testfile.txt" should not exist in the trashbin + And the content of file "Shares/testshare/testfile.txt" for user "Alice" should be "test data" + And the content of file "testshare/testfile.txt" for user "Brian" should be "test data" + Examples: + | dav-path-version | permissions | + | old | all | + | old | change | + | old | read | + | new | all | + | new | change | + | new | read |