diff options
Diffstat (limited to 'tests/it.t')
-rwxr-xr-x | tests/it.t | 36 |
1 files changed, 31 insertions, 5 deletions
@@ -3,13 +3,13 @@ # Tests for it.class -function match( $regex, $string, $exp, $name ) +function match($regex, $string, $expect, $name) { $GLOBALS['TEST_MORE_LEVEL'] = 1; - $pass = is( it::match( $regex, $string ), $exp, $name ); - if( !$pass ) { - diag( " regex given: $regex" ); - diag( " regex converted: " . it::convertregex( $regex ) ); + $pass = is (it::match($regex, $string), $expect, $name); + if (!$pass) { + diag(" regex given: $regex"); + diag(" regex converted: " . it::convertregex($regex)); } $GLOBALS['TEST_MORE_LEVEL'] = 0; } @@ -183,6 +183,32 @@ match( 'Ö', 'match umlaute in latin1 case insensitive' ); + +is( + it::match(utf8_encode('aöBÜ'), utf8_encode("AÖbü"), array('utf8' => true)), + utf8_encode('AÖbü'), + "match utf-8 umlaute in case insensitive" +); + +$oldcharset = ini_get('default_charset'); +ini_set('default_charset', 'utf-8'); +match( + utf8_encode('aöBÜ'), utf8_encode('AÖbü'), + utf8_encode('AÖbü'), + "match utf-8 umlaute in case insensitive using default_charset" +); +is( + it::match('aöBÜ', 'AÖbü', array('utf8' => false)), + 'AÖbü', + "non-utf-8 override with default_charset=utf-8" +); +match( + '\w+', utf8_encode('Müller'), + utf8_encode('Müller'), + '\w matches umlaut in utf-8 mode' +); +ini_set('default_charset', $oldcharset); + is( it::match( 'abc', "aBc", array('casesensitive' => 1 )), false, |