summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Gohr <andi@splitbrain.org>2006-06-17 14:52:02 +0200
committerAndreas Gohr <andi@splitbrain.org>2006-06-17 14:52:02 +0200
commit301ad18b532bb2f4ca2a9f4006555c13d3cfddfc (patch)
tree570a94670441305771ff8b371eea4a72ae4ee148
parenta966cbde06ef0b40c8fd3fa07c6d98323216bac8 (diff)
downloadrpg-301ad18b532bb2f4ca2a9f4006555c13d3cfddfc.tar.gz
rpg-301ad18b532bb2f4ca2a9f4006555c13d3cfddfc.tar.bz2
testcase for utf8_substr
darcs-hash:20060617125202-7ad00-bbcce419fca4bac38340bcb2dd148c37b13bd9cb.gz
-rw-r--r--_test/cases/inc/utf8_substr.test.php30
1 files changed, 30 insertions, 0 deletions
diff --git a/_test/cases/inc/utf8_substr.test.php b/_test/cases/inc/utf8_substr.test.php
new file mode 100644
index 000000000..92bc65fe3
--- /dev/null
+++ b/_test/cases/inc/utf8_substr.test.php
@@ -0,0 +1,30 @@
+<?php
+// use no mbstring help here
+if(!defined('UTF8_NOMBSTRING')) define('UTF8_NOMBSTRING',1);
+require_once DOKU_INC.'inc/utf8.php';
+
+class utf8_substr_test extends UnitTestCase {
+
+
+ function test1(){
+ // we test multiple cases here - format: in, offset, length, out
+ $tests = array();
+ $tests[] = array('asciistring',2,null,'ciistring');
+ $tests[] = array('asciistring',2,4,'ciis');
+ $tests[] = array('asciistring',-4,null,'ring');
+ $tests[] = array('asciistring',2,-4,'ciist');
+ $tests[] = array('asciistring',-6,-2,'stri');
+
+ $tests[] = array('живπά우리をあöä',2,null,'вπά우리をあöä');
+ $tests[] = array('живπά우리をあöä',2,4,'вπά우');
+ $tests[] = array('живπά우리をあöä',-4,null,'をあöä');
+ $tests[] = array('живπά우리をあöä',2,-4,'вπά우리');
+ $tests[] = array('живπά우리をあöä',-6,-2,'우리をあ');
+
+ foreach($tests as $test){
+ $this->assertEqual(utf8_substr($test[0],$test[1],$test[2]),$test[3]);
+ }
+ }
+
+}
+//Setup VIM: ex: et ts=4 enc=utf-8 :