mirror of
https://github.com/nextcloud/server.git
synced 2026-04-15 22:11:17 -04:00
test(ExternalStorage): Send basic auth during integrations tests
Signed-off-by: Louis Chemineau <louis@chmn.me>
This commit is contained in:
parent
512f3caf57
commit
d6fa2100e1
2 changed files with 38 additions and 19 deletions
|
|
@ -48,7 +48,7 @@ trait ExternalStorage {
|
|||
* @param TableNode $fields
|
||||
*/
|
||||
public function loggedInUserCreatesExternalGlobalStorage(TableNode $fields): void {
|
||||
$this->sendJsonWithRequestToken('POST', '/index.php/apps/files_external/globalstorages', $fields);
|
||||
$this->sendJsonWithRequestTokenAndBasicAuth('POST', '/index.php/apps/files_external/globalstorages', $fields);
|
||||
$this->theHTTPStatusCodeShouldBe('201');
|
||||
|
||||
$this->lastExternalStorageData = json_decode($this->response->getBody(), $asAssociativeArray = true);
|
||||
|
|
@ -62,7 +62,7 @@ trait ExternalStorage {
|
|||
* @param TableNode $fields
|
||||
*/
|
||||
public function loggedInUserUpdatesLastExternalUserglobalStorage(TableNode $fields): void {
|
||||
$this->sendJsonWithRequestToken('PUT', '/index.php/apps/files_external/userglobalstorages/' . $this->lastExternalStorageData['id'], $fields);
|
||||
$this->sendJsonWithRequestTokenAndBasicAuth('PUT', '/index.php/apps/files_external/userglobalstorages/' . $this->lastExternalStorageData['id'], $fields);
|
||||
$this->theHTTPStatusCodeShouldBe('200');
|
||||
|
||||
$this->lastExternalStorageData = json_decode($this->response->getBody(), $asAssociativeArray = true);
|
||||
|
|
@ -100,4 +100,23 @@ trait ExternalStorage {
|
|||
];
|
||||
$this->sendingAToWithRequesttoken($method, $url, $body);
|
||||
}
|
||||
|
||||
private function sendJsonWithRequestTokenAndBasicAuth(string $method, string $url, TableNode $fields): void {
|
||||
$isFirstField = true;
|
||||
$fieldsAsJsonString = '{';
|
||||
foreach ($fields->getRowsHash() as $key => $value) {
|
||||
$fieldsAsJsonString .= ($isFirstField ? '' : ',') . '"' . $key . '":' . $value;
|
||||
$isFirstField = false;
|
||||
}
|
||||
$fieldsAsJsonString .= '}';
|
||||
|
||||
$body = [
|
||||
'headers' => [
|
||||
'Content-Type' => 'application/json',
|
||||
'Authorization' => 'Basic ' . base64_encode('admin:admin'),
|
||||
],
|
||||
'body' => $fieldsAsJsonString,
|
||||
];
|
||||
$this->sendingAToWithRequesttoken($method, $url, $body);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,14 +17,14 @@ Feature: external-storage
|
|||
And As an "user1"
|
||||
And accepting last share
|
||||
When creating a share with
|
||||
| path | foo |
|
||||
| shareType | 3 |
|
||||
| path | foo |
|
||||
| shareType | 3 |
|
||||
Then the OCS status code should be "100"
|
||||
And the HTTP status code should be "200"
|
||||
And Share fields of last share match with
|
||||
| id | A_NUMBER |
|
||||
| url | AN_URL |
|
||||
| token | A_TOKEN |
|
||||
| id | A_NUMBER |
|
||||
| url | AN_URL |
|
||||
| token | A_TOKEN |
|
||||
| mimetype | httpd/unix-directory |
|
||||
|
||||
Scenario: Shares don't overwrite external storage
|
||||
|
|
@ -69,9 +69,9 @@ Feature: external-storage
|
|||
Scenario: Save an external storage with password provided by user
|
||||
Given Logging in using web as "admin"
|
||||
And logged in user creates external global storage
|
||||
| mountPoint | "ExternalStorageTest" |
|
||||
| backend | "owncloud" |
|
||||
| authMechanism | "password::userprovided" |
|
||||
| mountPoint | "ExternalStorageTest" |
|
||||
| backend | "owncloud" |
|
||||
| authMechanism | "password::userprovided" |
|
||||
| backendOptions | {"host":"http://localhost:8080","secure":false} |
|
||||
And fields of last external storage match with
|
||||
| status | 2 |
|
||||
|
|
@ -83,9 +83,9 @@ Feature: external-storage
|
|||
Scenario: Save an external storage again with an unmodified password provided by user
|
||||
Given Logging in using web as "admin"
|
||||
And logged in user creates external global storage
|
||||
| mountPoint | "ExternalStorageTest" |
|
||||
| backend | "owncloud" |
|
||||
| authMechanism | "password::userprovided" |
|
||||
| mountPoint | "ExternalStorageTest" |
|
||||
| backend | "owncloud" |
|
||||
| authMechanism | "password::userprovided" |
|
||||
| backendOptions | {"host":"http://localhost:8080","secure":false} |
|
||||
And fields of last external storage match with
|
||||
| status | 2 |
|
||||
|
|
@ -99,9 +99,9 @@ Feature: external-storage
|
|||
Scenario: Save an external storage with global credentials provided by user
|
||||
Given Logging in using web as "admin"
|
||||
And logged in user creates external global storage
|
||||
| mountPoint | "ExternalStorageTest" |
|
||||
| backend | "owncloud" |
|
||||
| authMechanism | "password::global::user" |
|
||||
| mountPoint | "ExternalStorageTest" |
|
||||
| backend | "owncloud" |
|
||||
| authMechanism | "password::global::user" |
|
||||
| backendOptions | {"host":"http://localhost:8080","secure":false} |
|
||||
And fields of last external storage match with
|
||||
| status | 2 |
|
||||
|
|
@ -113,9 +113,9 @@ Feature: external-storage
|
|||
Scenario: Save an external storage again with unmodified global credentials provided by user
|
||||
Given Logging in using web as "admin"
|
||||
And logged in user creates external global storage
|
||||
| mountPoint | "ExternalStorageTest" |
|
||||
| backend | "owncloud" |
|
||||
| authMechanism | "password::global::user" |
|
||||
| mountPoint | "ExternalStorageTest" |
|
||||
| backend | "owncloud" |
|
||||
| authMechanism | "password::global::user" |
|
||||
| backendOptions | {"host":"http://localhost:8080","secure":false} |
|
||||
And fields of last external storage match with
|
||||
| status | 2 |
|
||||
|
|
|
|||
Loading…
Reference in a new issue