Convert Document $collectionId in 0.15 response
Document $collection was renamed to $collectionId to match the naming convention of referring to other resource IDs. This ensures backwards compatibility.
This commit is contained in:
parent
01f77fa993
commit
2f08ec0926
2 changed files with 44 additions and 9 deletions
|
@ -91,20 +91,17 @@ class V15 extends Filter
|
||||||
$parsedResponse[$listKey] = array_map(fn ($content) => $this->parseCreatedAtUpdatedAt($content), $parsedResponse[$listKey]);
|
$parsedResponse[$listKey] = array_map(fn ($content) => $this->parseCreatedAtUpdatedAt($content), $parsedResponse[$listKey]);
|
||||||
break;
|
break;
|
||||||
case Response::MODEL_DOCUMENT:
|
case Response::MODEL_DOCUMENT:
|
||||||
|
$parsedResponse = $this->parseDocument($parsedResponse);
|
||||||
|
break;
|
||||||
case Response::MODEL_FILE:
|
case Response::MODEL_FILE:
|
||||||
$parsedResponse = $this->parsePermissionsCreatedAtUpdatedAt($parsedResponse);
|
$parsedResponse = $this->parsePermissionsCreatedAtUpdatedAt($parsedResponse);
|
||||||
break;
|
break;
|
||||||
case Response::MODEL_DOCUMENT_LIST:
|
case Response::MODEL_DOCUMENT_LIST:
|
||||||
|
$listKey = 'documents';
|
||||||
|
$parsedResponse[$listKey] = array_map(fn ($content) => $this->parseDocument($content), $parsedResponse[$listKey]);
|
||||||
|
break;
|
||||||
case Response::MODEL_FILE_LIST:
|
case Response::MODEL_FILE_LIST:
|
||||||
$listKey = '';
|
$listKey = 'files';
|
||||||
switch ($model) {
|
|
||||||
case Response::MODEL_DOCUMENT_LIST:
|
|
||||||
$listKey = 'documents';
|
|
||||||
break;
|
|
||||||
case Response::MODEL_FILE_LIST:
|
|
||||||
$listKey = 'files';
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
$parsedResponse[$listKey] = array_map(fn ($content) => $this->parsePermissionsCreatedAtUpdatedAt($content), $parsedResponse[$listKey]);
|
$parsedResponse[$listKey] = array_map(fn ($content) => $this->parsePermissionsCreatedAtUpdatedAt($content), $parsedResponse[$listKey]);
|
||||||
break;
|
break;
|
||||||
case Response::MODEL_EXECUTION:
|
case Response::MODEL_EXECUTION:
|
||||||
|
@ -318,6 +315,19 @@ class V15 extends Filter
|
||||||
return $content;
|
return $content;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function parseDocument(array $content)
|
||||||
|
{
|
||||||
|
if (isset($content['$collectionId'])) {
|
||||||
|
$content['$collection'] = $content['$collectionId'];
|
||||||
|
unset($content['$collectionId']);
|
||||||
|
}
|
||||||
|
|
||||||
|
unset($content['$databaseId']);
|
||||||
|
|
||||||
|
$content = $this->parsePermissionsCreatedAtUpdatedAt($content);
|
||||||
|
return $content;
|
||||||
|
}
|
||||||
|
|
||||||
private function parseExecution($content)
|
private function parseExecution($content)
|
||||||
{
|
{
|
||||||
unset($content['stdout']);
|
unset($content['stdout']);
|
||||||
|
|
|
@ -502,9 +502,34 @@ class V15Test extends TestCase
|
||||||
$this->assertEquals($expected, $result);
|
$this->assertEquals($expected, $result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function documentProvider(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'basic document' => [
|
||||||
|
[
|
||||||
|
'$id' => '5e5ea5c16897e',
|
||||||
|
'$collectionId' => '5e5ea5c15117e',
|
||||||
|
'$databaseId' => '5e5ea5c15117e',
|
||||||
|
'$createdAt' => '2020-06-24T06:47:30.000Z',
|
||||||
|
'$updatedAt' => '2020-06-24T06:47:30.000Z',
|
||||||
|
'$permissions' => [Permission::read(Role::any())]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'$id' => '5e5ea5c16897e',
|
||||||
|
'$collection' => '5e5ea5c15117e',
|
||||||
|
'$createdAt' => 1592981250,
|
||||||
|
'$updatedAt' => 1592981250,
|
||||||
|
'$read' => ['role:all'],
|
||||||
|
'$write' => [],
|
||||||
|
],
|
||||||
|
],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @dataProvider createdAtUpdatedAtProvider
|
* @dataProvider createdAtUpdatedAtProvider
|
||||||
* @dataProvider permissionsProvider
|
* @dataProvider permissionsProvider
|
||||||
|
* @dataProvider documentProvider
|
||||||
*/
|
*/
|
||||||
public function testDocument(array $content, array $expected): void
|
public function testDocument(array $content, array $expected): void
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue