summaryrefslogtreecommitdiff
path: root/t/inc/Title.t
diff options
context:
space:
mode:
Diffstat (limited to 't/inc/Title.t')
-rw-r--r--t/inc/Title.t33
1 files changed, 33 insertions, 0 deletions
diff --git a/t/inc/Title.t b/t/inc/Title.t
new file mode 100644
index 00000000..51157197
--- /dev/null
+++ b/t/inc/Title.t
@@ -0,0 +1,33 @@
+#!/usr/bin/env php
+<?php
+
+require 'Test.php';
+
+plan( 2 + 255 );
+
+require_ok( 'includes/Defines.php' );
+
+# require_ok() doesn't work for these, find out why
+define( 'MEDIAWIKI', 1 );
+require 'LocalSettings.php';
+require 'includes/DefaultSettings.php';
+
+require_ok( 'includes/Title.php' );
+
+#
+# legalChars()
+#
+
+$titlechars = Title::legalChars();
+
+foreach ( range( 1, 255 ) as $num ) {
+ $chr = chr( $num );
+ if ( strpos( "#[]{}<>|", $chr ) !== false || preg_match( "/[\\x00-\\x1f\\x7f]/", $chr ) ) {
+ unlike( $chr, "/[$titlechars]/", "chr($num) = $chr is not a valid titlechar" );
+ } else {
+ like( $chr, "/[$titlechars]/", "chr($num) = $chr is a valid titlechar" );
+ }
+}
+
+
+?>