Adding mapbox-gl branch
This commit is contained in:
@@ -0,0 +1,131 @@
|
||||
// Copyright 2013 The Closure Library Authors. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS-IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
goog.LOCALE = 'en_US';
|
||||
goog.provide('goog.date.durationTest');
|
||||
goog.setTestOnly('goog.date.durationTest');
|
||||
|
||||
goog.require('goog.date.duration');
|
||||
goog.require('goog.i18n.DateTimeFormat');
|
||||
goog.require('goog.i18n.DateTimeSymbols');
|
||||
goog.require('goog.i18n.DateTimeSymbols_bn'); // Bengali
|
||||
goog.require('goog.i18n.DateTimeSymbols_en');
|
||||
goog.require('goog.i18n.DateTimeSymbols_fa'); // Persian
|
||||
goog.require('goog.testing.jsunit');
|
||||
|
||||
var MINUTE_MS = 60000;
|
||||
var HOUR_MS = 60 * MINUTE_MS;
|
||||
var DAY_MS = 24 * HOUR_MS;
|
||||
|
||||
var duration = goog.date.duration.format;
|
||||
|
||||
function testFormatDurationZeroMinutes() {
|
||||
assertEquals('0 minutes', duration(0));
|
||||
assertEquals('0 minutes', duration(MINUTE_MS - 1));
|
||||
}
|
||||
|
||||
function testFormatDurationMinutes() {
|
||||
assertEquals('1 minute', duration(MINUTE_MS));
|
||||
assertEquals('1 minute', duration(MINUTE_MS + 1));
|
||||
assertEquals('5 minutes', duration(5 * MINUTE_MS));
|
||||
assertEquals('45 minutes', duration(45 * MINUTE_MS));
|
||||
}
|
||||
|
||||
function testFormatDurationHours() {
|
||||
assertEquals('1 hour', duration(HOUR_MS));
|
||||
assertEquals('1 hour', duration(HOUR_MS + 1));
|
||||
assertEquals('1 hour 1 minute', duration(HOUR_MS + MINUTE_MS));
|
||||
assertEquals('1 hour 45 minutes', duration(HOUR_MS + 45 * MINUTE_MS));
|
||||
|
||||
assertEquals('5 hours', duration(5 * HOUR_MS));
|
||||
assertEquals('5 hours', duration(5 * HOUR_MS + 1));
|
||||
assertEquals('5 hours 1 minute', duration(5 * HOUR_MS + MINUTE_MS));
|
||||
assertEquals('5 hours 45 minutes', duration(5 * HOUR_MS + 45 * MINUTE_MS));
|
||||
|
||||
assertEquals('11 hours', duration(11 * HOUR_MS));
|
||||
assertEquals('11 hours', duration(11 * HOUR_MS + 1));
|
||||
assertEquals('11 hours 1 minute', duration(11 * HOUR_MS + MINUTE_MS));
|
||||
assertEquals('11 hours 45 minutes',
|
||||
duration(11 * HOUR_MS + 45 * MINUTE_MS));
|
||||
}
|
||||
|
||||
function testFormatDurationDays() {
|
||||
assertEquals('1 day', duration(DAY_MS));
|
||||
assertEquals('1 day', duration(DAY_MS + 1));
|
||||
assertEquals('1 day 1 minute', duration(DAY_MS + MINUTE_MS));
|
||||
assertEquals('1 day 45 minutes', duration(DAY_MS + 45 * MINUTE_MS));
|
||||
assertEquals('1 day 1 hour', duration(DAY_MS + HOUR_MS));
|
||||
assertEquals('1 day 11 hours', duration(DAY_MS + 11 * HOUR_MS));
|
||||
assertEquals('1 day 1 hour 1 minute',
|
||||
duration(DAY_MS + HOUR_MS + MINUTE_MS));
|
||||
assertEquals('1 day 1 hour 45 minutes',
|
||||
duration(DAY_MS + HOUR_MS + 45 * MINUTE_MS));
|
||||
assertEquals('1 day 11 hours 1 minute',
|
||||
duration(DAY_MS + 11 * HOUR_MS + MINUTE_MS));
|
||||
assertEquals('1 day 11 hours 45 minutes',
|
||||
duration(DAY_MS + 11 * HOUR_MS + 45 * MINUTE_MS));
|
||||
|
||||
assertEquals('11 days', duration(11 * DAY_MS));
|
||||
assertEquals('11 days', duration(11 * DAY_MS + 1));
|
||||
assertEquals('11 days 1 minute', duration(11 * DAY_MS + MINUTE_MS));
|
||||
assertEquals('11 days 45 minutes', duration(11 * DAY_MS + 45 * MINUTE_MS));
|
||||
assertEquals('11 days 1 hour', duration(11 * DAY_MS + HOUR_MS));
|
||||
assertEquals('11 days 11 hours', duration(11 * DAY_MS + 11 * HOUR_MS));
|
||||
assertEquals('11 days 1 hour 1 minute',
|
||||
duration(11 * DAY_MS + HOUR_MS + MINUTE_MS));
|
||||
assertEquals('11 days 1 hour 45 minutes',
|
||||
duration(11 * DAY_MS + HOUR_MS + 45 * MINUTE_MS));
|
||||
assertEquals('11 days 11 hours 1 minute',
|
||||
duration(11 * DAY_MS + 11 * HOUR_MS + MINUTE_MS));
|
||||
assertEquals('11 days 11 hours 45 minutes',
|
||||
duration(11 * DAY_MS + 11 * HOUR_MS + 45 * MINUTE_MS));
|
||||
}
|
||||
|
||||
function testFormatDurationPersianDigits() {
|
||||
goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_fa;
|
||||
|
||||
// ۱ minute
|
||||
assertEquals(localizeNumber(1) + ' minute', duration(MINUTE_MS));
|
||||
// ۲ minutes
|
||||
assertEquals(localizeNumber(2) + ' minutes', duration(2 * MINUTE_MS));
|
||||
// ۱۰ hours
|
||||
assertEquals(localizeNumber(10) + ' hours', duration(10 * HOUR_MS));
|
||||
// ۲۳ days
|
||||
assertEquals(localizeNumber(23) + ' days', duration(23 * DAY_MS));
|
||||
|
||||
// Restore to English, to make sure we don't mess up other tests
|
||||
goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_en;
|
||||
}
|
||||
|
||||
function testFormatDurationBengaliDigits() {
|
||||
goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_bn;
|
||||
|
||||
// ১ minute
|
||||
assertEquals(localizeNumber(1) + ' minute', duration(MINUTE_MS));
|
||||
// ২ minutes
|
||||
assertEquals(localizeNumber(2) + ' minutes', duration(2 * MINUTE_MS));
|
||||
// ১০ hours
|
||||
assertEquals(localizeNumber(10) + ' hours', duration(10 * HOUR_MS));
|
||||
// ২৩ days
|
||||
assertEquals(localizeNumber(23) + ' days', duration(23 * DAY_MS));
|
||||
|
||||
// Restore to English, to make sure we don't mess up other tests
|
||||
goog.i18n.DateTimeSymbols = goog.i18n.DateTimeSymbols_en;
|
||||
}
|
||||
|
||||
function localizeNumber(value) {
|
||||
// Quick conversion to national digits, to increase readability of the
|
||||
// tests above.
|
||||
return goog.i18n.DateTimeFormat.localizeNumbers(value);
|
||||
}
|
||||
Reference in New Issue
Block a user