From 4fe07c6b0a341b0b99ee1b051f7c0bdfda572e04 Mon Sep 17 00:00:00 2001 From: Jozef Selesi Date: Mon, 4 Mar 2013 21:37:38 +0100 Subject: Return "1" to CLI if not all unit tests pass. --- modules/unit_test/libraries/Unit_Test.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'modules/unit_test') diff --git a/modules/unit_test/libraries/Unit_Test.php b/modules/unit_test/libraries/Unit_Test.php index 253d6fb6..15306f7e 100644 --- a/modules/unit_test/libraries/Unit_Test.php +++ b/modules/unit_test/libraries/Unit_Test.php @@ -67,9 +67,10 @@ class Unit_Test_Core { * * @param array test path(s) * @param string filter (regular expression) + * @param boolean will be set to true if all tests pass * @return void */ - public function __construct($extra_paths=array(), $filter=null) + public function __construct($extra_paths=array(), $filter=null, $all_passed=null) { // Merge possible default test path(s) from config with the rest $paths = array_merge($extra_paths, Kohana::config('unit_test.paths', FALSE, FALSE)); @@ -83,6 +84,9 @@ class Unit_Test_Core { // Take out duplicate test paths after normalization $this->paths = array_unique($paths); + // Assume all tests will pass + $all_passed = true; + // Loop over each given test path foreach ($this->paths as $path) { @@ -216,6 +220,7 @@ class Unit_Test_Core { // Test failed $this->results[$class][$method_name] = $e; $this->stats[$class]['failed']++; + $all_passed = false; } catch (Exception $e) { @@ -224,6 +229,7 @@ class Unit_Test_Core { // Test error $this->results[$class][$method_name] = $e; $this->stats[$class]['errors']++; + $all_passed = false; } // Calculate score -- cgit v1.2.3