diff --git a/tests/acceptance/features/apiSpaces/favorite.feature b/tests/acceptance/features/apiSpaces/favorite.feature index 5034e857a..467fe4295 100644 --- a/tests/acceptance/features/apiSpaces/favorite.feature +++ b/tests/acceptance/features/apiSpaces/favorite.feature @@ -15,7 +15,7 @@ Feature: favorite And user "Brian" has accepted share "/PARENT" offered by user "Alice" When user "Brian" favorites element "/PARENT" in space "Shares Jail" using the WebDAV API Then the HTTP status code should be "207" - And as user "Brian" folder "/PARENT" inside space "Shares Jail" should contain a property "oc:favorite" with value "1" + And as user "Brian" folder "/PARENT" inside space "Shares Jail" should be favorited Scenario: favorite a file inside of a received share @@ -24,7 +24,7 @@ Feature: favorite And user "Brian" has accepted share "/PARENT" offered by user "Alice" When user "Brian" favorites element "/PARENT/parent.txt" in space "Shares Jail" using the WebDAV API Then the HTTP status code should be "207" - And as user "Brian" file "/PARENT/parent.txt" inside space "Shares Jail" should contain a property "oc:favorite" with value "1" + And as user "Brian" file "/PARENT/parent.txt" inside space "Shares Jail" should be favorited Scenario: favorite a folder inside of a received share @@ -33,7 +33,7 @@ Feature: favorite And user "Brian" has accepted share "/PARENT" offered by user "Alice" When user "Brian" favorites element "/PARENT/sub-folder" in space "Shares Jail" using the WebDAV API Then the HTTP status code should be "207" - And as user "Brian" folder "/PARENT/sub-folder" inside space "Shares Jail" should contain a property "oc:favorite" with value "1" + And as user "Brian" folder "/PARENT/sub-folder" inside space "Shares Jail" should be favorited Scenario: sharee file favorite state should not change the favorite state of sharer @@ -42,5 +42,5 @@ Feature: favorite And user "Brian" has accepted share "/parent.txt" offered by user "Alice" When user "Brian" favorites element "/parent.txt" in space "Shares Jail" using the WebDAV API Then the HTTP status code should be "207" - And as user "Brian" file "/parent.txt" inside space "Shares Jail" should contain a property "oc:favorite" with value "1" - And as user "Alice" file "/PARENT/parent.txt" inside space "Personal" should contain a property "oc:favorite" with value "0" + And as user "Brian" file "/parent.txt" inside space "Shares Jail" should be favorited + And as user "Alice" file "/PARENT/parent.txt" inside space "Personal" should not be favorited diff --git a/tests/acceptance/features/bootstrap/SpacesContext.php b/tests/acceptance/features/bootstrap/SpacesContext.php index 6b8004a9f..5e816e23c 100644 --- a/tests/acceptance/features/bootstrap/SpacesContext.php +++ b/tests/acceptance/features/bootstrap/SpacesContext.php @@ -3192,48 +3192,20 @@ class SpacesContext implements Context { $this->featureContext->setResponseXmlObject($responseXml); } - /** - * @Then /^as user "([^"]*)" (?:file|folder|entry|resource) "([^"]*)" inside space "([^"]*)" should contain a property "([^"]*)" with value "([^"]*)"$/ - * - * @param string $user - * @param string $resourceName - * @param string $spaceName - * @param string $property - * @param string $expectedValue - * - * @return void - * - * @throws Exception|GuzzleException - */ - public function asUserFileInsideSpaceShouldContainAPropertyWithValue( - string $user, - string $resourceName, - string $spaceName, - string $property, - string $expectedValue - ):void { - $space = $this->getSpaceByName($user, $spaceName); - $fullUrl = $space["root"]["webDavUrl"] . '/' . ltrim($resourceName, "/"); - $body = WebDavHelper::getBodyForPropfind([$property]); - $headers['Depth'] = '1'; - $this->featureContext->setResponse( - $this->sendPropfindRequestToUrl( - $fullUrl, - $user, - $this->featureContext->getPasswordForUser($user), - '', - $headers, - $body - ) - ); - $responseXml = $this->featureContext->getResponseXml(null, __METHOD__); - $this->featureContext->setResponseXmlObject($responseXml); - $this->webDavPropertiesContext->checkSingleResponseContainsAPropertyWithValueAndAlternative( - $property, - $expectedValue, - $expectedValue - ); - } + /** + * @Then /^as user "([^"]*)" (?:file|folder|entry) "([^"]*)" inside space "([^"]*)" (should|should not) be favorited$/ + * + * @param string $user + * @param string $path + * @param string $spaceName + * @param string $shouldOrNot + * + * @return void + */ + public function asUserFileOrFolderInsideSpaceShouldOrNotBeFavorited(string $user, string $path, string $spaceName, string $shouldOrNot):void { + $this->setSpaceIDByName($user, $spaceName); + $this->favoritesContext->asUserFileOrFolderShouldBeFavorited($user, $path, ($shouldOrNot === 'should') ? 1 : 0); + } /** * @When /^user "([^"]*)" favorites element "([^"]*)" in space "([^"]*)" using the WebDAV API$/