From 3f8b898702743f4b68b25907463fa788d3c8122f Mon Sep 17 00:00:00 2001 From: marcus Date: Wed, 13 May 2009 09:51:07 +0000 Subject: Refs #1009: Simple test framework outline added. git-svn-id: https://code.elgg.org/elgg/trunk@3284 36083f99-b078-4883-b0ff-0f9b5a30f544 --- engine/lib/testing.php | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 engine/lib/testing.php (limited to 'engine') 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 @@ + + * @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 -- cgit v1.2.3