diff options
author | Juha Sippola <juhasippola@outlook.com> | 2015-08-05 10:47:59 +0300 |
---|---|---|
committer | Tony Sarajärvi <tony.sarajarvi@theqtcompany.com> | 2015-09-16 07:34:14 +0000 |
commit | 01bd38e4a7bf00e993a4ede53c47cb7de2c75e0e (patch) | |
tree | 731083bef1802208470c431ee0f15cd133206605 /non-puppet/qtmetrics2 | |
parent | a3a7949d485b11a94b6b7c03bd5832a6570dfa7c (diff) |
Qt Metrics 2: Create ProjectRuns
Added createProjectRuns function.
Change-Id: I41cfc51d61f40942e77fa5a5abc3d64385044eb4
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@theqtcompany.com>
Diffstat (limited to 'non-puppet/qtmetrics2')
-rw-r--r-- | non-puppet/qtmetrics2/src/Factory.php | 30 | ||||
-rw-r--r-- | non-puppet/qtmetrics2/src/test/FactoryTest.php | 37 |
2 files changed, 62 insertions, 5 deletions
diff --git a/non-puppet/qtmetrics2/src/Factory.php b/non-puppet/qtmetrics2/src/Factory.php index 4e57365..f39796e 100644 --- a/non-puppet/qtmetrics2/src/Factory.php +++ b/non-puppet/qtmetrics2/src/Factory.php @@ -34,8 +34,8 @@ /** * Factory class - * @version 0.7 - * @since 20-07-2015 + * @version 0.8 + * @since 23-07-2015 * @author Juha Sippola */ @@ -248,10 +248,36 @@ class Factory { } /** + * Create ProjectRun objects for those in database + * @param string $runProject + * @param string $runState + * @return array ProjectRun objects + */ + public static function createProjectRuns($runProject, $runState) + { + $objects = array(); + $dbEntries = self::db()->getProjectBuildsByBranch($runProject, $runState); + foreach($dbEntries as $entry) { + $obj = new ProjectRun( + $runProject, + $entry['branch'], + $runState, + $entry['buildKey'], + null, + $entry['timestamp'], + null + ); + $objects[] = $obj; + } + return $objects; + } + + /** * Create ConfRun objects for those in database * @param string $runProject * @param string $runState * @param string $targetOs + * @param string $conf * @return array ConfRun objects */ public static function createConfRuns($runProject, $runState, $targetOs, $conf) diff --git a/non-puppet/qtmetrics2/src/test/FactoryTest.php b/non-puppet/qtmetrics2/src/test/FactoryTest.php index cfc75bd..d53fd60 100644 --- a/non-puppet/qtmetrics2/src/test/FactoryTest.php +++ b/non-puppet/qtmetrics2/src/test/FactoryTest.php @@ -37,8 +37,8 @@ require_once(__DIR__.'/../Factory.php'); /** * Factory unit test class * @example To run (in qtmetrics root directory): php <path-to-phpunit>/phpunit.phar ./src/test - * @version 0.6 - * @since 20-07-2015 + * @version 0.7 + * @since 24-07-2015 * @author Juha Sippola */ @@ -258,6 +258,37 @@ class FactoryTest extends PHPUnit_Framework_TestCase } /** + * Test createProjectRuns + * @dataProvider testCreateProjectRunsData + */ + public function testCreateProjectRuns($runProject, $runState, $exp_branch, $exp_buildKey, $has_data) + { + $branches = array(); + $buildKeys = array(); + $runs = Factory::createProjectRuns($runProject, $runState); + foreach($runs as $run) { + $this->assertTrue($run instanceof ProjectRun); + $branches[] = $run->getBranchName(); + $buildKeys[] = $run->getBuildKey(); + } + if ($has_data) { + $this->assertContains($exp_branch, $branches); + $this->assertContains($exp_buildKey, $buildKeys); + } else { + $this->assertEmpty($runs); + } + } + public function testCreateProjectRunsData() + { + return array( + array('Qt5', 'state', 'stable', '1348', 1), + array('Qt5', 'state', 'dev', 'BuildKeyInStringFormat12345', 1), + array('invalid', 'state', '', '', '', 0), + array('Qt5', 'invalid', '', '', '', 0) + ); + } + + /** * Test createConfRuns * @dataProvider testCreateConfRunsData */ @@ -293,7 +324,7 @@ class FactoryTest extends PHPUnit_Framework_TestCase array('Qt5', 'state', '', 'win64-msvc2012_developer-build_qtnamespace_Windows_8', 'stable', '1348', 'win64-msvc2012_developer-build_qtnamespace_Windows_8', 1), array('Qt5', 'state', '', 'linux-g++-32_developer-build_Ubuntu_10.04_x86', 'stable', '1348', 'linux-g++-32_developer-build_Ubuntu_10.04_x86', 1), array('Qt5', 'state', '', 'linux-g++-32_developer-build_Ubuntu_10.04_x86', 'dev', 'BuildKeyInStringFormat12345', 'linux-g++-32_developer-build_Ubuntu_10.04_x86', 1), - array('Qt5', 'state', '', 'invalid', '', '', '', 0), + array('Qt5', 'state', '', 'invalid', '', '', '', 0) ); } |