Release 2.1.0, merged in 1313 to HEAD.
[htmlpurifier.git] / tests / HTMLPurifier / Harness.php
blob897a9f23e7f210fdb8c036164778383552b19a4e
1 <?php
3 require_once 'HTMLPurifier/URIParser.php';
5 /**
6 * All-use harness, use this rather than SimpleTest's
7 */
8 class HTMLPurifier_Harness extends UnitTestCase
11 function HTMLPurifier_Harness() {
12 parent::UnitTestCase();
15 var $config, $context;
17 /**
18 * Generates easily accessible default config/context
20 function setUp() {
21 list($this->config, $this->context) = $this->createCommon();
24 /**
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();
34 /**
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);
42 /**
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');
52 } else {
53 $this->assertTrue($status, 'Expected true result, got false');
54 $this->assertIdentical($result, $expect);