aboutsummaryrefslogtreecommitdiff
path: root/contexts/data/lib/closure-library/closure/goog/i18n/datetimeparse_test.html
diff options
context:
space:
mode:
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/i18n/datetimeparse_test.html')
-rw-r--r--contexts/data/lib/closure-library/closure/goog/i18n/datetimeparse_test.html702
1 files changed, 0 insertions, 702 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/i18n/datetimeparse_test.html b/contexts/data/lib/closure-library/closure/goog/i18n/datetimeparse_test.html
deleted file mode 100644
index e1d917c..0000000
--- a/contexts/data/lib/closure-library/closure/goog/i18n/datetimeparse_test.html
+++ /dev/null
@@ -1,702 +0,0 @@
-<!DOCTYPE html>
-<html>
-<!--
-Copyright 2006 The Closure Library Authors. All Rights Reserved.
-
-Use of this source code is governed by the Apache License, Version 2.0.
-See the COPYING file for details.
--->
-<!--
- All Rights Reserved.
--->
-<head>
-<meta http-equiv="X-UA-Compatible" content="IE=edge">
-<title>Closure Unit Tests - goog.i18n.DateTimeParse</title>
-<meta charset="utf-8"/>
-<script src="../base.js"></script>
-<script>
- goog.require('goog.date.Date');
- goog.require('goog.i18n.DateTimeFormat');
- goog.require('goog.i18n.DateTimeParse');
- goog.require('goog.i18n.DateTimeSymbols');
- goog.require('goog.i18n.DateTimeSymbols_en');
- goog.require('goog.i18n.DateTimeSymbols_fr');
- goog.require('goog.i18n.DateTimeSymbols_zh');
- goog.require('goog.testing.ExpectedFailures');
- goog.require('goog.testing.jsunit');
- goog.require('goog.userAgent');
- goog.require('goog.userAgent.product');
-</script>
-</head>
-<body>
-<script>
-
-
-goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_en;
-
-var expectedFailures = new goog.testing.ExpectedFailures();
-
-function tearDown() {
- expectedFailures.handleTearDown();
-}
-
-function testNegativeYear() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('MM/dd, yyyy');
- assertTrue(parser.parse('11/22, 1999', date) > 0);
- assertEquals(1999, date.getFullYear());
- assertEquals(11 - 1, date.getMonth());
- assertEquals(22, date.getDate());
-
- assertTrue(parser.parse('11/22, -1999', date) > 0);
- assertEquals(-1999, date.getFullYear());
- assertEquals(11 - 1, date.getMonth());
- assertEquals(22, date.getDate());
-}
-
-function testEra() {
- // Bug 2350397
- if (goog.userAgent.WEBKIT) {
- // Bug 2350397 Test seems to be very flaky on Chrome. Disabling it
- return;
- }
-
- var date = new Date();
- var parser = new goog.i18n.DateTimeParse('MM/dd, yyyyG');
- assertTrue(parser.parse('11/22, 1999BC', date) > 0);
- assertEquals(-1998, date.getFullYear());
- assertEquals(11 - 1, date.getMonth());
- assertEquals(22, date.getDate());
-
- assertTrue(parser.parse('11/22, 1BC', date) > 0);
- assertEquals(0, date.getFullYear());
- assertEquals(11 - 1, date.getMonth());
- assertEquals(22, date.getDate());
-
- assertTrue(parser.parse('11/22, 1999AD', date) > 0);
- assertEquals(1999, date.getFullYear());
- assertEquals(11 - 1, date.getMonth());
- assertEquals(22, date.getDate());
-}
-
-function testFractionalSeconds() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('hh:mm:ss.SSS');
- assertTrue(parser.parse('11:12:13.956', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(12, date.getMinutes());
- assertEquals(13, date.getSeconds());
- assertEquals(956, date.getTime() % 1000);
-
- assertTrue(parser.parse('11:12:13.95', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(12, date.getMinutes());
- assertEquals(13, date.getSeconds());
- assertEquals(950, date.getTime() % 1000);
-
- assertTrue(parser.parse('11:12:13.9', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(12, date.getMinutes());
- assertEquals(13, date.getSeconds());
- assertEquals(900, date.getTime() % 1000);
-}
-
-function testAmbiguousYear() {
- // assume this year is 2006, year 27 to 99 will be interpret as 1927 to 1999
- // year 00 to 25 will be 2000 to 2025. Year 26 can be either 1926 or 2026
- // depend on the time being parsed and the time when this program runs.
- // For example, if the program is run at 2006/03/03 12:12:12, the following
- // code should work.
- // assertTrue(parser.parse('01/01/26 00:00:00:001', date) > 0);
- // assertTrue(date.getFullYear() == 2026 - 1900);
- // assertTrue(parser.parse('12/30/26 23:59:59:999', date) > 0);
- // assertTrue(date.getFullYear() == 1926 - 1900);
-
- // Since this test can run in any time, some logic needed here.
-
- var futureDate = new Date();
- futureDate.setFullYear(futureDate.getFullYear() +
- 100 - goog.i18n.DateTimeParse.ambiguousYearCenturyStart);
- var ambiguousYear = futureDate.getFullYear() % 100;
-
- var parser = new goog.i18n.DateTimeParse('MM/dd/yy HH:mm:ss:SSS');
- var date = new Date();
-
- var str = '01/01/' + ambiguousYear + ' 00:00:00:001';
- assertTrue(parser.parse(str, date) > 0);
- assertEquals(futureDate.getFullYear(), date.getFullYear());
-
- str = '12/31/' + ambiguousYear + ' 23:59:59:999';
- assertTrue(parser.parse(str, date) > 0);
- assertEquals(futureDate.getFullYear(), date.getFullYear() + 100);
-
- // Test the ability to move the disambiguation century
- goog.i18n.DateTimeParse.ambiguousYearCenturyStart = 60;
-
- futureDate = new Date()
- futureDate.setFullYear(futureDate.getFullYear() +
- 100 - goog.i18n.DateTimeParse.ambiguousYearCenturyStart);
- ambiguousYear = futureDate.getFullYear() % 100;
-
- var str = '01/01/' + ambiguousYear + ' 00:00:00:001';
- assertTrue(parser.parse(str, date) > 0);
- assertEquals(futureDate.getFullYear(), date.getFullYear());
-
-
- str = '12/31/' + ambiguousYear + ' 23:59:59:999';
- assertTrue(parser.parse(str, date) > 0);
- assertEquals(futureDate.getFullYear(), date.getFullYear() + 100);
-
- // Reset parameter for other test cases
- goog.i18n.DateTimeParse.ambiguousYearCenturyStart = 80;
-}
-
-function testLeapYear() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('MMdd, yyyy');
- assertTrue(parser.parse('0229, 2001', date) > 0);
- assertEquals(3 - 1, date.getMonth());
- assertEquals(1, date.getDate());
-
- assertTrue(parser.parse('0229, 2000', date) > 0);
- assertEquals(2 - 1, date.getMonth());
- assertEquals(29, date.getDate());
-}
-
-function testAbutField() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('hhmm');
- assertTrue(parser.parse('1122', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('122', date) > 0);
- assertEquals(1, date.getHours());
- assertEquals(22, date.getMinutes());
-
- var parser2 = new goog.i18n.DateTimeParse('hhmmss');
- assertTrue(parser2.parse('112233', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
- assertEquals(33, date.getSeconds());
-
- assertTrue(parser2.parse('12233', date) > 0);
- assertEquals(1, date.getHours());
- assertEquals(22, date.getMinutes());
- assertEquals(33, date.getSeconds());
-
- var parser3 = new goog.i18n.DateTimeParse('yyyyMMdd');
- assertTrue(parser3.parse('19991202', date) > 0);
- assertEquals(1999, date.getFullYear());
- assertEquals(12 - 1, date.getMonth());
- assertEquals(02, date.getDate());
-
- assertTrue(parser3.parse('9991202', date) > 0);
- assertTrue(date.getFullYear() == 999);
- assertEquals(12 - 1, date.getMonth());
- assertEquals(02, date.getDate());
-
- assertTrue(parser3.parse('991202', date) > 0);
- assertEquals(99, date.getFullYear());
- assertEquals(12 - 1, date.getMonth());
- assertEquals(02, date.getDate());
-
- assertTrue(parser3.parse('91202', date) > 0);
- assertEquals(9, date.getFullYear());
- assertEquals(12 - 1, date.getMonth());
- assertEquals(02, date.getDate());
-}
-
-function testYearParsing() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('yyMMdd');
- assertTrue(parser.parse('991202', date) > 0);
- assertEquals(1999, date.getFullYear());
- assertEquals(12 - 1, date.getMonth());
- assertEquals(02, date.getDate());
-
- var parser2 = new goog.i18n.DateTimeParse('yyyyMMdd');
- assertTrue(parser2.parse('20051202', date) > 0);
- assertEquals(2005, date.getFullYear());
- assertEquals(12 - 1, date.getMonth());
- assertEquals(02, date.getDate());
-}
-
-function testGoogDateParsing() {
- var date = new goog.date.Date();
-
- var parser = new goog.i18n.DateTimeParse('yyMMdd');
- assertTrue(parser.parse('991202', date) > 0);
- assertEquals(1999, date.getFullYear());
- assertEquals(12 - 1, date.getMonth());
- assertEquals(02, date.getDate());
-}
-
-function testHourParsing_hh() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('hhmm');
- assertTrue(parser.parse('0022', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('1122', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('1222', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('2322', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('2422', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- var parser2 = new goog.i18n.DateTimeParse('hhmma');
- assertTrue(parser2.parse('0022am', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1122am', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1222am', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2322am', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2422am', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('0022pm', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1122pm', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1222pm', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2322pm', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2422pm', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-}
-
-function testHourParsing_KK() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('KKmm');
- assertTrue(parser.parse('0022', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('1122', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('1222', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('2322', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('2422', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
-
- var parser2 = new goog.i18n.DateTimeParse('KKmma');
- assertTrue(parser2.parse('0022am', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1122am', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1222am', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2322am', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2422am', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('0022pm', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1122pm', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1222pm', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2322pm', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2422pm', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-}
-
-function testHourParsing_kk() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('kkmm');
- assertTrue(parser.parse('0022', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('1122', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('1222', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('2322', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('2422', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- var parser2 = new goog.i18n.DateTimeParse('kkmma');
- assertTrue(parser2.parse('0022am', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1122am', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1222am', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2322am', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2422am', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('0022pm', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1122pm', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1222pm', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2322pm', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2422pm', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-}
-
-function testHourParsing_HH() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('HHmm');
- assertTrue(parser.parse('0022', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('1122', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('1222', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('2322', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser.parse('2422', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- var parser2 = new goog.i18n.DateTimeParse('HHmma');
- assertTrue(parser2.parse('0022am', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1122am', date) > 0);
- assertEquals(11, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1222am', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2322am', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2422am', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('0022pm', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1122pm', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('1222pm', date) > 0);
- assertEquals(12, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2322pm', date) > 0);
- assertEquals(23, date.getHours());
- assertEquals(22, date.getMinutes());
-
- assertTrue(parser2.parse('2422pm', date) > 0);
- assertEquals(00, date.getHours());
- assertEquals(22, date.getMinutes());
-}
-
-function testEnglishDate() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('yyyy MMM dd hh:mm');
-
- // Fails in Safari4/Chrome Winxp because of infrastructure issues, temporarily
- // disabled. See b/4274778.
- expectedFailures.expectFailureFor(goog.userAgent.WEBKIT);
- try {
- assertTrue(parser.parse('2006 Jul 10 15:44', date) > 0);
- assertEquals(2006, date.getFullYear());
- assertEquals(7 - 1, date.getMonth());
- assertEquals(10, date.getDate());
- assertEquals(15, date.getHours());
- assertEquals(44, date.getMinutes());
- } catch(e) {
- expectedFailures.handleException(e);
- }
-}
-
-function testChineseDate() {
- goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_zh;
-
- // Javascript month start from 0, July is 7 - 1
- var date = new Date(2006, 7 - 1, 24, 12, 12, 12, 0);
- var formatter = new goog.i18n.DateTimeFormat(
- goog.i18n.DateTimeFormat.Format.FULL_DATE);
- date_str = formatter.format(date);
- var parser = new goog.i18n.DateTimeParse(
- goog.i18n.DateTimeFormat.Format.FULL_DATE);
-
- parser.parse(date_str, date);
- assertEquals(2006, date.getFullYear());
- assertEquals(7 - 1, date.getMonth());
- assertEquals(24, date.getDate());
-
- parser = new goog.i18n.DateTimeParse(
- goog.i18n.DateTimeFormat.Format.LONG_DATE);
- parser.parse('2006\u5E747\u670824\u65E5', date);
- assertEquals(2006, date.getFullYear());
- assertEquals(7 - 1, date.getMonth());
- assertEquals(24, date.getDate());
-
- parser = new goog.i18n.DateTimeParse(
- goog.i18n.DateTimeFormat.Format.FULL_TIME);
- parser.parse('GMT-07:00\u4E0B\u534803\u65F626\u520628\u79D2', date);
-
- // Fails in Safari4/Chrome Winxp because of infrastructure issues, temporarily
- // disabled. See b/4274778.
- expectedFailures.expectFailureFor(goog.userAgent.WEBKIT);
- try {
- assertEquals(22, (24 + date.getHours() + date.getTimezoneOffset()/60) % 24);
- assertEquals(26, date.getMinutes());
- assertEquals(28, date.getSeconds());
- } catch(e) {
- expectedFailures.handleException(e);
- }
-
- goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_en;
-}
-
-function testTimeZone() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('MM/dd/yyyy, hh:mm:ss zzz');
- assertTrue(parser.parse('07/21/2003, 11:22:33 GMT-0700', date) > 0);
- var hourGmtMinus07 = date.getHours();
-
- assertTrue(parser.parse('07/21/2003, 11:22:33 GMT-0600', date) > 0);
- var hourGmtMinus06 = date.getHours();
- assertEquals(1, (hourGmtMinus07 + 24 - hourGmtMinus06) % 24);
-
- assertTrue(parser.parse('07/21/2003, 11:22:33 GMT-0800', date) > 0);
- var hourGmtMinus08 = date.getHours();
- assertEquals(1, (hourGmtMinus08 + 24 - hourGmtMinus07) % 24);
-
- assertTrue(parser.parse('07/21/2003, 23:22:33 GMT-0800', date) > 0);
- assertEquals((date.getHours() + 24 - hourGmtMinus07) % 24, 13);
-
- assertTrue(parser.parse('07/21/2003, 11:22:33 GMT+0800', date) > 0);
- var hourGmt08 = date.getHours();
- assertEquals(16, (hourGmtMinus08 + 24 - hourGmt08) % 24);
-
- assertTrue(parser.parse('07/21/2003, 11:22:33 GMT0800', date) > 0);
- assertEquals(hourGmt08, date.getHours());
-}
-
-function testWeekDay() {
- var date = new Date();
- var parser = new goog.i18n.DateTimeParse('EEEE, MM/dd/yyyy');
-
- assertTrue(parser.parse('Wednesday, 08/16/2006', date) > 0);
- assertEquals(2006, date.getFullYear());
- assertEquals(8 - 1, date.getMonth());
- assertEquals(16, date.getDate());
- assertTrue(parser.parse('Tuesday, 08/16/2006', date) == 0);
- assertTrue(parser.parse('Thursday, 08/16/2006', date) == 0);
- assertTrue(parser.parse('Wed, 08/16/2006', date) > 0);
- assertTrue(parser.parse('Wasdfed, 08/16/2006', date) == 0);
-
- date.setDate(25);
- parser = new goog.i18n.DateTimeParse('EEEE, MM/yyyy');
- assertTrue(parser.parse('Wed, 09/2006', date) > 0);
- assertEquals(27, date.getDate());
-
- date.setDate(30);
- assertTrue(parser.parse('Wed, 09/2006', date) > 0);
- assertEquals(27, date.getDate());
- date.setDate(30);
- assertTrue(parser.parse('Mon, 09/2006', date) > 0);
- assertEquals(25, date.getDate());
-}
-
-function testStrictParse() {
- var date = new Date();
-
- var parser = new goog.i18n.DateTimeParse('yyyy/MM/dd');
- assertTrue(parser.strictParse('2000/13/10', date) == 0);
- assertTrue(parser.strictParse('2000/13/40', date) == 0);
- assertTrue(parser.strictParse('2000/11/10', date) > 0);
- assertEquals(2000, date.getFullYear());
- assertEquals(11 - 1, date.getMonth());
- assertEquals(10, date.getDate());
-
- parser = new goog.i18n.DateTimeParse('yy/MM/dd');
- assertTrue(parser.strictParse('00/11/10', date) > 0);
- assertTrue(parser.strictParse('99/11/10', date) > 0);
- assertTrue(parser.strictParse('00/13/10', date) == 0);
- assertTrue(parser.strictParse('00/11/32', date) == 0);
- assertTrue(parser.strictParse('1900/11/2', date) > 0);
-
-
- parser = new goog.i18n.DateTimeParse('hh:mm');
- assertTrue(parser.strictParse('15:44', date) > 0);
- assertTrue(parser.strictParse('25:44', date) == 0);
- assertTrue(parser.strictParse('15:64', date) == 0);
-
- // leap year
- parser = new goog.i18n.DateTimeParse('yy/MM/dd');
- assertTrue(parser.strictParse('00/02/29', date) > 0);
- assertTrue(parser.strictParse('01/02/29', date) == 0);
-}
-
-function testEnglishQuarter() {
- var date = new Date();
- var parser = new goog.i18n.DateTimeParse('QQQQ yyyy');
-
- // Fails in Safari4/Chrome Winxp because of infrastructure issues, temporarily
- // disabled. See b/4274778.
- expectedFailures.expectFailureFor(goog.userAgent.WEBKIT);
- try {
- assertTrue(parser.parse('1st quarter 2009', date) > 0);
- assertEquals(2009, date.getFullYear());
- assertEquals(0, date.getMonth());
- assertEquals(1, date.getDate());
- } catch(e) {
- expectedFailures.handleException(e);
- }
-}
-
-function testEnglishShortQuarter() {
- var date = new Date();
- var parser = new goog.i18n.DateTimeParse('yyyyQQ');
-
- // Fails in Safari4/Chrome Winxp because of infrastructure issues, temporarily
- // disabled. See b/4274778.
- expectedFailures.expectFailureFor(goog.userAgent.WEBKIT);
- try {
- assertTrue(parser.parse('2006Q2', date) > 0);
- assertEquals(2006, date.getFullYear());
- assertEquals(4 - 1, date.getMonth());
- assertEquals(1, date.getDate());
- } catch(e) {
- expectedFailures.handleException(e);
- }
-}
-
-function testFrenchShortQuarter() {
- goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_fr;
-
- var date = new Date();
- try {
- var parser = new goog.i18n.DateTimeParse('yyyyQQ');
- assertTrue(parser.parse('2009T3', date) > 0);
- assertEquals(2009, date.getFullYear());
- assertEquals(7 - 1, date.getMonth());
- assertEquals(1, date.getDate());
- } catch (e) {
- goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_en;
- throw e;
- }
- goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_en;
-}
-
-
-</script>
-</body>
-</html>