Blame view

htmlpurifier/tests/HTMLPurifier/AttrDef/EnumTest.php 1.06 KB
Maulyanda authored
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
<?php

class HTMLPurifier_AttrDef_EnumTest extends HTMLPurifier_AttrDefHarness
{

    public function testCaseInsensitive()
    {
        $this->def = new HTMLPurifier_AttrDef_Enum(array('one', 'two'));
        $this->assertDef('one');
        $this->assertDef('ONE', 'one');
    }

    public function testCaseSensitive()
    {
        $this->def = new HTMLPurifier_AttrDef_Enum(array('one', 'two'), true);
        $this->assertDef('one');
        $this->assertDef('ONE', false);
    }

    public function testFixing()
    {
        $this->def = new HTMLPurifier_AttrDef_Enum(array('one'));
        $this->assertDef(' one ', 'one');
    }

    public function test_make()
    {
        $factory = new HTMLPurifier_AttrDef_Enum();

        $def = $factory->make('foo,bar');
        $def2 = new HTMLPurifier_AttrDef_Enum(array('foo', 'bar'));
        $this->assertIdentical($def, $def2);

        $def = $factory->make('s:foo,BAR');
        $def2 = new HTMLPurifier_AttrDef_Enum(array('foo', 'BAR'), true);
        $this->assertIdentical($def, $def2);
    }

}

// vim: et sw=4 sts=4