[geeklog-cvs] geeklog: Updated lib-mbyte.php for use with test framework

geeklog-cvs at lists.geeklog.net geeklog-cvs at lists.geeklog.net
Wed Jul 29 14:53:22 EDT 2009


details:   http://project.geeklog.net/cgi-bin/hgweb.cgi/rev/bd3a784653f8
changeset: 7198:bd3a784653f8
user:      Sean Clark <sc1245 at messiah.edu>
date:      Wed Jul 29 14:49:13 2009 -0400
description:
Updated lib-mbyte.php for use with test framework

diffstat:

 system/lib-mbyte.php |  33 ++++++++++++++++++++++-----------
 1 files changed, 22 insertions(+), 11 deletions(-)

diffs (68 lines):

diff -r d9e3fbb9e583 -r bd3a784653f8 system/lib-mbyte.php
--- a/system/lib-mbyte.php	Wed Jul 29 11:51:34 2009 +0200
+++ b/system/lib-mbyte.php	Wed Jul 29 14:49:13 2009 -0400
@@ -45,7 +45,7 @@
 
     $language = array ();
     $fd = opendir ($_CONF['path_language']);
-
+	
     while (($file = @readdir ($fd)) !== false) {
         if ((substr ($file, 0, 1) != '.') && preg_match ('/\.php$/i', $file)
                 && is_file ($_CONF['path_language'] . $file)
@@ -77,12 +77,14 @@
         }
     }
     asort ($language);
-
-    return $language;
+	
+    return $language;	
 }
 
+
 // replacement functions for UTF-8 functions
-function MBYTE_checkEnabled()
+// $test, $enabled parameters only relevant for the PHPUnit test suite
+function MBYTE_checkEnabled($test = '', $enabled = true)
 {
     global $LANG_CHARSET;
 
@@ -90,21 +92,30 @@
 
     if (!isset($mb_enabled)) {
         $mb_enabled = false;
-        if (strcasecmp($LANG_CHARSET, 'utf-8') == 0) {
-            if (function_exists('mb_eregi_replace')) {
-                $mb_enabled = mb_internal_encoding('UTF-8');
-            }
+        if (strcasecmp($LANG_CHARSET, 'utf-8') == 0) {			
+			if($test == '') {
+			// Normal situation in live environment
+            	if (function_exists('mb_eregi_replace')) {
+                	$mb_enabled = mb_internal_encoding('UTF-8');
+				}
+				
+            } elseif($test == 'test') {
+				// Just for tests, true if we want function to exist
+				if($enabled) {
+					$mb_enabled = mb_internal_encoding('UTF-8');
+				}
+			}
         }
     }
-
+	
     return $mb_enabled;
-}
+}	
 
 
 function MBYTE_strlen($str)
 {
     static $mb_enabled;
-
+	
     if (!isset($mb_enabled)) {
         $mb_enabled = MBYTE_checkEnabled();
     }



More information about the geeklog-cvs mailing list