calendarimporter/js/timezone-js/spec/tz.async.spec.js

38 lines
1.0 KiB
JavaScript

var TestUtils = require('./test-utils')
, parseISO = TestUtils.parseISO
, date = require('../src/date');
describe('TimezoneJS', function () {
it('should async preload everything correctly', function () {
var i = 0
, timezoneJS
, sampleTz;
runs(function () {
timezoneJS = TestUtils.getTimezoneJS({
loadingScheme: date.timezone.loadingSchemes.PRELOAD_ALL,
async: true,
callback: function () {
//Make sure more than 1 zone is loaded
for (var k in timezoneJS.timezone.loadedZones) {
i++;
}
sampleTz = timezoneJS.timezone.getTzInfo(new Date(), 'Asia/Bangkok');
}
});
});
waitsFor(function () {
return i > 0;
}, 'zones should be loaded', 100);
runs(function () {
expect(timezoneJS.timezone.loadingScheme).toEqual(date.timezone.loadingSchemes.PRELOAD_ALL);
expect(i).toEqual(timezoneJS.timezone.zoneFiles.length);
expect(sampleTz).toBeDefined();
expect(sampleTz.tzAbbr).toEqual('ICT');
});
});
});