Merge pull request #9630 from owncloud/tests/cli_search_re-index_cmd_for_spaces

[tests-only][full-ci] search: reindex command for spaces
This commit is contained in:
Sawjan Gurung
2024-07-19 11:37:37 +05:45
committed by GitHub
3 changed files with 66 additions and 0 deletions
+2
View File
@@ -401,6 +401,8 @@ default:
- OcisConfigContext:
- FilesVersionsContext:
- SharingNgContext:
- SearchContext:
- TagContext:
extensions:
rdx\behatvars\BehatVariablesExtension: ~
@@ -139,6 +139,35 @@ class CliContext implements Context {
$this->featureContext->setResponse(CliHelper::runCommand($body));
}
/**
* @When /^the administrator reindexes all spaces using the CLI$/
*
* @return void
*/
public function theAdministratorReindexesAllSpacesUsingTheCli(): void {
$command = "search index --all-spaces";
$body = [
"command" => $command
];
$this->featureContext->setResponse(CliHelper::runCommand($body));
}
/**
* @When /^the administrator reindexes a space "([^"]*)" using the CLI$/
*
* @param string $spaceName
*
* @return void
*/
public function theAdministratorReindexesASpaceUsingTheCli(string $spaceName): void {
$spaceId = $this->spacesContext->getSpaceIdByName($this->featureContext->getAdminUsername(), $spaceName);
$command = "search index --space $spaceId";
$body = [
"command" => $command
];
$this->featureContext->setResponse(CliHelper::runCommand($body));
}
/**
* @Then the command should be successful
*
@@ -0,0 +1,35 @@
@env-config
Feature: reindex space via CLI command
As an admin
I want to reindex space
So that I can improve search performance by ensuring that the index is up-to-date
Background:
Given user "Alice" has been created with default attributes and without skeleton files
And using spaces DAV path
And the administrator has assigned the role "Space Admin" to user "Alice" using the Graph API
And user "Alice" has created a space "new-space" with the default quota using the Graph API
And user "Alice" has uploaded a file inside space "new-space" with content "some data" to "textfile.txt"
And using new DAV path
Scenario: reindex all spaces
When the administrator reindexes all spaces using the CLI
Then the command should be successful
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 |
Scenario: reindex a space
Given using spaces DAV path
And user "Alice" has created the following tags for file "textfile.txt" of the space "new-space":
| tag1 |
And user "Alice" has removed the following tags for file "textfile.txt" of space "new-space":
| tag1 |
When the administrator reindexes a space "new-space" using the CLI
Then the command should be successful
When user "Alice" searches for "Tags:tag1" using the WebDAV API
Then the HTTP status code should be "207"
And the search result should contain "0" entries