/** * @return multitype:Ambigous <number, unknown> */ private function sanitizeProject() { // Info Project $minDate = 0; // Browse all tasks $arrTasks = $this->phpProject->getAllTasks(); foreach ($arrTasks as $oTask) { if ($oTask->getTaskCount() == 0) { $this->sanitizeTask($oTask); } else { $this->sanitizeTaskParent($oTask); } $tStartDate = $oTask->getStartDate(); if ($minDate == 0 || $tStartDate < $minDate) { $minDate = $tStartDate; } } // Browse all Resources $numResource = 0; foreach ($this->phpProject->getAllResources() as $oResource) { $oResource->setIndex($numResource); $numResource++; } return array('date_start' => (int) $minDate); }
public function testTask() { $object = new PhpProject(); // Start $this->assertEquals(0, $object->getTaskCount()); $this->assertNull($object->getActiveTaskIndex()); $this->assertCount(0, $object->getAllTasks()); $this->assertInternalType('array', $object->getAllTasks()); $this->assertNull($object->getActiveTask()); // Add a task $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->createTask()); $this->assertEquals(1, $object->getTaskCount()); $this->assertCount(1, $object->getAllTasks()); $this->assertEquals(0, $object->getActiveTaskIndex()); $this->assertInternalType('array', $object->getAllTasks()); $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->getActiveTask()); // Add a task $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->createTask()); $this->assertEquals(2, $object->getTaskCount()); $this->assertCount(2, $object->getAllTasks()); $this->assertEquals(1, $object->getActiveTaskIndex()); $this->assertInternalType('array', $object->getAllTasks()); $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->getActiveTask()); // Active Task $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->setActiveTaskIndex(0)); $this->assertEquals(0, $object->getActiveTaskIndex()); $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->setActiveTaskIndex(1)); $this->assertEquals(1, $object->getActiveTaskIndex()); // Remove Task $object->removeTaskByIndex(0); $this->assertEquals(1, $object->getTaskCount()); $this->assertCount(1, $object->getAllTasks()); $this->assertEquals(0, $object->getActiveTaskIndex()); $this->assertInternalType('array', $object->getAllTasks()); $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->getActiveTask()); }