add test to remove versions of a file using file id
Signed-off-by: prashant-gurung899 <prasantgrg777@gmail.com>
This commit is contained in:
@@ -32,6 +32,7 @@ use TestHelpers\OcisConfigHelper;
|
|||||||
*/
|
*/
|
||||||
class CliContext implements Context {
|
class CliContext implements Context {
|
||||||
private FeatureContext $featureContext;
|
private FeatureContext $featureContext;
|
||||||
|
private SpacesContext $spacesContext;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @BeforeScenario
|
* @BeforeScenario
|
||||||
@@ -45,6 +46,7 @@ class CliContext implements Context {
|
|||||||
$environment = $scope->getEnvironment();
|
$environment = $scope->getEnvironment();
|
||||||
// Get all the contexts you need in this context
|
// Get all the contexts you need in this context
|
||||||
$this->featureContext = $environment->getContext('FeatureContext');
|
$this->featureContext = $environment->getContext('FeatureContext');
|
||||||
|
$this->spacesContext = $environment->getContext('SpacesContext');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -118,6 +120,25 @@ class CliContext implements Context {
|
|||||||
$this->featureContext->setResponse(CliHelper::runCommand($body));
|
$this->featureContext->setResponse(CliHelper::runCommand($body));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @When the administrator removes the versions of file :file of user :user from space :space using the CLI
|
||||||
|
*
|
||||||
|
* @param string $file
|
||||||
|
* @param string $user
|
||||||
|
* @param string $space
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function theAdministratorRemovesTheVersionsOfFileUsingFileId($file, $user, $space) {
|
||||||
|
$path = $this->featureContext->getStorageUsersRoot();
|
||||||
|
$fileId = $this->spacesContext->getFileId($user, $space, $file);
|
||||||
|
$command = "revisions purge -p $path -r $fileId --dry-run=false";
|
||||||
|
$body = [
|
||||||
|
"command" => $command
|
||||||
|
];
|
||||||
|
$this->featureContext->setResponse(CliHelper::runCommand($body));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Then the command should be successful
|
* @Then the command should be successful
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -13,3 +13,22 @@ Feature: remove file versions via CLI command
|
|||||||
When user "Alice" gets the number of versions of file "textfile.txt"
|
When user "Alice" gets the number of versions of file "textfile.txt"
|
||||||
Then the HTTP status code should be "207"
|
Then the HTTP status code should be "207"
|
||||||
And the number of versions should be "0"
|
And the number of versions should be "0"
|
||||||
|
|
||||||
|
|
||||||
|
Scenario: remove all versions of file using file-id
|
||||||
|
Given user "Alice" has been created with default attributes and without skeleton files
|
||||||
|
And user "Alice" has uploaded file with content "This is version 1" to "randomFile.txt"
|
||||||
|
And user "Alice" has uploaded file with content "This is version 2" to "randomFile.txt"
|
||||||
|
And user "Alice" has uploaded file with content "This is version 3" to "randomFile.txt"
|
||||||
|
And user "Alice" has uploaded file with content "This is version 1" to "anotherFile.txt"
|
||||||
|
And user "Alice" has uploaded file with content "This is version 2" to "anotherFile.txt"
|
||||||
|
And user "Alice" has uploaded file with content "This is version 3" to "anotherFile.txt"
|
||||||
|
When the administrator removes the versions of file "randomFile.txt" of user "Alice" from space "Personal" using the CLI
|
||||||
|
Then the command should be successful
|
||||||
|
And the command output should contain "✅ Deleted 2 revisions (6 files / 2 blobs)"
|
||||||
|
When user "Alice" gets the number of versions of file "randomFile.txt"
|
||||||
|
Then the HTTP status code should be "207"
|
||||||
|
And the number of versions should be "0"
|
||||||
|
When user "Alice" gets the number of versions of file "anotherFile.txt"
|
||||||
|
Then the HTTP status code should be "207"
|
||||||
|
And the number of versions should be "2"
|
||||||
|
|||||||
Reference in New Issue
Block a user