diff options
| -rw-r--r-- | engine/lib/testing.php | 78 | 
1 files changed, 78 insertions, 0 deletions
diff --git a/engine/lib/testing.php b/engine/lib/testing.php new file mode 100644 index 000000000..5f24939e8 --- /dev/null +++ b/engine/lib/testing.php @@ -0,0 +1,78 @@ +<?php +	/** +	 * Elgg testing framework. +	 *  +	 * This library contains an Elgg unit test framework which can be used and extended by plugins to provide +	 * functional unit tests to aid diagnostics of problems. +	 *  +	 * @package Elgg +	 * @subpackage Core +	 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 +	 * @author Curverider Ltd <info@elgg.com> +	 * @copyright Curverider Ltd 2008-2009 +	 * @link http://elgg.org/ +	 */ + +	/** +	 * Elgg test result object. +	 * This class is used to return the values of the test in order to generate a report. +	 */ +	class ElggTestResult { +		 +		/** +		 * Textual description of the test being performed (used for reporting). +		 * +		 * @var string +		 */ +		private $details; +		 +		/** +		 * Boolean, true if the test was executed successfully - false if not. +		 * +		 * @var bool +		 */ +		private $successful; +		 +		/** +		 * Any debug information for the report. +		 * +		 * @var string +		 */ +		private $debug; +		 +		/** +		 * Create a test result object. +		 * +		 */ +		function __construct($success, $details = "", $debug = "")   +		{ +			$success = (bool)$success; +			 +			$this->successful = $success; +			$this->details = $details; +			$this->debug = $debug; +		} +	 +		/** +		 * Factory function to generate a successful result. +		 * +		 */ +		static public function CreateSuccessResult($details) { return new ElggTestResult(true, $details); } +		 +		/** +		 * Factory function to generate a successful result. +		 * +		 */ +		static public function CreateFailResult($details, $debug = "") { return new ElggTestResult(false, $details, $debug); } +	} +	 +	function testing_execute_tests() +	{ +		$report = array(); // An array to be populated with ElggTestResult objects	 + +		$report = trigger_plugin_hook('test', 'test', null, $report); +		 +		return $report; +	} +	 +?>
\ No newline at end of file  | 
