Annotation of embedaddon/php/ext/intl/tests/dateformat_parse.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: datefmt_parse_code()
! 3: --SKIPIF--
! 4: <?php if( !extension_loaded( 'intl' ) ) print 'skip'; ?>
! 5: --INI--
! 6: date.timezone="America/Los_Angeles"
! 7: --FILE--
! 8: <?php
! 9:
! 10: /*
! 11: * Test for the datefmt_parse function
! 12: */
! 13:
! 14: putenv('TZ=America/Los_Angeles');
! 15:
! 16: function ut_main()
! 17: {
! 18: $locale_arr = array (
! 19: 'en_US_CA'
! 20: );
! 21:
! 22: $datetype_arr = array (
! 23: IntlDateFormatter::FULL,
! 24: IntlDateFormatter::LONG,
! 25: IntlDateFormatter::MEDIUM,
! 26: IntlDateFormatter::SHORT,
! 27: IntlDateFormatter::NONE
! 28: );
! 29:
! 30: $res_str = '';
! 31:
! 32:
! 33: $text_arr = array (
! 34: // Full parsing
! 35: array("Sunday, September 18, 2039 4:06:40 PM PT", IntlDateFormatter::FULL, IntlDateFormatter::FULL),
! 36: array("Wednesday, December 17, 1969 6:40:00 PM PT", IntlDateFormatter::FULL, IntlDateFormatter::FULL),
! 37: array("Thursday, December 18, 1969 8:49:59 PM PST", IntlDateFormatter::FULL, IntlDateFormatter::FULL),
! 38: array("December 18, 1969 8:49:59 AM PST", IntlDateFormatter::LONG, IntlDateFormatter::FULL),
! 39: array("12/18/69 8:49 AM", IntlDateFormatter::SHORT, IntlDateFormatter::SHORT),
! 40: array("19691218 08:49 AM", IntlDateFormatter::SHORT, IntlDateFormatter::SHORT),
! 41: // Partial parsing
! 42: array("Sunday, September 18, 2039 4:06:40 PM PT", IntlDateFormatter::FULL, IntlDateFormatter::NONE),
! 43: array("Sunday, September 18, 2039 4:06:40 PM PT", IntlDateFormatter::FULL, IntlDateFormatter::SHORT),
! 44: array("December 18, 1969 8:49:59 AM PST", IntlDateFormatter::LONG, IntlDateFormatter::NONE),
! 45: array("December 18, 1969 8:49:59 AM PST", IntlDateFormatter::LONG, IntlDateFormatter::SHORT),
! 46: array("12/18/69 8:49 AM", IntlDateFormatter::SHORT, IntlDateFormatter::LONG),
! 47: array("19691218 08:49 AM", IntlDateFormatter::SHORT, IntlDateFormatter::LONG),
! 48: );
! 49:
! 50: foreach( $text_arr as $text_entry){
! 51: $fmt = ut_datefmt_create( 'en_US_CA', $text_entry[1], $text_entry[2]);
! 52: $parse_pos = 0;
! 53: $parsed = ut_datefmt_parse( $fmt , $text_entry[0] , $parse_pos );
! 54:
! 55: $res_str .= "\nInput text : {$text_entry[0]} ; DF = {$text_entry[1]}; TF = {$text_entry[2]}";
! 56: if( intl_get_error_code() != U_ZERO_ERROR) {
! 57: $res_str .= "\nError : ".intl_get_error_message();
! 58: }
! 59: $res_str .= "\nParsed: $parsed; parse_pos : $parse_pos\n";
! 60: }
! 61:
! 62: return $res_str;
! 63:
! 64: }
! 65:
! 66: include_once( 'ut_common.inc' );
! 67:
! 68: // Run the test
! 69: ut_run();
! 70: ?>
! 71: --EXPECT--
! 72:
! 73: Input text : Sunday, September 18, 2039 4:06:40 PM PT ; DF = 0; TF = 0
! 74: Parsed: 2200000000; parse_pos : 40
! 75:
! 76: Input text : Wednesday, December 17, 1969 6:40:00 PM PT ; DF = 0; TF = 0
! 77: Parsed: -1200000; parse_pos : 42
! 78:
! 79: Input text : Thursday, December 18, 1969 8:49:59 PM PST ; DF = 0; TF = 0
! 80: Parsed: -1105801; parse_pos : 42
! 81:
! 82: Input text : December 18, 1969 8:49:59 AM PST ; DF = 1; TF = 0
! 83: Parsed: -1149001; parse_pos : 32
! 84:
! 85: Input text : 12/18/69 8:49 AM ; DF = 3; TF = 3
! 86: Parsed: -1149060; parse_pos : 16
! 87:
! 88: Input text : 19691218 08:49 AM ; DF = 3; TF = 3
! 89: Error : Date parsing failed: U_PARSE_ERROR
! 90: Parsed: ; parse_pos : 8
! 91:
! 92: Input text : Sunday, September 18, 2039 4:06:40 PM PT ; DF = 0; TF = -1
! 93: Parsed: 2199942000; parse_pos : 26
! 94:
! 95: Input text : Sunday, September 18, 2039 4:06:40 PM PT ; DF = 0; TF = 3
! 96: Error : Date parsing failed: U_PARSE_ERROR
! 97: Parsed: ; parse_pos : 31
! 98:
! 99: Input text : December 18, 1969 8:49:59 AM PST ; DF = 1; TF = -1
! 100: Parsed: -1180800; parse_pos : 17
! 101:
! 102: Input text : December 18, 1969 8:49:59 AM PST ; DF = 1; TF = 3
! 103: Error : Date parsing failed: U_PARSE_ERROR
! 104: Parsed: ; parse_pos : 22
! 105:
! 106: Input text : 12/18/69 8:49 AM ; DF = 3; TF = 1
! 107: Error : Date parsing failed: U_PARSE_ERROR
! 108: Parsed: ; parse_pos : 13
! 109:
! 110: Input text : 19691218 08:49 AM ; DF = 3; TF = 1
! 111: Error : Date parsing failed: U_PARSE_ERROR
! 112: Parsed: ; parse_pos : 8
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>