1
0
mirror of https://github.com/ezyang/htmlpurifier.git synced 2025-08-03 20:58:11 +02:00

Make name="" and id="" play nicely together.

Signed-off-by: Edward Z. Yang <edwardzyang@thewritingpot.com>
This commit is contained in:
Edward Z. Yang
2009-02-21 02:58:30 -05:00
parent 92344cc83a
commit fcbf724e6e
9 changed files with 84 additions and 4 deletions

View File

@@ -0,0 +1,40 @@
<?php
class HTMLPurifier_AttrTransform_NameSyncTest extends HTMLPurifier_AttrTransformHarness
{
function setUp() {
parent::setUp();
$this->obj = new HTMLPurifier_AttrTransform_NameSync();
$this->accumulator = new HTMLPurifier_IDAccumulator();
$this->context->register('IDAccumulator', $this->accumulator);
$this->config->set('Attr', 'EnableID', true);
}
function testEmpty() {
$this->assertResult( array() );
}
function testAllowSame() {
$this->assertResult(
array('name' => 'free', 'id' => 'free')
);
}
function testAllowDifferent() {
$this->assertResult(
array('name' => 'tryit', 'id' => 'thisgood')
);
}
function testCheckName() {
$this->accumulator->add('notok');
$this->assertResult(
array('name' => 'notok', 'id' => 'ok'),
array('id' => 'ok')
);
}
}
// vim: et sw=4 sts=4

View File

@@ -81,7 +81,7 @@ class HTMLPurifier_ComplexHarness extends HTMLPurifier_Harness
$this->assertIdentical($expect, $result);
if ($expect !== $result) {
echo '<pre>' . htmlspecialchars($result) . '</pre>';
echo '<pre>' . var_dump($result) . '</pre>';
}
}

View File

@@ -0,0 +1,11 @@
--INI--
Attr.EnableID = true
--HTML--
<a name="foo" id="foo">Test</a>
<a name="foo">Test2</a>
<a name="bar" id="baz">Test3</a>
--EXPECT--
<a name="foo" id="foo">Test</a>
<a>Test2</a>
<a name="bar" id="baz">Test3</a>
--# vim: et sw=4 sts=4