Beispiel #1
0
 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);
 }
Beispiel #2
0
 /**
  * @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'));
 }
Beispiel #3
0
 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;
 }