mirror of
https://github.com/ezyang/htmlpurifier.git
synced 2024-12-23 00:41:52 +00:00
Various fixes:
- Resync standalone with includes - Fix error queue code - Fix heisenbug with flush and certain definition error messages - Fix premature $end in ini files - Make $php config variable actually do something git-svn-id: http://htmlpurifier.org/svnroot/htmlpurifier/trunk@1659 48356398-32a2-884e-a903-53898d9a118a
This commit is contained in:
parent
a1ea149105
commit
a4181a80d7
@ -133,12 +133,15 @@ $FS->rmdirr('standalone'); // ensure a clean copy
|
|||||||
|
|
||||||
// data files
|
// data files
|
||||||
$FS->mkdirr('standalone/HTMLPurifier/DefinitionCache/Serializer');
|
$FS->mkdirr('standalone/HTMLPurifier/DefinitionCache/Serializer');
|
||||||
make_dir_standalone('HTMLPurifier/EntityLookup');
|
make_file_standalone('HTMLPurifier/EntityLookup/entities.ser');
|
||||||
make_file_standalone('HTMLPurifier/ConfigSchema/schema.ser');
|
make_file_standalone('HTMLPurifier/ConfigSchema/schema.ser');
|
||||||
|
|
||||||
// non-standard inclusion setup
|
// non-standard inclusion setup
|
||||||
|
make_dir_standalone('HTMLPurifier/ConfigSchema');
|
||||||
make_dir_standalone('HTMLPurifier/Language');
|
make_dir_standalone('HTMLPurifier/Language');
|
||||||
make_dir_standalone('HTMLPurifier/Filter');
|
make_dir_standalone('HTMLPurifier/Filter');
|
||||||
|
make_dir_standalone('HTMLPurifier/Printer');
|
||||||
|
make_file_standalone('HTMLPurifier/Printer.php');
|
||||||
make_file_standalone('HTMLPurifier/Lexer/PH5P.php');
|
make_file_standalone('HTMLPurifier/Lexer/PH5P.php');
|
||||||
make_file_standalone('HTMLPurifier/Lexer/PEARSax3.php');
|
make_file_standalone('HTMLPurifier/Lexer/PEARSax3.php');
|
||||||
|
|
||||||
|
@ -71,9 +71,10 @@ extends HTMLPurifier_ChildDefHarness
|
|||||||
}
|
}
|
||||||
|
|
||||||
function testError() {
|
function testError() {
|
||||||
// $this->expectError('Cannot use non-block element as block wrapper');
|
$this->expectError('Cannot use non-block element as block wrapper');
|
||||||
$this->obj = new HTMLPurifier_ChildDef_StrictBlockquote('div | p');
|
$this->obj = new HTMLPurifier_ChildDef_StrictBlockquote('div | p');
|
||||||
$this->config->set('HTML', 'BlockWrapper', 'dav');
|
$this->config->set('HTML', 'BlockWrapper', 'dav');
|
||||||
|
$this->config->set('Cache', 'DefinitionImpl', null);
|
||||||
$this->assertResult('Needs wrap', '<p>Needs wrap</p>');
|
$this->assertResult('Needs wrap', '<p>Needs wrap</p>');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -106,7 +106,8 @@ class HTMLPurifier_Strategy_FixNestingTest extends HTMLPurifier_StrategyHarness
|
|||||||
function testInvalidParentError() {
|
function testInvalidParentError() {
|
||||||
// test fallback to div
|
// test fallback to div
|
||||||
$this->config->set('HTML', 'Parent', 'obviously-impossible');
|
$this->config->set('HTML', 'Parent', 'obviously-impossible');
|
||||||
// $this->expectError('Cannot use unrecognized element as parent');
|
$this->config->set('Cache', 'DefinitionImpl', null);
|
||||||
|
$this->expectError('Cannot use unrecognized element as parent');
|
||||||
$this->assertResult('<div>Accept</div>');
|
$this->assertResult('<div>Accept</div>');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -215,9 +215,8 @@ function htmlpurifier_flush($php, $reporter) {
|
|||||||
function htmlpurifier_dump_error_queue() {
|
function htmlpurifier_dump_error_queue() {
|
||||||
$context = SimpleTest::getContext();
|
$context = SimpleTest::getContext();
|
||||||
$queue = $context->get('SimpleErrorQueue');
|
$queue = $context->get('SimpleErrorQueue');
|
||||||
if ($queue && !empty($queue->_queue)) {
|
while (($error = $queue->extract()) !== false) {
|
||||||
// replace this with something prettier
|
var_dump($error);
|
||||||
var_dump($queue->_queue);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
register_shutdown_function('htmlpurifier_dump_error_queue');
|
register_shutdown_function('htmlpurifier_dump_error_queue');
|
||||||
|
@ -25,6 +25,8 @@ define('HTMLPurifierTest', 1);
|
|||||||
define('HTMLPURIFIER_SCHEMA_STRICT', true); // validate schemas
|
define('HTMLPURIFIER_SCHEMA_STRICT', true); // validate schemas
|
||||||
chdir(dirname(__FILE__));
|
chdir(dirname(__FILE__));
|
||||||
|
|
||||||
|
$php = 'php'; // for safety
|
||||||
|
|
||||||
require 'common.php';
|
require 'common.php';
|
||||||
|
|
||||||
$AC = array(); // parameters
|
$AC = array(); // parameters
|
||||||
@ -33,7 +35,7 @@ $AC['standalone'] = false;
|
|||||||
$AC['file'] = '';
|
$AC['file'] = '';
|
||||||
$AC['xml'] = false;
|
$AC['xml'] = false;
|
||||||
$AC['dry'] = false;
|
$AC['dry'] = false;
|
||||||
$AC['php'] = 'php';
|
$AC['php'] = $php;
|
||||||
|
|
||||||
// Convenience parameters for running quicker tests; ideally all tests
|
// Convenience parameters for running quicker tests; ideally all tests
|
||||||
// should be performed.
|
// should be performed.
|
||||||
|
@ -24,6 +24,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
define('HTMLPurifierTest', 1);
|
define('HTMLPurifierTest', 1);
|
||||||
|
$php = 'php'; // for safety
|
||||||
|
|
||||||
require_once 'common.php';
|
require_once 'common.php';
|
||||||
|
|
||||||
if (!SimpleReporter::inCli()) {
|
if (!SimpleReporter::inCli()) {
|
||||||
@ -37,7 +39,7 @@ $AC['exclude-standalone'] = false;
|
|||||||
$AC['file'] = '';
|
$AC['file'] = '';
|
||||||
$AC['xml'] = false;
|
$AC['xml'] = false;
|
||||||
$AC['quiet'] = false;
|
$AC['quiet'] = false;
|
||||||
$AC['php'] = 'php';
|
$AC['php'] = $php;
|
||||||
$AC['disable-phpt'] = false;
|
$AC['disable-phpt'] = false;
|
||||||
$AC['only-phpt'] = false;
|
$AC['only-phpt'] = false;
|
||||||
$aliases = array(
|
$aliases = array(
|
||||||
@ -80,7 +82,7 @@ foreach ($versions_to_test as $version) {
|
|||||||
}
|
}
|
||||||
if (!$AC['only-phpt']) {
|
if (!$AC['only-phpt']) {
|
||||||
if (!$AC['exclude-normal']) {
|
if (!$AC['exclude-normal']) {
|
||||||
$test->addTestCase(
|
$test->add(
|
||||||
new CliTestCase(
|
new CliTestCase(
|
||||||
"$phpv $version index.php --xml $flush --disable-phpt $file",
|
"$phpv $version index.php --xml $flush --disable-phpt $file",
|
||||||
$AC['quiet'], $size
|
$AC['quiet'], $size
|
||||||
@ -88,7 +90,7 @@ foreach ($versions_to_test as $version) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
if (!$AC['exclude-standalone']) {
|
if (!$AC['exclude-standalone']) {
|
||||||
$test->addTestCase(
|
$test->add(
|
||||||
new CliTestCase(
|
new CliTestCase(
|
||||||
"$phpv $version index.php --xml $flush --standalone --disable-phpt $file",
|
"$phpv $version index.php --xml $flush --standalone --disable-phpt $file",
|
||||||
$AC['quiet'], $size
|
$AC['quiet'], $size
|
||||||
@ -97,7 +99,7 @@ foreach ($versions_to_test as $version) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!$AC['disable-phpt']) { // naming is not consistent
|
if (!$AC['disable-phpt']) { // naming is not consistent
|
||||||
$test->addTestCase(
|
$test->add(
|
||||||
new CliTestCase(
|
new CliTestCase(
|
||||||
$AC['php'] . " index.php --xml --php \"$phpv $version\" --only-phpt",
|
$AC['php'] . " index.php --xml --php \"$phpv $version\" --only-phpt",
|
||||||
$AC['quiet'], $size
|
$AC['quiet'], $size
|
||||||
@ -108,8 +110,6 @@ foreach ($versions_to_test as $version) {
|
|||||||
|
|
||||||
// This is the HTML Purifier website's test XML file. We could
|
// This is the HTML Purifier website's test XML file. We could
|
||||||
// add more websites, i.e. more configurations to test.
|
// add more websites, i.e. more configurations to test.
|
||||||
$test->addTestCase(new RemoteTestCase('http://htmlpurifier.org/dev/tests/?xml=1', 'http://htmlpurifier.org/dev/tests/?xml=1&dry=1&flush=1'));
|
// $test->add(new RemoteTestCase('http://htmlpurifier.org/dev/tests/?xml=1', 'http://htmlpurifier.org/dev/tests/?xml=1&dry=1&flush=1'));
|
||||||
|
|
||||||
$test->run($reporter);
|
$test->run($reporter);
|
||||||
|
|
||||||
shell_exec($AC['php'] . ' ../maintenance/flush-definition-cache.php');
|
|
||||||
|
Loading…
Reference in New Issue
Block a user