[limb-svn] r6057 - 3.x/trunk/limb/tests_runner/src

svn at limb-project.com svn at limb-project.com
Tue Jul 3 15:31:22 MSD 2007


Author: pachanga
Date: 2007-07-03 15:31:22 +0400 (Tue, 03 Jul 2007)
New Revision: 6057
URL: http://fisheye.limb-project.com/changelog/limb/?cs=6057

Added:
   3.x/trunk/limb/tests_runner/src/lmbTestUserException.class.php
Modified:
   3.x/trunk/limb/tests_runner/src/lmbTestShellUI.class.php
   3.x/trunk/limb/tests_runner/src/lmbTestTreeFileNode.class.php
   3.x/trunk/limb/tests_runner/src/lmbTestTreeGlobNode.class.php
Log:
-- lmbTestUserException added, it's thrown when some user interaction led to error, e.g no such file found and so on. These exceptions are not intended to shown with full details(like backtrace), only message should be shown.

Modified: 3.x/trunk/limb/tests_runner/src/lmbTestShellUI.class.php
===================================================================
--- 3.x/trunk/limb/tests_runner/src/lmbTestShellUI.class.php	2007-07-03 10:54:53 UTC (rev 6056)
+++ 3.x/trunk/limb/tests_runner/src/lmbTestShellUI.class.php	2007-07-03 11:31:22 UTC (rev 6057)
@@ -80,7 +80,7 @@
 
   protected function _error($message, $code = 1)
   {
-    echo "ERROR: $message\n";
+    echo "ERROR: $message\n\n";
     echo $this->_getVersion();
     echo "\n";
     exit($code);
@@ -199,6 +199,12 @@
       $node = new lmbTestTreeGlobNode($options[1]);
       $res = $runner->run($node);
     }
+    //it's an exception which is used to pass user errors up to the interface,
+    //we don't need to show backtrace in this case, only error message
+    catch(lmbTestUserException $e)
+    {
+      $this->_error($e->getMessage());
+    }
     catch(Exception $e)
     {
       $this->_error($e->__toString());

Modified: 3.x/trunk/limb/tests_runner/src/lmbTestTreeFileNode.class.php
===================================================================
--- 3.x/trunk/limb/tests_runner/src/lmbTestTreeFileNode.class.php	2007-07-03 10:54:53 UTC (rev 6056)
+++ 3.x/trunk/limb/tests_runner/src/lmbTestTreeFileNode.class.php	2007-07-03 11:31:22 UTC (rev 6057)
@@ -7,6 +7,7 @@
  * @license    LGPL http://www.gnu.org/copyleft/lesser.html
  */
 require_once(dirname(__FILE__). '/lmbTestTreeTerminalNode.class.php');
+require_once(dirname(__FILE__). '/lmbTestUserException.class.php');
 
 /**
  * class lmbTestTreeFileNode.
@@ -65,7 +66,7 @@
     {
       require_once($this->file);
       if(!class_exists($this->class))
-        throw new Exception("Class '{$this->class}' not found in '{$this->file}' file!");
+        throw new lmbTestUserException("Class '{$this->class}' not found in '{$this->file}' file!");
 
       $test = new $this->class();
       $suite->addTestCase($test);

Modified: 3.x/trunk/limb/tests_runner/src/lmbTestTreeGlobNode.class.php
===================================================================
--- 3.x/trunk/limb/tests_runner/src/lmbTestTreeGlobNode.class.php	2007-07-03 10:54:53 UTC (rev 6056)
+++ 3.x/trunk/limb/tests_runner/src/lmbTestTreeGlobNode.class.php	2007-07-03 11:31:22 UTC (rev 6057)
@@ -8,6 +8,7 @@
  */
 require_once(dirname(__FILE__). '/lmbTestTreeNode.class.php');
 require_once(dirname(__FILE__). '/lmbTestTreeFilePathNode.class.php');
+require_once(dirname(__FILE__). '/lmbTestUserException.class.php');
 
 /**
  * class lmbTestTreeGlobNode.
@@ -39,7 +40,7 @@
     }
 
     if(!$found)
-      throw new Exception("No tests were found for path '" . implode(';', $this->paths) . "'!");
+      throw new lmbTestUserException("No files were found for path '" . implode(';', $this->paths) . "'");
   }
 
   function getTestLabel()

Added: 3.x/trunk/limb/tests_runner/src/lmbTestUserException.class.php
===================================================================
--- 3.x/trunk/limb/tests_runner/src/lmbTestUserException.class.php	                        (rev 0)
+++ 3.x/trunk/limb/tests_runner/src/lmbTestUserException.class.php	2007-07-03 11:31:22 UTC (rev 6057)
@@ -0,0 +1,18 @@
+<?php
+/*
+ * Limb PHP Framework
+ *
+ * @link http://limb-project.com
+ * @copyright  Copyright &copy; 2004-2007 BIT(http://bit-creative.com)
+ * @license    LGPL http://www.gnu.org/copyleft/lesser.html
+ */
+
+/**
+ * class lmbTestUserException.
+ *
+ * @package tests_runner
+ * @version $Id$
+ */
+class lmbTestUserException extends Exception{}
+
+?>
\ No newline at end of file



More information about the limb-svn mailing list