Refactor IDAccumulator so that unit tests now work, and initialization is inside...
[htmlpurifier/rdancer.git] / tests / HTMLPurifier / IDAccumulatorTest.php
blobc6249ecadf8ebc97da5dd4bf4907bc2019fad912
1 <?php
3 require_once 'HTMLPurifier/IDAccumulator.php';
5 class HTMLPurifier_IDAccumulatorTest extends HTMLPurifier_Harness
8 function test() {
10 // initialize the accumulator
11 $accumulator = new HTMLPurifier_IDAccumulator();
13 $this->assertTrue( $accumulator->add('id1'));
14 $this->assertTrue( $accumulator->add('id2'));
15 $this->assertFalse($accumulator->add('id1')); // repeated id
17 // you can also access the properties (they're public)
18 $this->assertTrue( isset($accumulator->ids['id2']) );
22 function testLoad() {
24 $accumulator = new HTMLPurifier_IDAccumulator();
26 $accumulator->load(array('id1', 'id2', 'id3'));
28 $this->assertFalse($accumulator->add('id1')); // repeated id
29 $this->assertTrue($accumulator->add('id4'));
33 function testBuild() {
34 $this->config->set('Attr', 'IDBlacklist', array('foo'));
35 $accumulator = HTMLPurifier_IDAccumulator::build($this->config, $this->context);
36 $this->assertTrue( isset($accumulator->ids['foo']) );