3 require_once 'HTMLPurifier/URIParser.php';
6 * All-use harness, use this rather than SimpleTest's
8 class HTMLPurifier_Harness
extends UnitTestCase
11 function HTMLPurifier_Harness() {
12 parent
::UnitTestCase();
15 var $config, $context;
18 * Generates easily accessible default config/context
21 list($this->config
, $this->context
) = $this->createCommon();
25 * Accepts config and context and prepares them into a valid state
26 * @param &$config Reference to config variable
27 * @param &$context Reference to context variable
29 function prepareCommon(&$config, &$context) {
30 $config = HTMLPurifier_Config
::create($config);
31 if (!$context) $context = new HTMLPurifier_Context();
35 * Generates default configuration and context objects
36 * @return Defaults in form of array($config, $context)
38 function createCommon() {
39 return array(HTMLPurifier_Config
::createDefault(), new HTMLPurifier_Context
);
43 * If $expect is false, ignore $result and check if status failed.
44 * Otherwise, check if $status if true and $result === $expect.
45 * @param $status Boolean status
46 * @param $result Mixed result from processing
47 * @param $expect Mixed expectation for result
49 function assertEitherFailOrIdentical($status, $result, $expect) {
50 if ($expect === false) {
51 $this->assertFalse($status, 'Expected false result, got true');
53 $this->assertTrue($status, 'Expected true result, got false');
54 $this->assertIdentical($result, $expect);