diff --git a/library/HTMLPurifier.includes.php b/library/HTMLPurifier.includes.php
index aeecdb97..6e86c36e 100644
--- a/library/HTMLPurifier.includes.php
+++ b/library/HTMLPurifier.includes.php
@@ -133,6 +133,7 @@ require 'HTMLPurifier/ConfigSchema/StringHashReverseAdapter.php';
require 'HTMLPurifier/ConfigSchema/Validator.php';
require 'HTMLPurifier/ConfigSchema/Validator/Alnum.php';
require 'HTMLPurifier/ConfigSchema/Validator/Exists.php';
+require 'HTMLPurifier/ConfigSchema/Validator/Unique.php';
require 'HTMLPurifier/DefinitionCache/Decorator.php';
require 'HTMLPurifier/DefinitionCache/Null.php';
require 'HTMLPurifier/DefinitionCache/Serializer.php';
diff --git a/library/HTMLPurifier/ConfigSchema.php b/library/HTMLPurifier/ConfigSchema.php
index 7909db22..48177624 100644
--- a/library/HTMLPurifier/ConfigSchema.php
+++ b/library/HTMLPurifier/ConfigSchema.php
@@ -158,22 +158,6 @@ class HTMLPurifier_ConfigSchema {
* @param $description Description of the namespace
*/
public function addNamespace($namespace, $description) {
- if (HTMLPURIFIER_SCHEMA_STRICT) {
- if (isset($this->info[$namespace])) {
- trigger_error('Cannot redefine namespace', E_USER_ERROR);
- return;
- }
- if (!ctype_alnum($namespace)) {
- trigger_error('Namespace name must be alphanumeric',
- E_USER_ERROR);
- return;
- }
- if (empty($description)) {
- trigger_error('Description must be non-empty',
- E_USER_ERROR);
- return;
- }
- }
$this->info[$namespace] = array();
$this->info_namespace[$namespace] = new HTMLPurifier_ConfigDef_Namespace();
$this->info_namespace[$namespace]->description = $description;
diff --git a/library/HTMLPurifier/ConfigSchema/Interchange.php b/library/HTMLPurifier/ConfigSchema/Interchange.php
index d9d98e2f..d44cf4c3 100644
--- a/library/HTMLPurifier/ConfigSchema/Interchange.php
+++ b/library/HTMLPurifier/ConfigSchema/Interchange.php
@@ -60,7 +60,7 @@ class HTMLPurifier_ConfigSchema_Interchange
// Common validators
$validator->addValidator(new HTMLPurifier_ConfigSchema_Validator_Exists('ID'));
- $validator->addValidator(new HTMLPurifier_ConfigSchema_Validator_Duplicate());
+ $validator->addValidator(new HTMLPurifier_ConfigSchema_Validator_Unique());
$validator->addValidator(new HTMLPurifier_ConfigSchema_Validator_Exists('DESCRIPTION'));
// Namespace validators
diff --git a/library/HTMLPurifier/ConfigSchema/Validator/Duplicate.php b/library/HTMLPurifier/ConfigSchema/Validator/Unique.php
similarity index 85%
rename from library/HTMLPurifier/ConfigSchema/Validator/Duplicate.php
rename to library/HTMLPurifier/ConfigSchema/Validator/Unique.php
index bcada41d..6775f025 100644
--- a/library/HTMLPurifier/ConfigSchema/Validator/Duplicate.php
+++ b/library/HTMLPurifier/ConfigSchema/Validator/Unique.php
@@ -6,7 +6,7 @@
* Although this tests both possible values, in practice the ID
* will only be in one or the other. We do this to keep things simple.
*/
-class HTMLPurifier_ConfigSchema_Validator_Duplicate extends HTMLPurifier_ConfigSchema_Validator
+class HTMLPurifier_ConfigSchema_Validator_Unique extends HTMLPurifier_ConfigSchema_Validator
{
public function validate(&$arr, $interchange) {
diff --git a/tests/HTMLPurifier/ConfigSchema/Validator/DuplicateTest.php b/tests/HTMLPurifier/ConfigSchema/Validator/UniqueTest.php
similarity index 86%
rename from tests/HTMLPurifier/ConfigSchema/Validator/DuplicateTest.php
rename to tests/HTMLPurifier/ConfigSchema/Validator/UniqueTest.php
index ac3fd4e3..fce84e11 100644
--- a/tests/HTMLPurifier/ConfigSchema/Validator/DuplicateTest.php
+++ b/tests/HTMLPurifier/ConfigSchema/Validator/UniqueTest.php
@@ -1,11 +1,11 @@
validator = new HTMLPurifier_ConfigSchema_Validator_Duplicate();
+ $this->validator = new HTMLPurifier_ConfigSchema_Validator_Unique();
}
public function testValidateNamespace() {
diff --git a/tests/HTMLPurifier/ConfigSchemaTest.php b/tests/HTMLPurifier/ConfigSchemaTest.php
index 49abf145..b4e388da 100644
--- a/tests/HTMLPurifier/ConfigSchemaTest.php
+++ b/tests/HTMLPurifier/ConfigSchemaTest.php
@@ -19,15 +19,6 @@ class HTMLPurifier_ConfigSchemaTest extends HTMLPurifier_Harness
$this->assertIdentical($this->schema->info_namespace, array(
'http' => new HTMLPurifier_ConfigDef_Namespace($d)
));
-
- $this->expectError('Cannot redefine namespace');
- $this->schema->addNamespace('http', 'It is used to serve webpages.');
-
- $this->expectError('Namespace name must be alphanumeric');
- $this->schema->addNamespace('ssh+http', 'This http is tunneled through SSH.');
-
- $this->expectError('Description must be non-empty');
- $this->schema->addNamespace('ftp', null);
}
function test_define() {
diff --git a/tests/index.php b/tests/index.php
index 45eab7c9..b045b804 100755
--- a/tests/index.php
+++ b/tests/index.php
@@ -57,6 +57,16 @@ if ($AC['disable-phpt'] && $AC['only-phpt']) {
exit(1);
}
+// Shell-script code is executed
+
+if ($AC['flush']) {
+ if (SimpleReporter::inCli() && !$AC['xml']) {
+ passthru($AC['php'] . ' ../maintenance/flush.php');
+ } else {
+ shell_exec($AC['php'] . ' ../maintenance/flush.php');
+ }
+}
+
// initialize and load HTML Purifier
// use ?standalone to load the alterative standalone stub
if ($AC['standalone']) {
@@ -68,16 +78,6 @@ if ($AC['standalone']) {
}
require 'HTMLPurifier/Harness.php';
-// Shell-script code is executed
-
-if ($AC['flush']) {
- if (SimpleReporter::inCli() && !$AC['xml']) {
- passthru($AC['php'] . ' ../maintenance/flush.php');
- } else {
- shell_exec($AC['php'] . ' ../maintenance/flush.php');
- }
-}
-
// Now, userland code begins to be executed
// setup special DefinitionCacheFactory decorator