<?php error_reporting(E_ALL); // wishlist: automated calling of this file from multiple PHP versions so we // don't have to constantly switch around // load files, assume that simpletest directory is in path require_once 'simpletest/unit_tester.php'; require_once 'simpletest/reporter.php'; require_once 'simpletest/mock_objects.php'; require_once 'Debugger.php'; // emulates inserting a dir called HTMLPurifier into your class dir set_include_path(get_include_path() . PATH_SEPARATOR . '../library'); // since Mocks can't be called from within test files, we need to do // a little jumping through hoops to generate them function generate_mock_once($name) { $mock_name = $name . 'Mock'; if (class_exists($mock_name)) return false; Mock::generate($name, $mock_name); } // define callable test files $test_files = array(); $test_files[] = 'LexerTest.php'; $test_files[] = 'Lexer/DirectLexTest.php'; //$test_files[] = 'TokenTest.php'; $test_files[] = 'ChildDefTest.php'; $test_files[] = 'GeneratorTest.php'; $test_files[] = 'EntityLookupTest.php'; $test_files[] = 'Strategy/RemoveForeignElementsTest.php'; $test_files[] = 'Strategy/MakeWellFormedTest.php'; $test_files[] = 'Strategy/FixNestingTest.php'; $test_files[] = 'Strategy/CompositeTest.php'; $test_files[] = 'Strategy/CoreTest.php'; $test_files[] = 'Strategy/ValidateAttributesTest.php'; $test_files[] = 'AttrDefTest.php'; $test_files[] = 'AttrDef/EnumTest.php'; $test_files[] = 'AttrDef/IDTest.php'; $test_files[] = 'AttrDef/ClassTest.php'; $test_files[] = 'AttrDef/TextTest.php'; $test_files[] = 'AttrDef/LangTest.php'; $test_files[] = 'AttrDef/PixelsTest.php'; $test_files[] = 'IDAccumulatorTest.php'; $test_files[] = 'TagTransformTest.php'; $test_files[] = 'AttrTransform/LangTest.php'; $test_files[] = 'AttrTransform/TextAlignTest.php'; $test_file_lookup = array_flip($test_files); if (isset($_GET['file']) && isset($test_file_lookup[$_GET['file']])) { // execute only one test $test_file = $_GET['file']; $test = new GroupTest('HTMLPurifier - ' . $test_file); $test->addTestFile('HTMLPurifier/' . $test_file); } else { $test = new GroupTest('HTMLPurifier'); foreach ($test_files as $test_file) { $test->addTestFile('HTMLPurifier/' . $test_file); } } if (SimpleReporter::inCli()) $reporter = new TextReporter(); else $reporter = new HTMLReporter(); $test->run($reporter); ?>