3 * @version $Id: utf8_str_ireplace.test.php,v 1.3 2007/08/12 01:20:46 harryf Exp $
8 //--------------------------------------------------------------------
14 require_once(dirname(__FILE__).'/../config.php');
15 require_once UTF8 . '/str_ireplace.php';
17 //--------------------------------------------------------------------
22 class test_utf8_str_ireplace extends UnitTestCase {
24 function test_utf8_str_ireplace() {
25 $this->UnitTestCase('test_utf8_str_ireplace()');
28 function testReplace() {
29 $str = 'Iñtërnâtiônàlizætiøn';
30 $replaced = 'Iñtërnâtiônàlisetiøn';
31 $this->assertEqual(utf8_ireplace('lIzÆ','lise',$str),$replaced);
34 function testReplaceNoMatch() {
35 $str = 'Iñtërnâtiônàlizætiøn';
36 $replaced = 'Iñtërnâtiônàlizætiøn';
37 $this->assertEqual(utf8_ireplace('foo','bar',$str),$replaced);
40 function testEmptyString() {
43 $this->assertEqual(utf8_ireplace('foo','bar',$str),$replaced);
46 function testEmptySearch() {
47 $str = 'Iñtërnâtiônàlizætiøn';
48 $replaced = 'Iñtërnâtiônàlizætiøn';
49 $this->assertEqual(utf8_ireplace('','x',$str),$replaced);
52 function testReplaceCount() {
53 $str = 'Iñtërnâtiônàlizætiøn';
54 $replaced = 'IñtërXâtiôXàlizætiøn';
55 $this->assertEqual(utf8_ireplace('n','X',$str,2),$replaced);
58 function testReplaceDifferentSearchReplaceLength() {
59 $str = 'Iñtërnâtiônàlizætiøn';
60 $replaced = 'IñtërXXXâtiôXXXàlizætiøXXX';
61 $this->assertEqual(utf8_ireplace('n','XXX',$str),$replaced);
64 function testReplaceArrayAsciiSearch() {
65 $str = 'Iñtërnâtiônàlizætiøn';
66 $replaced = 'Iñyërxâyiôxàlizæyiøx';
75 function testReplaceArrayUTF8Search() {
76 $str = 'Iñtërnâtiônàlizætiøn';
77 $replaced = 'I?tërnâti??nàliz????ti???n';
80 array('Ñ','ô','ø','Æ'),
81 array('?','??','???','????'),
86 function testReplaceArrayStringReplace() {
87 $str = 'Iñtërnâtiônàlizætiøn';
88 $replaced = 'I?tërnâti?nàliz?ti?n';
91 array('Ñ','ô','ø','Æ'),
97 function testReplaceArraySingleArrayReplace() {
98 $str = 'Iñtërnâtiônàlizætiøn';
99 $replaced = 'I?tërnâtinàliztin';
102 array('Ñ','ô','ø','Æ'),
108 function testReplaceLinefeed() {
109 $str = "Iñtërnâti\nônàlizætiøn";
110 $replaced = "Iñtërnâti\nônàlisetiøn";
111 $this->assertEqual(utf8_ireplace('lIzÆ','lise',$str),$replaced);
114 function testReplaceLinefeedSearch() {
115 $str = "Iñtërnâtiônàli\nzætiøn";
116 $replaced = "Iñtërnâtiônàlisetiøn";
117 $this->assertEqual(utf8_ireplace("lI\nzÆ",'lise',$str),$replaced);
122 //--------------------------------------------------------------------
127 if (!defined('TEST_RUNNING')) {
128 define('TEST_RUNNING', true);
129 $test = & new test_utf8_str_ireplace();
130 $reporter = & getTestReporter();
131 $test->run($reporter);