0
0
mirror of https://github.com/ezyang/htmlpurifier.git synced 2024-09-20 03:05:18 +00:00
htmlpurifier/tests/HTMLPurifier/AttrDef/IDTest.php

40 lines
1.2 KiB
PHP

<?php
require_once 'HTMLPurifier/AttrDef/ID.php';
require_once 'HTMLPurifier/IDAccumulator.php';
require_once 'HTMLPurifier/Config.php';
class HTMLPurifier_AttrDef_IDTest extends UnitTestCase
{
function test() {
$acc = new HTMLPurifier_IDAccumulator();
$def = new HTMLPurifier_AttrDef_ID();
generate_mock_once('HTMLPurifier_Config');
$config = new HTMLPurifier_ConfigMock();
// valid ID names
$this->assertTrue($def->validate('alpha', $config, $acc));
$this->assertTrue($def->validate('al_ha', $config, $acc));
$this->assertTrue($def->validate('a0-:.', $config, $acc));
$this->assertTrue($def->validate('a' , $config, $acc));
// invalid ID names
$this->assertFalse($def->validate('<asa', $config, $acc));
$this->assertFalse($def->validate('0123', $config, $acc));
$this->assertFalse($def->validate('.asa', $config, $acc));
// test duplicate detection
$this->assertFalse($def->validate('a' , $config, $acc));
// valid once whitespace stripped, but needs to be amended
$this->assertEqual('whee', $def->validate(' whee ', $config, $acc));
}
}
?>