Tagged 0.7.5
[scuttle] / includes / utf8 / tests / cases / utf8_specials.test.php
diff --git a/includes/utf8/tests/cases/utf8_specials.test.php b/includes/utf8/tests/cases/utf8_specials.test.php
new file mode 100644 (file)
index 0000000..326e6ab
--- /dev/null
@@ -0,0 +1,86 @@
+<?php
+/**
+* @version $Id: utf8_specials.test.php,v 1.2 2006/10/17 09:09:13 harryf Exp $
+* @package utf8
+* @subpackage Tests
+*/
+
+//--------------------------------------------------------------------
+/**
+* Includes
+* @package utf8
+* @subpackage Tests
+*/
+require_once(dirname(__FILE__).'/../config.php');
+require_once UTF8 . '/utils/unicode.php';
+require_once UTF8 . '/utils/specials.php';
+
+//--------------------------------------------------------------------
+/**
+* @package utf8
+* @subpackage Tests
+*/
+class test_utf8_is_word_chars extends UnitTestCase {
+
+    function test_utf8_is_word_chars() {
+        $this->UnitTestCase('test_utf8_is_word_chars()');
+    }
+    
+    function testEmptyString() {
+        $this->assertTrue(utf8_is_word_chars(''));
+    }
+    
+    function testAllWordChars() {
+        $this->assertTrue(utf8_is_word_chars('HelloWorld'));
+    }
+    
+    function testSpecials() {
+        $str = 'Hello ' .
+            chr(0xe0 | (0x2234 >> 12)) .
+            chr(0x80 | ((0x2234 >> 6) & 0x003f)) .
+            chr(0x80 | (0x2234 & 0x003f)) .
+            ' World';
+        $this->assertFalse(utf8_is_word_chars($str));
+    }
+    
+}
+
+//--------------------------------------------------------------------
+/**
+* @package utf8
+* @subpackage Tests
+*/
+class test_utf8_strip_specials extends UnitTestCase {
+
+    function test_utf8_strip_specials() {
+        $this->UnitTestCase('test_utf8_strip_specials()');
+    }
+    
+    function testEmptyString() {
+        $this->assertEqual(utf8_strip_specials(''),'');
+    }
+    
+    function testStrip() {
+        $str = 'Hello ' .
+            chr(0xe0 | (0x2234 >> 12)) .
+            chr(0x80 | ((0x2234 >> 6) & 0x003f)) .
+            chr(0x80 | (0x2234 & 0x003f)) .
+            ' World';
+        $this->assertEqual(utf8_strip_specials($str),'HelloWorld');
+    }
+    
+}
+
+//--------------------------------------------------------------------
+/**
+* @package utf8
+* @subpackage Tests
+*/
+if (!defined('TEST_RUNNING')) {
+    define('TEST_RUNNING', true);
+    $test = &new GroupTest('utf8_ascii');
+    $test->addTestCase(new test_utf8_strip_specials());
+    $test->addTestCase(new test_utf8_is_word_chars());
+    $reporter = & getTestReporter();
+    $test->run($reporter);
+}

Benjamin Mako Hill || Want to submit a patch?