From 4cafa75a22409f6d13dc07eaca3abb6029ac1afe Mon Sep 17 00:00:00 2001 From: Eldad Fux Date: Wed, 8 Jul 2020 18:20:18 +0300 Subject: [PATCH] Added more tests --- .../Projects/ProjectsConsoleClientTest.php | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) diff --git a/tests/e2e/Services/Projects/ProjectsConsoleClientTest.php b/tests/e2e/Services/Projects/ProjectsConsoleClientTest.php index 2ac69c388c..d8629a0ec6 100644 --- a/tests/e2e/Services/Projects/ProjectsConsoleClientTest.php +++ b/tests/e2e/Services/Projects/ProjectsConsoleClientTest.php @@ -75,6 +75,33 @@ class ProjectsConsoleClientTest extends Scope return ['projectId' => $projectId]; } + /** + * @depends testCreateProject + */ + public function testListProject($data):array + { + $id = (isset($data['projectId'])) ? $data['projectId'] : ''; + + /** + * Test for SUCCESS + */ + $response = $this->client->call(Client::METHOD_GET, '/projects', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders())); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertNotEmpty($response['body']); + $this->assertEquals($id, $response['body']['projects'][0]['$id']); + $this->assertEquals('Project Test', $response['body']['projects'][0]['name']); + + /** + * Test for FAILURE + */ + + return []; + } + /** * @depends testCreateProject */ @@ -115,4 +142,63 @@ class ProjectsConsoleClientTest extends Scope return []; } + + /** + * @depends testCreateProject + */ + public function testGetProjectUsage($data):array + { + $id = (isset($data['projectId'])) ? $data['projectId'] : ''; + + /** + * Test for SUCCESS + */ + $response = $this->client->call(Client::METHOD_GET, '/projects/'.$id.'/usage', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders())); + + $this->assertEquals(200, $response['headers']['status-code']); + $this->assertNotEmpty($response['body']); + $this->assertArrayHasKey('collections', $response['body']); + $this->assertArrayHasKey('documents', $response['body']); + $this->assertArrayHasKey('network', $response['body']); + $this->assertArrayHasKey('requests', $response['body']); + $this->assertArrayHasKey('storage', $response['body']); + $this->assertArrayHasKey('tasks', $response['body']); + $this->assertArrayHasKey('users', $response['body']); + $this->assertIsArray($response['body']['collections']['data']); + $this->assertIsInt($response['body']['collections']['total']); + $this->assertIsArray($response['body']['documents']['data']); + $this->assertIsInt($response['body']['documents']['total']); + $this->assertIsArray($response['body']['network']['data']); + $this->assertIsInt($response['body']['network']['total']); + $this->assertIsArray($response['body']['requests']['data']); + $this->assertIsInt($response['body']['requests']['total']); + $this->assertIsInt($response['body']['storage']['total']); + $this->assertIsArray($response['body']['tasks']['data']); + $this->assertIsInt($response['body']['tasks']['total']); + $this->assertIsArray($response['body']['users']['data']); + $this->assertIsInt($response['body']['users']['total']); + + /** + * Test for FAILURE + */ + + $response = $this->client->call(Client::METHOD_GET, '/projects/empty', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders())); + + $this->assertEquals(404, $response['headers']['status-code']); + + $response = $this->client->call(Client::METHOD_GET, '/projects/id-is-really-long-id-is-really-long-id-is-really-long-id-is-really-long', array_merge([ + 'content-type' => 'application/json', + 'x-appwrite-project' => $this->getProject()['$id'], + ], $this->getHeaders())); + + $this->assertEquals(400, $response['headers']['status-code']); + + return []; + } } \ No newline at end of file