diff options
Diffstat (limited to 'tests/units/Model/SwimlaneTest.php')
| -rw-r--r-- | tests/units/Model/SwimlaneTest.php | 269 | 
1 files changed, 104 insertions, 165 deletions
diff --git a/tests/units/Model/SwimlaneTest.php b/tests/units/Model/SwimlaneTest.php index 3d048abd..f8b496cf 100644 --- a/tests/units/Model/SwimlaneTest.php +++ b/tests/units/Model/SwimlaneTest.php @@ -86,7 +86,23 @@ class SwimlaneTest extends Base          $this->assertEquals(0, $default['show_default_swimlane']);      } -    public function testDisable() +    public function testDisableEnableDefaultSwimlane() +    { +        $projectModel = new Project($this->container); +        $swimlaneModel = new Swimlane($this->container); + +        $this->assertEquals(1, $projectModel->create(array('name' => 'UnitTest'))); + +        $this->assertTrue($swimlaneModel->disableDefault(1)); +        $default = $swimlaneModel->getDefault(1); +        $this->assertEquals(0, $default['show_default_swimlane']); + +        $this->assertTrue($swimlaneModel->enableDefault(1)); +        $default = $swimlaneModel->getDefault(1); +        $this->assertEquals(1, $default['show_default_swimlane']); +    } + +    public function testDisableEnable()      {          $p = new Project($this->container);          $s = new Swimlane($this->container); @@ -210,200 +226,123 @@ class SwimlaneTest extends Base          $this->assertEquals(1, $swimlane['position']);      } -    public function testMoveUp() +    public function testDuplicateSwimlane()      {          $p = new Project($this->container);          $s = new Swimlane($this->container); -        $this->assertEquals(1, $p->create(array('name' => 'UnitTest'))); -        $this->assertEquals(1, $s->create(array('project_id' => 1, 'name' => 'Swimlane #1'))); -        $this->assertEquals(2, $s->create(array('project_id' => 1, 'name' => 'Swimlane #2'))); -        $this->assertEquals(3, $s->create(array('project_id' => 1, 'name' => 'Swimlane #3'))); - -        $swimlane = $s->getById(1); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(1, $swimlane['position']); - -        $swimlane = $s->getById(2); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(2, $swimlane['position']); - -        $swimlane = $s->getById(3); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(3, $swimlane['position']); - -        // Move the swimlane 3 up -        $this->assertTrue($s->moveUp(1, 3)); - -        $swimlane = $s->getById(1); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(1, $swimlane['position']); - -        $swimlane = $s->getById(2); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(3, $swimlane['position']); - -        $swimlane = $s->getById(3); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(2, $swimlane['position']); - -        // First swimlane can be moved up -        $this->assertFalse($s->moveUp(1, 1)); - -        // Move with a disabled swimlane -        $this->assertTrue($s->disable(1, 1)); - -        $swimlane = $s->getById(1); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(0, $swimlane['is_active']); -        $this->assertEquals(0, $swimlane['position']); - -        $swimlane = $s->getById(2); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(2, $swimlane['position']); +        $this->assertEquals(1, $p->create(array('name' => 'P1'))); +        $this->assertEquals(2, $p->create(array('name' => 'P2'))); +        $this->assertEquals(1, $s->create(array('project_id' => 1, 'name' => 'S1'))); +        $this->assertEquals(2, $s->create(array('project_id' => 1, 'name' => 'S2'))); +        $this->assertEquals(3, $s->create(array('project_id' => 1, 'name' => 'S3'))); -        $swimlane = $s->getById(3); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(1, $swimlane['position']); +        $default_swimlane1 = $s->getDefault(1); +        $default_swimlane1['default_swimlane'] = 'New Default'; -        // Move the 2nd swimlane up -        $this->assertTrue($s->moveUp(1, 2)); +        $this->assertTrue($s->updateDefault($default_swimlane1)); -        $swimlane = $s->getById(1); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(0, $swimlane['is_active']); -        $this->assertEquals(0, $swimlane['position']); +        $this->assertTrue($s->duplicate(1, 2)); -        $swimlane = $s->getById(2); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(1, $swimlane['position']); +        $swimlanes = $s->getAll(2); -        $swimlane = $s->getById(3); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(2, $swimlane['position']); +        $this->assertCount(3, $swimlanes); +        $this->assertEquals(4, $swimlanes[0]['id']); +        $this->assertEquals('S1', $swimlanes[0]['name']); +        $this->assertEquals(5, $swimlanes[1]['id']); +        $this->assertEquals('S2', $swimlanes[1]['name']); +        $this->assertEquals(6, $swimlanes[2]['id']); +        $this->assertEquals('S3', $swimlanes[2]['name']); +        $new_default = $s->getDefault(2); +        $this->assertEquals('New Default', $new_default['default_swimlane']);      } -    public function testMoveDown() +    public function testChangePosition()      { -        $p = new Project($this->container); -        $s = new Swimlane($this->container); - -        $this->assertEquals(1, $p->create(array('name' => 'UnitTest'))); -        $this->assertEquals(1, $s->create(array('project_id' => 1, 'name' => 'Swimlane #1'))); -        $this->assertEquals(2, $s->create(array('project_id' => 1, 'name' => 'Swimlane #2'))); -        $this->assertEquals(3, $s->create(array('project_id' => 1, 'name' => 'Swimlane #3'))); - -        $swimlane = $s->getById(1); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(1, $swimlane['position']); - -        $swimlane = $s->getById(2); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(2, $swimlane['position']); - -        $swimlane = $s->getById(3); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(3, $swimlane['position']); - -        // Move the swimlane 1 down -        $this->assertTrue($s->moveDown(1, 1)); +        $projectModel = new Project($this->container); +        $swimlaneModel = new Swimlane($this->container); -        $swimlane = $s->getById(1); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(2, $swimlane['position']); - -        $swimlane = $s->getById(2); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(1, $swimlane['position']); +        $this->assertEquals(1, $projectModel->create(array('name' => 'test1'))); +        $this->assertEquals(1, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #1'))); +        $this->assertEquals(2, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #2'))); +        $this->assertEquals(3, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #3'))); +        $this->assertEquals(4, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #4'))); -        $swimlane = $s->getById(3); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(3, $swimlane['position']); +        $swimlanes = $swimlaneModel->getAllByStatus(1); +        $this->assertEquals(1, $swimlanes[0]['position']); +        $this->assertEquals(1, $swimlanes[0]['id']); +        $this->assertEquals(2, $swimlanes[1]['position']); +        $this->assertEquals(2, $swimlanes[1]['id']); +        $this->assertEquals(3, $swimlanes[2]['position']); +        $this->assertEquals(3, $swimlanes[2]['id']); -        // Last swimlane can be moved down -        $this->assertFalse($s->moveDown(1, 3)); +        $this->assertTrue($swimlaneModel->changePosition(1, 3, 2)); -        // Move with a disabled swimlane -        $this->assertTrue($s->disable(1, 3)); +        $swimlanes = $swimlaneModel->getAllByStatus(1); +        $this->assertEquals(1, $swimlanes[0]['position']); +        $this->assertEquals(1, $swimlanes[0]['id']); +        $this->assertEquals(2, $swimlanes[1]['position']); +        $this->assertEquals(3, $swimlanes[1]['id']); +        $this->assertEquals(3, $swimlanes[2]['position']); +        $this->assertEquals(2, $swimlanes[2]['id']); -        $swimlane = $s->getById(1); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(2, $swimlane['position']); +        $this->assertTrue($swimlaneModel->changePosition(1, 2, 1)); -        $swimlane = $s->getById(2); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(1, $swimlane['position']); +        $swimlanes = $swimlaneModel->getAllByStatus(1); +        $this->assertEquals(1, $swimlanes[0]['position']); +        $this->assertEquals(2, $swimlanes[0]['id']); +        $this->assertEquals(2, $swimlanes[1]['position']); +        $this->assertEquals(1, $swimlanes[1]['id']); +        $this->assertEquals(3, $swimlanes[2]['position']); +        $this->assertEquals(3, $swimlanes[2]['id']); -        $swimlane = $s->getById(3); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(0, $swimlane['is_active']); -        $this->assertEquals(0, $swimlane['position']); +        $this->assertTrue($swimlaneModel->changePosition(1, 2, 2)); -        // Move the 2st swimlane down -        $this->assertTrue($s->moveDown(1, 2)); +        $swimlanes = $swimlaneModel->getAllByStatus(1); +        $this->assertEquals(1, $swimlanes[0]['position']); +        $this->assertEquals(1, $swimlanes[0]['id']); +        $this->assertEquals(2, $swimlanes[1]['position']); +        $this->assertEquals(2, $swimlanes[1]['id']); +        $this->assertEquals(3, $swimlanes[2]['position']); +        $this->assertEquals(3, $swimlanes[2]['id']); -        $swimlane = $s->getById(1); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(1, $swimlane['position']); +        $this->assertTrue($swimlaneModel->changePosition(1, 4, 1)); -        $swimlane = $s->getById(2); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(1, $swimlane['is_active']); -        $this->assertEquals(2, $swimlane['position']); +        $swimlanes = $swimlaneModel->getAllByStatus(1); +        $this->assertEquals(1, $swimlanes[0]['position']); +        $this->assertEquals(4, $swimlanes[0]['id']); +        $this->assertEquals(2, $swimlanes[1]['position']); +        $this->assertEquals(1, $swimlanes[1]['id']); +        $this->assertEquals(3, $swimlanes[2]['position']); +        $this->assertEquals(2, $swimlanes[2]['id']); -        $swimlane = $s->getById(3); -        $this->assertNotEmpty($swimlane); -        $this->assertEquals(0, $swimlane['is_active']); -        $this->assertEquals(0, $swimlane['position']); +        $this->assertFalse($swimlaneModel->changePosition(1, 2, 0)); +        $this->assertFalse($swimlaneModel->changePosition(1, 2, 5));      } -    public function testDuplicateSwimlane() +    public function testChangePositionWithInactiveSwimlane()      { -        $p = new Project($this->container); -        $s = new Swimlane($this->container); - -        $this->assertEquals(1, $p->create(array('name' => 'P1'))); -        $this->assertEquals(2, $p->create(array('name' => 'P2'))); -        $this->assertEquals(1, $s->create(array('project_id' => 1, 'name' => 'S1'))); -        $this->assertEquals(2, $s->create(array('project_id' => 1, 'name' => 'S2'))); -        $this->assertEquals(3, $s->create(array('project_id' => 1, 'name' => 'S3'))); - -        $default_swimlane1 = $s->getDefault(1); -        $default_swimlane1['default_swimlane'] = 'New Default'; +        $projectModel = new Project($this->container); +        $swimlaneModel = new Swimlane($this->container); -        $this->assertTrue($s->updateDefault($default_swimlane1)); +        $this->assertEquals(1, $projectModel->create(array('name' => 'test1'))); +        $this->assertEquals(1, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #1'))); +        $this->assertEquals(2, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #2', 'is_active' => 0))); +        $this->assertEquals(3, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #3', 'is_active' => 0))); +        $this->assertEquals(4, $swimlaneModel->create(array('project_id' => 1, 'name' => 'Swimlane #4'))); -        $this->assertTrue($s->duplicate(1, 2)); +        $swimlanes = $swimlaneModel->getAllByStatus(1); +        $this->assertEquals(1, $swimlanes[0]['position']); +        $this->assertEquals(1, $swimlanes[0]['id']); +        $this->assertEquals(2, $swimlanes[1]['position']); +        $this->assertEquals(4, $swimlanes[1]['id']); -        $swimlanes = $s->getAll(2); +        $this->assertTrue($swimlaneModel->changePosition(1, 4, 1)); -        $this->assertCount(3, $swimlanes); +        $swimlanes = $swimlaneModel->getAllByStatus(1); +        $this->assertEquals(1, $swimlanes[0]['position']);          $this->assertEquals(4, $swimlanes[0]['id']); -        $this->assertEquals('S1', $swimlanes[0]['name']); -        $this->assertEquals(5, $swimlanes[1]['id']); -        $this->assertEquals('S2', $swimlanes[1]['name']); -        $this->assertEquals(6, $swimlanes[2]['id']); -        $this->assertEquals('S3', $swimlanes[2]['name']); -        $new_default = $s->getDefault(2); -        $this->assertEquals('New Default', $new_default['default_swimlane']); +        $this->assertEquals(2, $swimlanes[1]['position']); +        $this->assertEquals(1, $swimlanes[1]['id']);      }  }  | 
