protected function write(array $record) { $message = (string) $record['message']; $message = str_replace($this->build->currentBuildPath, '/', $message); $this->logValue .= $message . PHP_EOL; $this->build->setLog($this->logValue); }
/** * @covers PHPUnit::execute */ public function testExecute_CreateDuplicateBuild() { $build = new Build(); $build->setId(1); $build->setProject(101); $build->setCommitId('abcde'); $build->setStatus(Build::STATUS_FAILED); $build->setLog('Test'); $build->setBranch('example_branch'); $build->setStarted(new \DateTime()); $build->setFinished(new \DateTime()); $build->setCommitMessage('test'); $build->setCommitterEmail('*****@*****.**'); $build->setExtra(json_encode(array('item1' => 1001))); $returnValue = $this->testedService->createDuplicateBuild($build); $this->assertNotEquals($build->getId(), $returnValue->getId()); $this->assertEquals($build->getProjectId(), $returnValue->getProjectId()); $this->assertEquals($build->getCommitId(), $returnValue->getCommitId()); $this->assertNotEquals($build->getStatus(), $returnValue->getStatus()); $this->assertEquals(Build::STATUS_NEW, $returnValue->getStatus()); $this->assertNull($returnValue->getLog()); $this->assertEquals($build->getBranch(), $returnValue->getBranch()); $this->assertNotEquals($build->getCreated(), $returnValue->getCreated()); $this->assertNull($returnValue->getStarted()); $this->assertNull($returnValue->getFinished()); $this->assertEquals('test', $returnValue->getCommitMessage()); $this->assertEquals('*****@*****.**', $returnValue->getCommitterEmail()); $this->assertEquals($build->getExtra('item1'), $returnValue->getExtra('item1')); }
protected function createBuild($projectId, $commitId, $branch, $committer, $commitMessage, $extra = null) { // Check if a build already exists for this commit ID: $builds = $this->buildStore->getByProjectAndCommit($projectId, $commitId); if ($builds['count']) { return true; } // If not, create a new build job for it: $build = new Build(); $build->setProjectId($projectId); $build->setCommitId($commitId); $build->setStatus(Build::STATUS_NEW); $build->setLog(''); $build->setCreated(new \DateTime()); $build->setBranch($branch); $build->setCommitterEmail($committer); $build->setCommitMessage($commitMessage); if (!is_null($extra)) { $build->setExtra(json_encode($extra)); } $build = BuildFactory::getBuild($this->buildStore->save($build)); // Send a status postback if the build type provides one: $build->sendStatusPostback(); return true; }