assertPurification("Null byte\0", "Null byte"); } public function test_purifyArray() { $this->assertIdentical( $this->purifier->purifyArray( array('Good', 'Sketchy', 'foo' => '') ), array('Good', 'Sketchy', 'foo' => '') ); $this->assertIsA($this->purifier->context, 'array'); } public function test_purifyArray_nested() { $this->assertIdentical( $this->purifier->purifyArray( array('Good', 'Sketchy', 'foo' => array('bar' => '')) ), array('Good', 'Sketchy', 'foo' => array('bar' => '')) ); } public function test_purifyArray_empty() { $purifiedEmptyArray = $this->purifier->purifyArray(array()); $this->assertTrue( empty($purifiedEmptyArray) ); } public function testGetInstance() { $purifier = HTMLPurifier::getInstance(); $purifier2 = HTMLPurifier::getInstance(); $this->assertReference($purifier, $purifier2); } public function testMakeAbsolute() { $this->config->set('URI.Base', 'http://example.com/bar/baz.php'); $this->config->set('URI.MakeAbsolute', true); $this->assertPurification( 'Foobar', 'Foobar' ); } public function testDisableResources() { $this->config->set('URI.DisableResources', true); $this->assertPurification('', ''); } public function test_addFilter_deprecated() { $this->expectError('HTMLPurifier->addFilter() is deprecated, use configuration directives in the Filter namespace or Filter.Custom'); generate_mock_once('HTMLPurifier_Filter'); $this->purifier->addFilter($mock = new HTMLPurifier_FilterMock()); $mock->expectOnce('preFilter'); $mock->expectOnce('postFilter'); $this->purifier->purify('foo'); } } // vim: et sw=4 sts=4