Annotation of embedaddon/php/ext/intl/tests/msgfmt_parse.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: msgfmt_parse() tests
! 3: --SKIPIF--
! 4: <?php if( !extension_loaded( 'intl' ) ) print 'skip'; ?>
! 5: --FILE--
! 6: <?php
! 7:
! 8: /*
! 9: * Format a number using misc locales/patterns.
! 10: */
! 11:
! 12:
! 13: function ut_main()
! 14: {
! 15: $locales = array(
! 16: 'en_US' => "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
! 17: 'ru_UA' => "{0,number,integer} мавп на {1,number,integer} деревах це {2,number} мавпи на кожному деревi",
! 18: 'de' => "{0,number,integer} Affen über {1,number,integer} Bäume um {2,number} Affen pro Baum",
! 19: 'en_UK' => "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
! 20: 'root' => '{0,whatever} would not work!',
! 21: 'fr' => 'C\'est {0,number,integer}',
! 22: );
! 23:
! 24: $results = array(
! 25: 'en_US' => "4,560 monkeys on 123 trees make 37.073 monkeys per tree",
! 26: 'ru_UA' => "4 560 мавп на 123 деревах це 37,073 мавпи на кожному деревi",
! 27: 'de' => "4.560 Affen über 123 Bäume um 37,073 Affen pro Baum",
! 28: 'en_UK' => "4,560 monkeys on 123 trees make 37.073 monkeys per tree",
! 29: 'root' => "4,560 monkeys on 123 trees make 37.073 monkeys per tree",
! 30: 'fr' => "C'est 42",
! 31:
! 32: );
! 33:
! 34: $str_res = '';
! 35:
! 36: foreach( $locales as $locale => $pattern )
! 37: {
! 38: $str_res .= "\nLocale is: $locale\n";
! 39: $fmt = ut_msgfmt_create( $locale, $pattern );
! 40: if(!$fmt) {
! 41: $str_res .= dump(intl_get_error_message())."\n";
! 42: continue;
! 43: }
! 44: $str_res .= dump( ut_msgfmt_parse( $fmt, $results[$locale] ) ) . "\n";
! 45: $str_res .= dump( ut_msgfmt_parse_message($locale, $pattern, $results[$locale])) . "\n";
! 46: }
! 47: return $str_res;
! 48: }
! 49:
! 50: include_once( 'ut_common.inc' );
! 51:
! 52: // Run the test
! 53: ut_run();
! 54:
! 55: ?>
! 56: --EXPECT--
! 57: Locale is: en_US
! 58: array (
! 59: 0 => 4560,
! 60: 1 => 123,
! 61: 2 => 37.073,
! 62: )
! 63: array (
! 64: 0 => 4560,
! 65: 1 => 123,
! 66: 2 => 37.073,
! 67: )
! 68:
! 69: Locale is: ru_UA
! 70: array (
! 71: 0 => 4560,
! 72: 1 => 123,
! 73: 2 => 37.073,
! 74: )
! 75: array (
! 76: 0 => 4560,
! 77: 1 => 123,
! 78: 2 => 37.073,
! 79: )
! 80:
! 81: Locale is: de
! 82: array (
! 83: 0 => 4560,
! 84: 1 => 123,
! 85: 2 => 37.073,
! 86: )
! 87: array (
! 88: 0 => 4560,
! 89: 1 => 123,
! 90: 2 => 37.073,
! 91: )
! 92:
! 93: Locale is: en_UK
! 94: array (
! 95: 0 => 4560,
! 96: 1 => 123,
! 97: 2 => 37.073,
! 98: )
! 99: array (
! 100: 0 => 4560,
! 101: 1 => 123,
! 102: 2 => 37.073,
! 103: )
! 104:
! 105: Locale is: root
! 106: 'msgfmt_create: message formatter creation failed: U_ILLEGAL_ARGUMENT_ERROR'
! 107:
! 108: Locale is: fr
! 109: array (
! 110: 0 => 42,
! 111: )
! 112: array (
! 113: 0 => 42,
! 114: )
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>