From ad8b1223cc7c4dbfc7245d630d1b4f4831a8c80f Mon Sep 17 00:00:00 2001 From: Frederic Guillot Date: Sat, 27 May 2017 12:18:05 -0400 Subject: Check owner existence before to create project --- tests/integration/ProjectProcedureTest.php | 20 +++++++++++++++++ tests/units/Model/ProjectModelTest.php | 35 ++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) (limited to 'tests') diff --git a/tests/integration/ProjectProcedureTest.php b/tests/integration/ProjectProcedureTest.php index b55cfee2..12bb6d04 100644 --- a/tests/integration/ProjectProcedureTest.php +++ b/tests/integration/ProjectProcedureTest.php @@ -20,6 +20,7 @@ class ProjectProcedureTest extends BaseProcedureTest $this->assertEnableDisableProject(); $this->assertEnableDisablePublicAccess(); $this->assertRemoveProject(); + $this->assertCreateProjectWithOwnerId(); } public function assertGetProjectById() @@ -121,4 +122,23 @@ class ProjectProcedureTest extends BaseProcedureTest $this->assertTrue($this->app->removeProject($this->projectId)); $this->assertNull($this->app->getProjectById($this->projectId)); } + + public function assertCreateProjectWithOwnerId() + { + $this->assertFalse($this->app->createProject(array( + 'name' => 'My project with an owner', + 'owner_id' => 999, + ))); + + $projectId = $this->app->createProject(array( + 'name' => 'My project with an owner', + 'owner_id' => 1, + )); + + $this->assertNotFalse($projectId); + + $project = $this->app->getProjectById($projectId); + $this->assertEquals($projectId, $project['id']); + $this->assertEquals(1, $project['owner_id']); + } } diff --git a/tests/units/Model/ProjectModelTest.php b/tests/units/Model/ProjectModelTest.php index fd247ffe..7958ef0b 100644 --- a/tests/units/Model/ProjectModelTest.php +++ b/tests/units/Model/ProjectModelTest.php @@ -49,6 +49,21 @@ class ProjectModelTest extends Base $this->assertEmpty($project['end_date']); } + public function testCreationWithUserId() + { + $projectModel = new ProjectModel($this->container); + + $this->assertFalse($projectModel->create(array('name' => 'UnitTest'), 3)); + + $this->assertEquals(1, $projectModel->create(array('name' => 'UnitTest'), 1)); + $project = $projectModel->getById(1); + $this->assertEquals(1, $project['owner_id']); + + $this->assertEquals(2, $projectModel->create(array('name' => 'UnitTest'), 0)); + $project = $projectModel->getById(2); + $this->assertEquals(0, $project['owner_id']); + } + public function testProjectDate() { $projectModel = new ProjectModel($this->container); @@ -165,6 +180,26 @@ class ProjectModelTest extends Base $this->assertGreaterThan($now, $project['last_modified']); } + public function testUpdateOwnerId() + { + $projectModel = new ProjectModel($this->container); + $this->assertEquals(1, $projectModel->create(array('name' => 'UnitTest'))); + + $this->assertFalse($projectModel->update(array('id'=> 1, 'name' => 'test', 'owner_id' => 2))); + + $this->assertTrue($projectModel->update(array('id'=> 1, 'name' => 'test', 'owner_id' => 1))); + + $project = $projectModel->getById(1); + $this->assertNotEmpty($project); + $this->assertEquals(1, $project['owner_id']); + + $this->assertTrue($projectModel->update(array('id'=> 1, 'name' => 'test', 'owner_id' => 0))); + + $project = $projectModel->getById(1); + $this->assertNotEmpty($project); + $this->assertEquals(0, $project['owner_id']); + } + public function testGetAllIds() { $projectModel = new ProjectModel($this->container); -- cgit v1.2.3