summaryrefslogtreecommitdiffstats
path: root/non-puppet/qtmetrics2
diff options
context:
space:
mode:
authorJuha Sippola <juhasippola@outlook.com>2015-08-05 10:47:59 +0300
committerTony Sarajärvi <tony.sarajarvi@theqtcompany.com>2015-09-16 07:34:14 +0000
commit01bd38e4a7bf00e993a4ede53c47cb7de2c75e0e (patch)
tree731083bef1802208470c431ee0f15cd133206605 /non-puppet/qtmetrics2
parenta3a7949d485b11a94b6b7c03bd5832a6570dfa7c (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.php30
-rw-r--r--non-puppet/qtmetrics2/src/test/FactoryTest.php37
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)
);
}