diff --git a/app/controllers/api/database.php b/app/controllers/api/database.php index a25e5e62ae..9d5ac716b3 100644 --- a/app/controllers/api/database.php +++ b/app/controllers/api/database.php @@ -230,7 +230,7 @@ App::get('/v1/database/collections') $queries = []; if (!empty($search)) { - $queries[] = new Query('name', Query::TYPE_SEARCH, [$search]); + $queries[] = new Query('search', Query::TYPE_SEARCH, [$search]); } $usage->setParam('database.collections.read', 1); diff --git a/tests/e2e/Services/Database/DatabaseCustomServerTest.php b/tests/e2e/Services/Database/DatabaseCustomServerTest.php index 659839debe..b770b2b6c3 100644 --- a/tests/e2e/Services/Database/DatabaseCustomServerTest.php +++ b/tests/e2e/Services/Database/DatabaseCustomServerTest.php @@ -125,6 +125,39 @@ class DatabaseCustomServerTest extends Scope $this->assertCount(0, $collections['body']['collections']); $this->assertEmpty($collections['body']['collections']); + /** + * Test for Search + */ + $collections = $this->client->call(Client::METHOD_GET, '/database/collections', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'search' => 'first' + ]); + + $this->assertEquals(1, $collections['body']['sum']); + $this->assertEquals('first', $collections['body']['collections'][0]['$id']); + + $collections = $this->client->call(Client::METHOD_GET, '/database/collections', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'search' => 'Test' + ]); + + $this->assertEquals(2, $collections['body']['sum']); + $this->assertEquals('Test 1', $collections['body']['collections'][0]['name']); + $this->assertEquals('Test 2', $collections['body']['collections'][1]['name']); + + $collections = $this->client->call(Client::METHOD_GET, '/database/collections', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders()), [ + 'search' => 'Nonexistent' + ]); + + $this->assertEquals(0, $collections['body']['sum']); + /** * Test for FAILURE */