diff --git a/tests/acceptance/bootstrap/SearchContext.php b/tests/acceptance/bootstrap/SearchContext.php index fc66e0c4f..e0373accd 100644 --- a/tests/acceptance/bootstrap/SearchContext.php +++ b/tests/acceptance/bootstrap/SearchContext.php @@ -182,7 +182,11 @@ class SearchContext implements Context { $property['value'], $user ); - $fileResultProperty = $fileResult->xpath("d:propstat//" . $property['name']); + if (is_object($fileResult)) { + $fileResultProperty = $fileResult->xpath("d:propstat//" . $property['name']); + } else { + throw new Exception("Expected fileResult to be an object, but found " . gettype($fileResult)); + } if ($fileResultProperty) { Assert::assertMatchesRegularExpression( "/" . $property['value'] . "/", diff --git a/tests/acceptance/bootstrap/WebDav.php b/tests/acceptance/bootstrap/WebDav.php index c3a9f73d4..1b167642e 100644 --- a/tests/acceptance/bootstrap/WebDav.php +++ b/tests/acceptance/bootstrap/WebDav.php @@ -4594,11 +4594,7 @@ trait WebDav { // do not try to parse the resource path // if the item to search is space itself if (!GraphHelper::isSpaceId($entryNameToSearch ?? '')) { - $resourcePath = \substr($resourcePath, \strpos($resourcePath, '/') + 1); - } - if (\count($shareRootXml)) { - $shareroot = \trim((string)$shareRootXml[0], "/"); - $resourcePath = $shareroot . "/" . $resourcePath; + $resourcePath = basename($resourcePath); } $resourcePath = \rawurldecode($resourcePath); if ($entryNameToSearch === $resourcePath) { diff --git a/tests/acceptance/expected-failures-API-on-decomposed-storage.md b/tests/acceptance/expected-failures-API-on-decomposed-storage.md index 633d717ee..dc2e5c45c 100644 --- a/tests/acceptance/expected-failures-API-on-decomposed-storage.md +++ b/tests/acceptance/expected-failures-API-on-decomposed-storage.md @@ -63,15 +63,6 @@ _ocdav: api compatibility, return correct status code_ - [coreApiAuth/webDavLOCKAuth.feature:46](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiAuth/webDavLOCKAuth.feature#L46) - [coreApiAuth/webDavLOCKAuth.feature:58](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiAuth/webDavLOCKAuth.feature#L58) -#### [Missing properties in REPORT response](https://github.com/owncloud/ocis/issues/9780), [d:getetag property has empty value in REPORT response](https://github.com/opencloud-eu/opencloud/issues/9783) - -- [coreApiWebdavOperations/search.feature:180](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L180) -- [coreApiWebdavOperations/search.feature:181](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L181) -- [coreApiWebdavOperations/search.feature:182](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L182) -- [coreApiWebdavOperations/search.feature:208](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L208) -- [coreApiWebdavOperations/search.feature:209](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L209) -- [coreApiWebdavOperations/search.feature:210](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L210) - #### [Support for favorites](https://github.com/owncloud/ocis/issues/1228) - [coreApiFavorites/favorites.feature:101](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiFavorites/favorites.feature#L101) @@ -158,23 +149,6 @@ _ocdav: api compatibility, return correct status code_ - [coreApiWebdavProperties/copyFile.feature:1095](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavProperties/copyFile.feature#L1095) - [coreApiWebdavProperties/copyFile.feature:1096](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavProperties/copyFile.feature#L1096) -#### [same href in REPORT request for all dav-path-version](https://github.com/owncloud/ocis/issues/7060) - -- [coreApiWebdavOperations/search.feature:42](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L42) -- [coreApiWebdavOperations/search.feature:43](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L43) -- [coreApiWebdavOperations/search.feature:60](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L60) -- [coreApiWebdavOperations/search.feature:61](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L61) -- [coreApiWebdavOperations/search.feature:79](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L79) -- [coreApiWebdavOperations/search.feature:80](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L80) -- [coreApiWebdavOperations/search.feature:110](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L110) -- [coreApiWebdavOperations/search.feature:111](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L111) -- [coreApiWebdavOperations/search.feature:130](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L130) -- [coreApiWebdavOperations/search.feature:131](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L131) -- [coreApiWebdavOperations/search.feature:151](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L151) -- [coreApiWebdavOperations/search.feature:152](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L152) -- [coreApiWebdavOperations/search.feature:229](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L229) -- [coreApiWebdavOperations/search.feature:230](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L230) - #### [Trying to restore personal file to file of share received folder returns 403 but the share file is deleted (new dav path)](https://github.com/owncloud/ocis/issues/10356) - [coreApiTrashbin/trashbinSharingToShares.feature:277](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiTrashbin/trashbinSharingToShares.feature#L277) diff --git a/tests/acceptance/expected-failures-localAPI-on-decomposed-storage.md b/tests/acceptance/expected-failures-localAPI-on-decomposed-storage.md index 03a5821e8..0919abd5b 100644 --- a/tests/acceptance/expected-failures-localAPI-on-decomposed-storage.md +++ b/tests/acceptance/expected-failures-localAPI-on-decomposed-storage.md @@ -184,67 +184,6 @@ - [apiOcm/deleteFederatedConnections.feature:102](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiOcm/deleteFederatedConnections.feature#L102) -#### [same href in REPORT request for all dav-path-version](https://github.com/owncloud/ocis/issues/7060) - -- [apiSearch1/dateSearch.feature:17](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/dateSearch.feature#L17) -- [apiSearch1/dateSearch.feature:18](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/dateSearch.feature#L18) -- [apiSearch1/search.feature:41](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L41) -- [apiSearch1/search.feature:42](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L42) -- [apiSearch1/search.feature:69](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L69) -- [apiSearch1/search.feature:70](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L70) -- [apiSearch1/search.feature:111](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L111) -- [apiSearch1/search.feature:112](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L112) -- [apiSearch1/search.feature:197](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L197) -- [apiSearch1/search.feature:198](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L198) -- [apiSearch1/search.feature:221](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L221) -- [apiSearch1/search.feature:222](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L222) -- [apiSearch1/search.feature:242](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L242) -- [apiSearch1/search.feature:243](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L243) -- [apiSearch1/search.feature:260](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L260) -- [apiSearch1/search.feature:261](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L261) -- [apiSearch1/search.feature:278](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L278) -- [apiSearch1/search.feature:279](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L279) -- [apiSearch1/search.feature:302](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L302) -- [apiSearch1/search.feature:303](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L303) -- [apiSearch1/search.feature:354](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L354) -- [apiSearch1/search.feature:355](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L355) -- [apiSearch2/tagSearch.feature:34](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L34) -- [apiSearch2/tagSearch.feature:35](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L35) -- [apiSearch2/tagSearch.feature:62](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L62) -- [apiSearch2/tagSearch.feature:63](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L63) -- [apiSearch2/tagSearch.feature:87](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L87) -- [apiSearch2/tagSearch.feature:88](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L88) -- [apiSearch2/tagSearch.feature:110](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L110) -- [apiSearch2/tagSearch.feature:111](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L111) -- [apiSearch2/tagSearch.feature:144](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L144) -- [apiSearch2/tagSearch.feature:145](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L145) -- [apiSearch2/tagSearch.feature:182](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L182) -- [apiSearch2/tagSearch.feature:183](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L183) -- [apiSearch2/tagSearch.feature:222](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L222) -- [apiSearch2/tagSearch.feature:223](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L223) -- [apiSearch2/tagSearch.feature:241](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L241) -- [apiSearch2/tagSearch.feature:242](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L242) -- [apiSearchContent/contentSearch.feature:25](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L25) -- [apiSearchContent/contentSearch.feature:26](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L26) -- [apiSearchContent/contentSearch.feature:49](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L49) -- [apiSearchContent/contentSearch.feature:50](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L50) -- [apiSearchContent/contentSearch.feature:82](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L82) -- [apiSearchContent/contentSearch.feature:83](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L83) -- [apiSearchContent/contentSearch.feature:110](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L110) -- [apiSearchContent/contentSearch.feature:111](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L111) -- [apiSearchContent/contentSearch.feature:129](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L129) -- [apiSearchContent/contentSearch.feature:130](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L130) -- [apiSearchContent/contentSearch.feature:146](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L146) -- [apiSearchContent/contentSearch.feature:147](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L147) -- [apiSearchContent/contentSearch.feature:162](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L162) -- [apiSearchContent/contentSearch.feature:163](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L163) -- [apiSearchContent/contentSearch.feature:185](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L185) -- [apiSearchContent/contentSearch.feature:186](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L186) -- [apiSearchContent/contentSearch.feature:214](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L214) -- [apiSearchContent/contentSearch.feature:215](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L215) -- [apiSearchContent/contentSearch.feature:266](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L266) -- [apiSearchContent/contentSearch.feature:267](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L267) - #### [Shares Jail PROPFIND returns different File IDs for the same item](https://github.com/owncloud/ocis/issues/9933) - [apiSharingNg1/propfindShares.feature:149](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSharingNg1/propfindShares.feature#L149) @@ -257,11 +196,21 @@ - [apiAntivirus/antivirus.feature:309](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiAntivirus/antivirus.feature#L309) - [apiAntivirus/antivirus.feature:310](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiAntivirus/antivirus.feature#L310) - [apiAntivirus/antivirus.feature:311](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiAntivirus/antivirus.feature#L310) -- [apiNotification/deprovisioningNotification.feature:128](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiNotification/deprovisioningNotification.feature#L128) +- [apiNotification/deprovisioningNotification.feature:127](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiNotification/deprovisioningNotification.feature#L127) - [apiNotification/notification.feature:284](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiNotification/notification.feature#L284) - [apiNotification/notification.feature:285](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiNotification/notification.feature#L285) - [apiNotification/spaceNotification.feature:435](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiNotification/spaceNotification.feature#435) +#### [Missing properties in REPORT response](https://github.com/owncloud/ocis/issues/9780), [d:getetag property has empty value in REPORT response](https://github.com/owncloud/ocis/issues/9783) + +- [apiSearch1/search.feature:437](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L437) +- [apiSearch1/search.feature:438](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L438) +- [apiSearch1/search.feature:439](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L439) +- [apiSearch1/search.feature:465](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L465) +- [apiSearch1/search.feature:466](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L466) +- [apiSearch1/search.feature:467](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L467) + + 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-without-remotephp.md b/tests/acceptance/expected-failures-without-remotephp.md index 95d9982eb..99b7eb15e 100644 --- a/tests/acceptance/expected-failures-without-remotephp.md +++ b/tests/acceptance/expected-failures-without-remotephp.md @@ -25,14 +25,8 @@ - [apiSearch1/dateSearch.feature:48](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/dateSearch.feature#L48) - [apiSearch1/dateSearch.feature:50](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/dateSearch.feature#L50) - [apiSearch1/dateSearch.feature:53](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/dateSearch.feature#L53) -- [apiSearch1/search.feature:43](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L43) -- [apiSearch1/search.feature:71](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L71) - [apiSearch1/search.feature:113](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L113) - [apiSearch1/search.feature:176](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L176) -- [apiSearch1/search.feature:199](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L199) -- [apiSearch1/search.feature:223](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L223) -- [apiSearch1/search.feature:244](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L244) -- [apiSearch1/search.feature:262](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L262) - [apiSearch1/search.feature:280](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L280) - [apiSearch1/search.feature:304](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L304) - [apiSearch1/search.feature:317](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L317) @@ -42,6 +36,14 @@ - [apiSearch1/search.feature:321](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L321) - [apiSearch1/search.feature:324](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L324) - [apiSearch1/search.feature:356](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L356) +- [apiSearch1/search.feature:396](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L396) +- [apiSearch1/search.feature:410](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L410) +- [apiSearch1/search.feature:437](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L437) +- [apiSearch1/search.feature:438](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L438) +- [apiSearch1/search.feature:439](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L439) +- [apiSearch1/search.feature:465](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L465) +- [apiSearch1/search.feature:466](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L466) +- [apiSearch1/search.feature:467](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch1/search.feature#L467) - [apiSearch2/mediaTypeSearch.feature:31](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/mediaTypeSearch.feature#L31) - [apiSearch2/mediaTypeSearch.feature:32](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/mediaTypeSearch.feature#L32) - [apiSearch2/mediaTypeSearch.feature:33](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/mediaTypeSearch.feature#L33) @@ -89,48 +91,41 @@ - [apiSearch2/mediaTypeSearch.feature:169](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/mediaTypeSearch.feature#L169) - [apiSearch2/mediaTypeSearch.feature:172](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/mediaTypeSearch.feature#L172) - [apiSearch2/tagSearch.feature:36](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L36) -- [apiSearch2/tagSearch.feature:68](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L68) -- [apiSearch2/tagSearch.feature:89](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L89) -- [apiSearch2/tagSearch.feature:116](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L116) -- [apiSearch2/tagSearch.feature:150](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L150) -- [apiSearch2/tagSearch.feature:188](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L188) -- [apiSearch2/tagSearch.feature:224](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L224) -- [apiSearch2/tagSearch.feature:243](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L243) -- [apiSearch2/tagSearch.feature:271](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L271) -- [apiSearch2/tagSearch.feature:272](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L272) -- [apiSearch2/tagSearch.feature:273](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L273) -- [apiSearch2/tagSearch.feature:274](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L274) -- [apiSearch2/tagSearch.feature:275](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L275) -- [apiSearch2/tagSearch.feature:276](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L276) -- [apiSearch2/tagSearch.feature:277](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L277) -- [apiSearch2/tagSearch.feature:278](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L278) -- [apiSearch2/tagSearch.feature:279](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L279) -- [apiSearch2/tagSearch.feature:280](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L280) -- [apiSearch2/tagSearch.feature:282](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L282) +- [apiSearch2/tagSearch.feature:64](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L64) +- [apiSearch2/tagSearch.feature:85](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L85) +- [apiSearch2/tagSearch.feature:108](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L108) +- [apiSearch2/tagSearch.feature:138](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L138) +- [apiSearch2/tagSearch.feature:172](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L172) +- [apiSearch2/tagSearch.feature:207](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L207) +- [apiSearch2/tagSearch.feature:226](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L226) +- [apiSearch2/tagSearch.feature:254](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L254) +- [apiSearch2/tagSearch.feature:255](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L255) +- [apiSearch2/tagSearch.feature:256](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L256) +- [apiSearch2/tagSearch.feature:257](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L257) +- [apiSearch2/tagSearch.feature:258](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L258) +- [apiSearch2/tagSearch.feature:259](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L259) +- [apiSearch2/tagSearch.feature:260](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L260) +- [apiSearch2/tagSearch.feature:261](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L261) +- [apiSearch2/tagSearch.feature:262](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L262) +- [apiSearch2/tagSearch.feature:263](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L263) +- [apiSearch2/tagSearch.feature:265](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearch2/tagSearch.feature#L265) - [apiSearchContent/contentSearch.feature:27](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L27) - [apiSearchContent/contentSearch.feature:51](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L51) - [apiSearchContent/contentSearch.feature:84](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L84) - [apiSearchContent/contentSearch.feature:112](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L112) - [apiSearchContent/contentSearch.feature:131](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L131) -- [apiSearchContent/contentSearch.feature:148](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L148) -- [apiSearchContent/contentSearch.feature:164](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L164) -- [apiSearchContent/contentSearch.feature:187](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L187) -- [apiSearchContent/contentSearch.feature:216](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L216) +- [apiSearchContent/contentSearch.feature:147](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L147) +- [apiSearchContent/contentSearch.feature:163](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L163) +- [apiSearchContent/contentSearch.feature:186](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L186) +- [apiSearchContent/contentSearch.feature:215](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L215) +- [apiSearchContent/contentSearch.feature:233](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L233) - [apiSearchContent/contentSearch.feature:234](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L234) - [apiSearchContent/contentSearch.feature:235](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L235) - [apiSearchContent/contentSearch.feature:236](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L236) - [apiSearchContent/contentSearch.feature:237](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L237) - [apiSearchContent/contentSearch.feature:238](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L238) -- [apiSearchContent/contentSearch.feature:239](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L239) -- [apiSearchContent/contentSearch.feature:268](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L268) +- [apiSearchContent/contentSearch.feature:267](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/apiSearchContent/contentSearch.feature#L267) - [cliCommands/searchReIndex.feature:15](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/cliCommands/searchReIndex.feature#L15) -- [coreApiWebdavOperations/search.feature:44](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L44) -- [coreApiWebdavOperations/search.feature:62](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L62) -- [coreApiWebdavOperations/search.feature:81](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L81) -- [coreApiWebdavOperations/search.feature:112](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L112) -- [coreApiWebdavOperations/search.feature:132](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L132) -- [coreApiWebdavOperations/search.feature:153](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L153) -- [coreApiWebdavOperations/search.feature:231](https://github.com/opencloud-eu/opencloud/blob/main/tests/acceptance/features/coreApiWebdavOperations/search.feature#L231) #### [Downloading public files without remote.php returns 401 unauthorized error](https://github.com/owncloud/ocis/issues/9724) diff --git a/tests/acceptance/features/apiContract/spacesReport.feature b/tests/acceptance/features/apiContract/spacesReport.feature index 4ab6e5279..0688e2d9b 100644 --- a/tests/acceptance/features/apiContract/spacesReport.feature +++ b/tests/acceptance/features/apiContract/spacesReport.feature @@ -18,7 +18,7 @@ Feature: REPORT request to project space When user "Alice" searches for "testFile.txt" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /testFile.txt | + | testFile.txt | And the following headers should match these regular expressions | X-Request-Id | %request_id_pattern% | And as user "Alice" the REPORT response should contain a resource "testFile.txt" with these key and value pairs: @@ -37,7 +37,7 @@ Feature: REPORT request to project space When user "Alice" searches for "insideTheFolder.txt" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /folderMain/SubFolder1/subFOLDER2/insideTheFolder.txt | + | insideTheFolder.txt | And the following headers should match these regular expressions | X-Request-Id | %request_id_pattern% | And as user "Alice" the REPORT response should contain a resource "insideTheFolder.txt" with these key and value pairs: @@ -55,7 +55,7 @@ Feature: REPORT request to project space When user "Alice" searches for "folderMain" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /folderMain | + | folderMain | And the following headers should match these regular expressions | X-Request-Id | %request_id_pattern% | And as user "Alice" the REPORT response should contain a resource "folderMain" with these key and value pairs: @@ -73,7 +73,7 @@ Feature: REPORT request to project space When user "Alice" searches for "*sub*" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /folderMain/sub-folder | + | sub-folder | And the following headers should match these regular expressions | X-Request-Id | %request_id_pattern% | And the HTTP status code should be "207" diff --git a/tests/acceptance/features/apiNotification/deprovisioningNotification.feature b/tests/acceptance/features/apiNotification/deprovisioningNotification.feature index 5f1f2d615..3dca8b484 100644 --- a/tests/acceptance/features/apiNotification/deprovisioningNotification.feature +++ b/tests/acceptance/features/apiNotification/deprovisioningNotification.feature @@ -1,4 +1,3 @@ -@skipOnStable3.0 Feature: Deprovisioning notification As a user admin I want to inform users about shutting down and deprovisioning the instance diff --git a/tests/acceptance/features/apiSearch1/dateSearch.feature b/tests/acceptance/features/apiSearch1/dateSearch.feature index 2c3e31466..10213edc6 100644 --- a/tests/acceptance/features/apiSearch1/dateSearch.feature +++ b/tests/acceptance/features/apiSearch1/dateSearch.feature @@ -36,18 +36,18 @@ Feature: date search | | Examples: | pattern | search-result-1 | search-result-2 | search-result-3 | search-result-4 | - | Mtime:today | /today.txt | | /yesterday.txt | /lastWeek.txt | - | Mtime:yesterday | /yesterday.txt | | /today.txt | | - | Mtime:"this week" | /today.txt | | /lastWeek.txt | /lastMonth.txt | - | Mtime:"this month" | /today.txt | | /lastMonth.txt | | - | Mtime:"last month" | /lastMonth.txt | | /today.txt | | - | Mtime:"this year" | /today.txt | | /lastYear.txt | | - | Mtime:"last year" | /lastYear.txt | | /today.txt | | - | Mtime>=$today | /today.txt | | /yesterday.txt | | - | Mtime>$yesterday | /today.txt | | | | - | Mtime>=$yesterday | /today.txt | /yesterday.txt | | | + | Mtime:today | today.txt | | yesterday.txt | lastWeek.txt | + | Mtime:yesterday | yesterday.txt | | today.txt | | + | Mtime:"this week" | today.txt | | lastWeek.txt | lastMonth.txt | + | Mtime:"this month" | today.txt | | lastMonth.txt | | + | Mtime:"last month" | lastMonth.txt | | today.txt | | + | Mtime:"this year" | today.txt | | lastYear.txt | | + | Mtime:"last year" | lastYear.txt | | today.txt | | + | Mtime>=$today | today.txt | | yesterday.txt | | + | Mtime>$yesterday | today.txt | | | | + | Mtime>=$yesterday | today.txt | yesterday.txt | | | # Mtime<$today. "<" has to be escaped - | Mtime<$today | /yesterday.txt | /lastYear.txt | /today.txt | | + | Mtime<$today | yesterday.txt | lastYear.txt | today.txt | | @issue-10329 Scenario: search resources using different search patterns (KQL feature) in the shares folder @@ -65,6 +65,6 @@ Feature: date search When user "Brian" searches for "Mtime:yesterday" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Brian" should contain these entries: - | sharedFolder/yesterday.txt | + | yesterday.txt | But the search result of user "Alice" should not contain these entries: | sharedFolder | diff --git a/tests/acceptance/features/apiSearch1/search.feature b/tests/acceptance/features/apiSearch1/search.feature index 977269d2e..f37381a22 100644 --- a/tests/acceptance/features/apiSearch1/search.feature +++ b/tests/acceptance/features/apiSearch1/search.feature @@ -32,10 +32,10 @@ Feature: Search Then the HTTP status code should be "207" And the search result should contain "1" entries And the search result of user "Alice" should contain these entries: - | folderMain/SubFolder1/subFOLDER2/insideTheFolder.txt | + | insideTheFolder.txt | But the search result of user "Alice" should not contain these entries: - | /AlicePersonal/insideAlicePersonal.txt | - | /BrianPersonal/insideBrianPersonal.txt | + | insideAlicePersonal.txt | + | insideBrianPersonal.txt | Examples: | dav-path-version | | old | @@ -60,10 +60,10 @@ Feature: Search Then the HTTP status code should be "207" And the search result should contain "1" entries And the search result of user "Alice" should contain only these entries: - | AlicePersonal/insideAlicePersonal.txt | + | insideAlicePersonal.txt | But the search result of user "Alice" should not contain these entries: - | BrianPersonal/insideBrianPersonal.txt | - | folderMain/SubFolder1/subFOLDER2/insideTheFolder.txt | + | insideBrianPersonal.txt | + | insideTheFolder.txt | Examples: | dav-path-version | | old | @@ -88,9 +88,9 @@ Feature: Search Then the HTTP status code should be "207" And the search result should contain "0" entries And the search result of user "Alice" should not contain these entries: - | BrianPersonal/insideBrianPersonal.txt | - | AlicePersonal/insideAlicePersonal.txt | - | folderMain/SubFolder1/subFOLDER2/insideTheFolder.txt | + | insideBrianPersonal.txt | + | insideAlicePersonal.txt | + | insideTheFolder.txt | Examples: | dav-path-version | | old | @@ -126,9 +126,9 @@ Feature: Search Then the HTTP status code should be "207" And the search result should contain "0" entries And the search result of user "Brian" should not contain these entries: - | /SubFolder1 | - | /SubFolder1/subFOLDER2 | - | /SubFolder1/subFOLDER2/insideTheFolder.txt | + | SubFolder1 | + | subFOLDER2 | + | insideTheFolder.txt | Examples: | dav-path-version | | old | @@ -150,9 +150,9 @@ Feature: Search Then the HTTP status code should be "207" And the search result should contain "0" entries And the search result of user "Brian" should not contain these entries: - | /SubFolder1 | - | /SubFolder1/subFOLDER2 | - | /SubFolder1/subFOLDER2/insideTheFolder.txt | + | SubFolder1 | + | subFOLDER2 | + | insideTheFolder.txt | Examples: | dav-path-version | | old | @@ -187,11 +187,11 @@ Feature: Search Then the HTTP status code should be "207" And the search result should contain "3" entries And the search result of user "Alice" should contain only these entries: - | folderMain/SubFolder1 | - | folderMain/SubFolder1/subFOLDER2 | - | folderMain/SubFolder1/subFOLDER2/insideTheFolder.txt | + | SubFolder1 | + | subFOLDER2 | + | insideTheFolder.txt | But the search result of user "Alice" should not contain these entries: - | /folderMain | + | folderMain | Examples: | dav-path-version | | old | @@ -211,9 +211,9 @@ Feature: Search When user "Brian" searches for "*folder*" inside folder "/folderMain" in space "Shares" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Brian" should contain only these entries: - | folderMain/SubFolder1 | - | folderMain/SubFolder1/subFOLDER2 | - | folderMain/SubFolder1/subFOLDER2/insideTheFolder.txt | + | SubFolder1 | + | subFOLDER2 | + | insideTheFolder.txt | But the search result of user "Brian" should not contain these entries: | /folderMain | Examples: @@ -233,8 +233,8 @@ Feature: Search When user "Alice" searches for "*file*" inside folder "/Folder" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /Folder/file2.txt | - | /Folder/SubFolder/file3.txt | + | file2.txt | + | file3.txt | But the search result of user "Alice" should not contain these entries: | file1.txt | Examples: @@ -253,8 +253,8 @@ Feature: Search When user "Alice" searches for "*file*" inside folder "/New Folder" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /New Folder/file.txt | - | /New Folder/Sub Folder/file1.txt | + | file.txt | + | file1.txt | Examples: | dav-path-version | | old | @@ -270,9 +270,9 @@ Feature: Search When user "Alice" searches for "*new*" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /New Folder | - | /New Folder/New Sub Folder | - | /new file.txt | + | New Folder | + | New Sub Folder | + | new file.txt | Examples: | dav-path-version | | old | @@ -294,9 +294,9 @@ Feature: Search When user "Brian" searches for "shared*" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Brian" should contain these entries: - | foo/sharedToBrian | + | sharedToBrian | But the search result of user "Brian" should not contain these entries: - | /sharedToCarol | + | sharedToCarol | Examples: | dav-path-version | | old | @@ -313,12 +313,12 @@ Feature: Search And the search result of user "Alice" should contain these entries: | | Examples: - | pattern | search-result | description | - | fold* | /folderMain | starts with | - | *der1 | /folderMain/SubFolder1 | ends with | - | subfolder | /subfolder | exact search | - | name:*der2 | /folderMain/SubFolder1/subFOLDER2 | patern 'name:'' | - | name:"*der2" | /folderMain/SubFolder1/subFOLDER2 | pattern 'name:""' (with quotes) | + | pattern | search-result | description | + | fold* | folderMain | starts with | + | *der1 | SubFolder1 | ends with | + | subfolder | subfolder | exact search | + | name:*der2 | subFOLDER2 | patern 'name:'' | + | name:"*der2" | subFOLDER2 | pattern 'name:""' (with quotes) | @issue-7812 @issue-8442 @issue-10329 Scenario: try to search with invalid patterns @@ -346,9 +346,120 @@ Feature: Search Then the HTTP status code should be "207" And the search result should contain "3" entries And the search result of user "Alice" should contain these entries: - | AlicePersonal/insideAlicePersonal.txt | - | folderMain/SubFolder1/subFOLDER2/insideTheFolder.txt | - | BrianPersonal/insideBrianPersonal.txt | + | insideAlicePersonal.txt | + | insideTheFolder.txt | + | insideBrianPersonal.txt | + Examples: + | dav-path-version | + | old | + | new | + | spaces | + + @issue-10329 + Scenario Outline: search for files by extension + Given using DAV path + When user "Alice" searches for "*txt*" using the WebDAV API + Then the HTTP status code should be "207" + And the search result of user "Alice" should contain these entries: + | insideTheFolder.txt | + Examples: + | dav-path-version | + | old | + | new | + | spaces | + + + Scenario Outline: search with empty field + Given using DAV path + When user "Alice" searches for "" using the WebDAV API + Then the HTTP status code should be "400" + Examples: + | dav-path-version | + | old | + | new | + | spaces | + + @issue-10329 + Scenario Outline: limit returned search entries to only 1 entry + Given using DAV path + When user "Alice" searches for "*folder*" and limits the results to "1" items using the WebDAV API + Then the HTTP status code should be "207" + And the search result of user "Alice" should contain any "1" of these entries: + | insideTheFolder.txt | + | folderMain | + | SubFolder1 | + | subFOLDER2 | + Examples: + | dav-path-version | + | old | + | new | + | spaces | + + @issue-10329 + Scenario Outline: search for entry with emoji by pattern + Given using DAV path + And user "Alice" has uploaded file with content "hello world" to "upload😀 😁.txt" + When user "Alice" searches for '"*😀 😁*"' using the WebDAV API + Then the HTTP status code should be "207" + And the search result of user "Alice" should contain these entries: + | upload😀 😁.txt | + Examples: + | dav-path-version | + | old | + | new | + | spaces | + + @issue-4712 @issue-9780 @issue-9781 @issue-9783 @issue-10329 + Scenario Outline: report extra properties in search entries for a file + Given using DAV path + When user "Alice" searches for "*insideTheFo*" using the WebDAV API requesting these properties: + | oc:fileid | + | oc:permissions | + | d:getlastmodified | + | d:getetag | + | d:getcontenttype | + | oc:size | + | oc:owner-id | + | oc:owner-display-name | + Then the HTTP status code should be "207" + And file "insideTheFolder.txt" in the search result of user "Alice" should contain these properties: + | name | value | + | oc:fileid | \d* | + | oc:permissions | ^(RDNVW\|RMDNVW)$ | + | d:getlastmodified | ^[MTWFS][uedhfriatno]{2},\s(\d){2}\s[JFMAJSOND][anebrpyulgctov]{2}\s\d{4}\s\d{2}:\d{2}:\d{2} GMT$ | + | d:getetag | ^\"[a-f0-9:\.]{1,32}\"$ | + | d:getcontenttype | text\/plain | + | oc:size | 15 | + | oc:owner-id | %username% | + | oc:owner-display-name | %displayname% | + Examples: + | dav-path-version | + | old | + | new | + | spaces | + + @issue-4712 @issue-9780 @issue-9781 @issue-9783 @issue-10329 + Scenario Outline: report extra properties in search entries for a folder + Given using DAV path + When user "Alice" searches for "*folderMain*" using the WebDAV API requesting these properties: + | oc:fileid | + | oc:permissions | + | d:getlastmodified | + | d:getetag | + | d:getcontenttype | + | oc:size | + | oc:owner-id | + | oc:owner-display-name | + Then the HTTP status code should be "207" + And folder "folderMain" in the search result of user "Alice" should contain these properties: + | name | value | + | oc:fileid | \d* | + | oc:permissions | ^(RDNVCK\|RMDNVCK)$ | + | d:getlastmodified | ^[MTWFS][uedhfriatno]{2},\s(\d){2}\s[JFMAJSOND][anebrpyulgctov]{2}\s\d{4}\s\d{2}:\d{2}:\d{2} GMT$ | + | d:getetag | ^\"[a-f0-9:\.]{1,32}\"$ | + | oc:size | 0 | + | oc:owner-id | %username% | + | oc:owner-display-name | %displayname% | Examples: | dav-path-version | | old | diff --git a/tests/acceptance/features/apiSearch2/mediaTypeSearch.feature b/tests/acceptance/features/apiSearch2/mediaTypeSearch.feature index be9cdaff0..8be5bb964 100644 --- a/tests/acceptance/features/apiSearch2/mediaTypeSearch.feature +++ b/tests/acceptance/features/apiSearch2/mediaTypeSearch.feature @@ -28,15 +28,15 @@ Feature: media type search | | Examples: | pattern | search-result | - | *text* | /lorem.txt | - | *pdf* | /simple.pdf | - | *jpeg* | /testavatar.jpg | - | *png* | /testavatar.png | - | *gzip* | /data.tar.gz | - | *tar* | /data.tar | - | *7z* | /data.7z | - | *rar* | /data.rar | - | *bzip2* | /data.tar.bz2 | + | *text* | lorem.txt | + | *pdf* | simple.pdf | + | *jpeg* | testavatar.jpg | + | *png* | testavatar.png | + | *gzip* | data.tar.gz | + | *tar* | data.tar | + | *7z* | data.7z | + | *rar* | data.rar | + | *bzip2* | data.tar.bz2 | @issue-10329 Scenario Outline: search for files inside sub folders using media type @@ -56,16 +56,16 @@ Feature: media type search And the search result of user "Alice" should contain these entries: | | Examples: - | pattern | search-result | - | *text* | /uploadFolder/lorem.txt | - | *pdf* | /uploadFolder/simple.pdf | - | *jpeg* | /uploadFolder/testavatar.jpg | - | *png* | /uploadFolder/testavatar.png | - | *gzip* | /uploadFolder/data.tar.gz | - | *tar* | /uploadFolder/data.tar | - | *7z* | /uploadFolder/data.7z | - | *rar* | /uploadFolder/data.rar | - | *bzip2* | /uploadFolder/data.tar.bz2 | + | pattern | search-result | + | *text* | lorem.txt | + | *pdf* | simple.pdf | + | *jpeg* | testavatar.jpg | + | *png* | testavatar.png | + | *gzip* | data.tar.gz | + | *tar* | data.tar | + | *7z* | data.7z | + | *rar* | data.rar | + | *bzip2* | data.tar.bz2 | @issue-10329 Scenario Outline: search for file inside project space using media type @@ -87,15 +87,15 @@ Feature: media type search | | Examples: | pattern | search-result | - | *text* | /lorem.txt | - | *pdf* | /simple.pdf | - | *jpeg* | /testavatar.jpg | - | *png* | /testavatar.png | - | *gzip* | /data.tar.gz | - | *tar* | /data.tar | - | *7z* | /data.7z | - | *rar* | /data.rar | - | *bzip2* | /data.tar.bz2 | + | *text* | lorem.txt | + | *pdf* | simple.pdf | + | *jpeg* | testavatar.jpg | + | *png* | testavatar.png | + | *gzip* | data.tar.gz | + | *tar* | data.tar | + | *7z* | data.7z | + | *rar* | data.rar | + | *bzip2* | data.tar.bz2 | @issue-10329 Scenario Outline: sharee searches for shared files using media type @@ -122,16 +122,16 @@ Feature: media type search And the search result of user "Alice" should contain these entries: | | Examples: - | pattern | search-result | - | *text* | /uploadFolder/lorem.txt | - | *pdf* | /uploadFolder/simple.pdf | - | *jpeg* | /uploadFolder/testavatar.jpg | - | *png* | /uploadFolder/testavatar.png | - | *gzip* | /uploadFolder/data.tar.gz | - | *tar* | /uploadFolder/data.tar | - | *7z* | /uploadFolder/data.7z | - | *rar* | /uploadFolder/data.rar | - | *bzip2* | /uploadFolder/data.tar.bz2 | + | pattern | search-result | + | *text* | lorem.txt | + | *pdf* | simple.pdf | + | *jpeg* | testavatar.jpg | + | *png* | testavatar.png | + | *gzip* | data.tar.gz | + | *tar* | data.tar | + | *7z* | data.7z | + | *rar* | data.rar | + | *bzip2* | data.tar.bz2 | @issue-10329 Scenario Outline: space viewer searches for files using mediatype filter @@ -158,15 +158,15 @@ Feature: media type search | | Examples: | pattern | search-result | - | *text* | /lorem.txt | - | *pdf* | /simple.pdf | - | *jpeg* | /testavatar.jpg | - | *png* | /testavatar.png | - | *gzip* | /data.tar.gz | - | *tar* | /data.tar | - | *7z* | /data.7z | - | *rar* | /data.rar | - | *bzip2* | /data.tar.bz2 | + | *text* | lorem.txt | + | *pdf* | simple.pdf | + | *jpeg* | testavatar.jpg | + | *png* | testavatar.png | + | *gzip* | data.tar.gz | + | *tar* | data.tar | + | *7z* | data.7z | + | *rar* | data.rar | + | *bzip2* | data.tar.bz2 | @issue-10329 Scenario: search files with different mediatype filter diff --git a/tests/acceptance/features/apiSearch2/tagSearch.feature b/tests/acceptance/features/apiSearch2/tagSearch.feature index 5361e907d..a832a9513 100644 --- a/tests/acceptance/features/apiSearch2/tagSearch.feature +++ b/tests/acceptance/features/apiSearch2/tagSearch.feature @@ -26,9 +26,9 @@ Feature: tag search When user "Alice" searches for "Tags:tag1" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these files: - | fileInRootLevel.txt | - | folderWithFile/fileInsideFolder.txt | - | folderWithFile/subFolder/fileInsideSubFolder.txt | + | fileInRootLevel.txt | + | fileInsideFolder.txt | + | fileInsideSubFolder.txt | Examples: | dav-path-version | | old | @@ -54,17 +54,13 @@ Feature: tag search When user "Alice" searches for "Tags:tag1" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these files: - | spacesFile.txt | - | spacesFolderWithFile/spacesFileInsideFolder.txt | - | spacesFolderWithFile/spacesSubFolder/spacesFileInsideSubFolder.txt | + | spacesFile.txt | + | spacesFileInsideFolder.txt | + | spacesFileInsideSubFolder.txt | Examples: | dav-path-version | | old | | new | - - @skipOnStable3.0 - Examples: - | dav-path-version | | spaces | @issue-10329 @@ -103,16 +99,12 @@ Feature: tag search When user "Alice" searches for "Tags:tag1" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these files: - | spacesFolder | - | spacesFolder/spacesSubFolder | + | spacesFolder | + | spacesSubFolder | Examples: | dav-path-version | | old | | new | - - @skipOnStable3.0 - Examples: - | dav-path-version | | spaces | @issue-10329 @@ -137,16 +129,12 @@ Feature: tag search When user "Brian" searches for "Tags:tag1" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Brian" should contain only these files: - | uploadFolder/file1.txt | - | uploadFolder/file2.txt | + | file1.txt | + | file2.txt | Examples: | dav-path-version | | old | | new | - - @skipOnStable3.0 - Examples: - | dav-path-version | | spaces | @issue-10329 @@ -174,17 +162,13 @@ Feature: tag search When user "Brian" searches for "Tags:tag1" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these files: - | spacesFile.txt | - | spacesFolderWithFile/spacesFileInsideFolder.txt | - | spacesFolderWithFile/spacesSubFolder/spacesFileInsideSubFolder.txt | + | spacesFile.txt | + | spacesFileInsideFolder.txt | + | spacesFileInsideSubFolder.txt | Examples: | dav-path-version | | old | | new | - - @skipOnStable3.0 - Examples: - | dav-path-version | | spaces | @@ -216,10 +200,9 @@ Feature: tag search When user "Alice" searches for "Tags:tag1" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /file1.txt | + | file1.txt | Examples: | dav-path-version | - | old | | new | | spaces | @@ -234,7 +217,7 @@ Feature: tag search When user "Alice" searches for "Tags:tag1" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /file.txt | + | file.txt | And the content of file "file.txt" for user "Alice" should be "version one file" Examples: | dav-path-version | @@ -267,16 +250,16 @@ Feature: tag search | | | | Examples: - | pattern | result-count | search-result-1 | search-result-2 | - | Tags:mathe | 2 | /exercises | /answers | - | tag:mathe | 2 | /exercises | /answers | - | tag:(mathe klass10) | 2 | /exercises | /answers | - | tag:klass10 AND tag:chemi | 1 | /answers | | - | tag:chemi OR tag:physik | 2 | /exercises | /answers | - | (tag:klass10) NOT tag:physik | 2 | /answers | verification work | - | (tag:(mathe klass10)) NOT tag:chemi | 1 | /exercises | | - | (tag:mathe OR tag:klass10) NOT tag:physik | 2 | /answers | /verification work | - | tag:mathe NOT name:exercises | 1 | /answers | | - | tag:mathe AND NOT name:exercises | 1 | /answers | | + | pattern | result-count | search-result-1 | search-result-2 | + | Tags:mathe | 2 | exercises | answers | + | tag:mathe | 2 | exercises | answers | + | tag:(mathe klass10) | 2 | exercises | answers | + | tag:klass10 AND tag:chemi | 1 | answers | | + | tag:chemi OR tag:physik | 2 | exercises | answers | + | (tag:klass10) NOT tag:physik | 2 | answers | verification work | + | (tag:(mathe klass10)) NOT tag:chemi | 1 | exercises | | + | (tag:mathe OR tag:klass10) NOT tag:physik | 2 | answers | verification work | + | tag:mathe NOT name:exercises | 1 | answers | | + | tag:mathe AND NOT name:exercises | 1 | answers | | # The third finding is the personal space itself - | NOT tag:mathe | 3 | /verification work | /withoutTagFolder | + | NOT tag:mathe | 3 | verification work | withoutTagFolder | diff --git a/tests/acceptance/features/apiSearchContent/contentSearch.feature b/tests/acceptance/features/apiSearchContent/contentSearch.feature index 70e34352b..b7189c4dc 100644 --- a/tests/acceptance/features/apiSearchContent/contentSearch.feature +++ b/tests/acceptance/features/apiSearchContent/contentSearch.feature @@ -102,9 +102,9 @@ Feature: content search When user "Brian" searches for "Content:hello" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Brian" should contain only these files: - | uploadFolder/keywordAtStart.txt | - | uploadFolder/keywordAtMiddle.txt | - | uploadFolder/keywordAtLast.txt | + | keywordAtStart.txt | + | keywordAtMiddle.txt | + | keywordAtLast.txt | Examples: | dav-path-version | | old | @@ -122,8 +122,8 @@ Feature: content search When user "Alice" searches for "Content:hello" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these files: - | uploadFolder/keywordAtStart.txt | - | keywordAtMiddle.txt | + | keywordAtStart.txt | + | keywordAtMiddle.txt | Examples: | dav-path-version | | old | @@ -143,7 +143,6 @@ Feature: content search | keywordAtStart.txt | Examples: | dav-path-version | - | old | | new | | spaces | @@ -177,9 +176,9 @@ Feature: content search When user "Alice" searches for "Content:hello" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these files: - | keywordAtStart.txt | - | spacesFolderWithFile/keywordAtMiddle.txt | - | spacesFolderWithFile/spacesSubFolder/keywordAtLast.txt | + | keywordAtStart.txt | + | keywordAtMiddle.txt | + | keywordAtLast.txt | Examples: | dav-path-version | | old | @@ -206,9 +205,9 @@ Feature: content search When user "Brian" searches for "Content:hello" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these files: - | keywordAtStart.txt | - | spacesFolderWithFile/keywordAtMiddle.txt | - | spacesFolderWithFile/spacesSubFolder/keywordAtLast.txt | + | keywordAtStart.txt | + | keywordAtMiddle.txt | + | keywordAtLast.txt | Examples: | dav-path-version | | old | @@ -230,13 +229,13 @@ Feature: content search | | | | Examples: - | pattern | result-count | search-result-1 | search-result-2 | - | Content:hello | 1 | /technical task.txt | | - | content:hello | 1 | /technical task.txt | | - | content:"hello" | 1 | /technical task.txt | | - | content:hel* | 2 | /technical task.txt | /task comments.txt | - | content:hel* AND tag:test | 1 | /technical task.txt | | - | (name:*task* AND content:hel*) NOT tag:test | 1 | /task comments.txt | | + | pattern | result-count | search-result-1 | search-result-2 | + | Content:hello | 1 | technical task.txt | | + | content:hello | 1 | technical task.txt | | + | content:"hello" | 1 | technical task.txt | | + | content:hel* | 2 | technical task.txt | task comments.txt | + | content:hel* AND tag:test | 1 | technical task.txt | | + | (name:*task* AND content:hel*) NOT tag:test | 1 | task comments.txt | | @issue-10329 Scenario Outline: search across files with different format with search text highlight diff --git a/tests/acceptance/features/cliCommands/searchReIndex.feature b/tests/acceptance/features/cliCommands/searchReIndex.feature index 8615135cc..cb70bff6e 100644 --- a/tests/acceptance/features/cliCommands/searchReIndex.feature +++ b/tests/acceptance/features/cliCommands/searchReIndex.feature @@ -18,7 +18,7 @@ Feature: reindex space via CLI command When user "Alice" searches for "textfile.txt" using the WebDAV API Then the HTTP status code should be "207" And the search result of user "Alice" should contain only these entries: - | /textfile.txt | + | textfile.txt | Scenario: reindex a space diff --git a/tests/acceptance/features/coreApiWebdavOperations/search.feature b/tests/acceptance/features/coreApiWebdavOperations/search.feature deleted file mode 100644 index 470899714..000000000 --- a/tests/acceptance/features/coreApiWebdavOperations/search.feature +++ /dev/null @@ -1,231 +0,0 @@ -@issue-1330 -Feature: Search - As a user - I would like to be able to search for files - So that I can find needed files quickly - - Background: - Given user "Alice" has been created with default attributes - And user "Alice" has created folder "/just-a-folder" - And user "Alice" has created folder "/फनी näme" - And user "Alice" has created folder "/upload folder" - And user "Alice" has created folder "/upload😀 😁" - And user "Alice" has uploaded file with content "does-not-matter" to "/upload.txt" - And user "Alice" has uploaded file with content "does-not-matter" to "/a-image.png" - And user "Alice" has uploaded file with content "does-not-matter" to "/just-a-folder/upload.txt" - And user "Alice" has uploaded file with content "does-not-matter" to "/just-a-folder/lolol.txt" - And user "Alice" has uploaded file with content "does-not-matter" to "/just-a-folder/a-image.png" - And user "Alice" has uploaded file with content "does-not-matter" to "/just-a-folder/uploadÜठिF.txt" - And user "Alice" has uploaded file with content "does-not-matter" to "/फनी näme/upload.txt" - And user "Alice" has uploaded file with content "does-not-matter" to "/फनी näme/a-image.png" - And user "Alice" has uploaded file with content "does-not-matter" to "/upload😀 😁/upload😀 😁.txt" - And user "Alice" has uploaded file with content "file with comma in filename" to "/upload😀 😁/upload,1.txt" - - @smokeTest @issue-10329 - Scenario Outline: search for entry by pattern - Given using DAV path - When user "Alice" searches for "*upload*" using the WebDAV API - Then the HTTP status code should be "207" - And the search result of user "Alice" should contain these entries: - | /upload.txt | - | /just-a-folder/upload.txt | - | /upload folder | - | /just-a-folder/uploadÜठिF.txt | - | /फनी näme/upload.txt | - | /upload😀 😁 | - | /upload😀 😁/upload😀 😁.txt | - | /upload😀 😁/upload,1.txt | - But the search result of user "Alice" should not contain these entries: - | /a-image.png | - Examples: - | dav-path-version | - | old | - | new | - | spaces | - - @issue-10329 - Scenario Outline: search for entries by only some letters from the middle of the entry name - Given using DAV path - And user "Alice" has created folder "FOLDER" - When user "Alice" searches for "*ol*" using the WebDAV API - Then the HTTP status code should be "207" - And the search result should contain "4" entries - And the search result of user "Alice" should contain these entries: - | /just-a-folder | - | /upload folder | - | /FOLDER | - | /just-a-folder/lolol.txt | - Examples: - | dav-path-version | - | old | - | new | - | spaces | - - @issue-10329 - Scenario Outline: search for files by extension - Given using DAV path - When user "Alice" searches for "*png*" using the WebDAV API - Then the HTTP status code should be "207" - And the search result of user "Alice" should contain these entries: - | /a-image.png | - | /just-a-folder/a-image.png | - | /फनी näme/a-image.png | - But the search result of user "Alice" should not contain these entries: - | /upload.txt | - | /just-a-folder/upload.txt | - | /just-a-folder/uploadÜठिF.txt | - Examples: - | dav-path-version | - | old | - | new | - | spaces | - - - Scenario Outline: search with empty field - Given using DAV path - When user "Alice" searches for "" using the WebDAV API - Then the HTTP status code should be "400" - Examples: - | dav-path-version | - | old | - | new | - | spaces | - - @issue-10329 - Scenario Outline: limit returned search entries - Given using DAV path - When user "Alice" searches for "*upload*" and limits the results to "3" items using the WebDAV API - Then the HTTP status code should be "207" - And the search result of user "Alice" should contain any "3" of these entries: - | /just-a-folder/upload.txt | - | /just-a-folder/uploadÜठिF.txt | - | /upload folder | - | /upload.txt | - | /फनी näme/upload.txt | - | /upload😀 😁 | - | /upload😀 😁/upload😀 😁.txt | - | /upload😀 😁/upload,1.txt | - Examples: - | dav-path-version | - | old | - | new | - | spaces | - - @issue-10329 - Scenario Outline: limit returned search entries to only 1 entry - Given using DAV path - When user "Alice" searches for "*upload*" and limits the results to "1" items using the WebDAV API - Then the HTTP status code should be "207" - And the search result of user "Alice" should contain any "1" of these entries: - | /just-a-folder/upload.txt | - | /just-a-folder/uploadÜठिF.txt | - | /upload folder | - | /upload.txt | - | /फनी näme/upload.txt | - | /upload😀 😁 | - | /upload😀 😁/upload😀 😁.txt | - | /upload😀 😁/upload,1.txt | - Examples: - | dav-path-version | - | old | - | new | - | spaces | - - @issue-10329 - Scenario Outline: limit returned search entries to more entries than there are - Given using DAV path - When user "Alice" searches for "*upload*" and limits the results to "100" items using the WebDAV API - Then the HTTP status code should be "207" - And the search result should contain "8" entries - And the search result of user "Alice" should contain these entries: - | /upload.txt | - | /just-a-folder/upload.txt | - | /upload folder | - | /just-a-folder/uploadÜठिF.txt | - | /फनी näme/upload.txt | - | /upload😀 😁 | - | /upload😀 😁/upload😀 😁.txt | - | /upload😀 😁/upload,1.txt | - Examples: - | dav-path-version | - | old | - | new | - | spaces | - - @issue-4712 @issue-9780 @issue-9781 @issue-9783 @issue-10329 - Scenario Outline: report extra properties in search entries for a file - Given using DAV path - When user "Alice" searches for "*upload*" using the WebDAV API requesting these properties: - | oc:fileid | - | oc:permissions | - | d:getlastmodified | - | d:getetag | - | d:getcontenttype | - | oc:size | - | oc:owner-id | - | oc:owner-display-name | - Then the HTTP status code should be "207" - And file "/upload.txt" in the search result of user "Alice" should contain these properties: - | name | value | - | oc:fileid | \d* | - | oc:permissions | ^(RDNVW\|RMDNVW)$ | - | d:getlastmodified | ^[MTWFS][uedhfriatno]{2},\s(\d){2}\s[JFMAJSOND][anebrpyulgctov]{2}\s\d{4}\s\d{2}:\d{2}:\d{2} GMT$ | - | d:getetag | ^\"[a-f0-9:\.]{1,32}\"$ | - | d:getcontenttype | text\/plain | - | oc:size | 15 | - | oc:owner-id | %username% | - | oc:owner-display-name | %displayname% | - Examples: - | dav-path-version | - | old | - | new | - | spaces | - - @issue-4712 @issue-9780 @issue-9781 @issue-9783 @issue-10329 - Scenario Outline: report extra properties in search entries for a folder - Given using DAV path - When user "Alice" searches for "*upload*" using the WebDAV API requesting these properties: - | oc:fileid | - | oc:permissions | - | d:getlastmodified | - | d:getetag | - | d:getcontenttype | - | oc:size | - | oc:owner-id | - | oc:owner-display-name | - Then the HTTP status code should be "207" - And folder "/upload folder" in the search result of user "Alice" should contain these properties: - | name | value | - | oc:fileid | \d* | - | oc:permissions | ^(RDNVCK\|RMDNVCK)$ | - | d:getlastmodified | ^[MTWFS][uedhfriatno]{2},\s(\d){2}\s[JFMAJSOND][anebrpyulgctov]{2}\s\d{4}\s\d{2}:\d{2}:\d{2} GMT$ | - | d:getetag | ^\"[a-f0-9:\.]{1,32}\"$ | - | oc:size | 0 | - | oc:owner-id | %username% | - | oc:owner-display-name | %displayname% | - Examples: - | dav-path-version | - | old | - | new | - | spaces | - - @issue-10329 - Scenario Outline: search for entry with emoji by pattern - Given using DAV path - When user "Alice" searches for '"*😀 😁*"' using the WebDAV API - Then the HTTP status code should be "207" - And the search result of user "Alice" should contain these entries: - | /upload😀 😁 | - | /upload😀 😁/upload😀 😁.txt | - But the search result of user "Alice" should not contain these entries: - | /a-image.png | - | /upload.txt | - | /just-a-folder/upload.txt | - | /upload folder | - | /just-a-folder/uploadÜठिF.txt | - | /फनी näme/upload.txt | - Examples: - | dav-path-version | - | old | - | new | - | spaces |