-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
test('format week', function (assert) {
- var expected = 'রবিবার রবি রব_সà§\8bমবার সà§\8bম সম_মà¦\99à§\8dà¦\97লবার মà¦\99à§\8dà¦\97ল মà¦\99à§\8dà¦\97_বà§\81ধবার বà§\81ধ বà§\81_বà§\83হসà§\8dপতà§\8dতিবার বà§\83হসà§\8dপতà§\8dতি বà§\8dরিহ_শà§\81à¦\95à§\8dরà§\81বার শà§\81à¦\95à§\8dরà§\81 শু_শনিবার শনি শনি'.split('_'), i;
+ var expected = 'রবিবার রবি রব_সà§\8bমবার সà§\8bম সম_মà¦\99à§\8dà¦\97লবার মà¦\99à§\8dà¦\97ল মà¦\99à§\8dà¦\97_বà§\81ধবার বà§\81ধ বà§\81_বà§\83হসà§\8dপতà§\8dতিবার বà§\83হসà§\8dপতà§\8dতি বà§\8dরিহ_শà§\81à¦\95à§\8dরবার শà§\81à¦\95à§\8dর শু_শনিবার শনি শনি'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'à¦\95à¦\8fক সেকেন্ড', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'à¦\95à§\9fà§\87ক সেকেন্ড', '44 seconds = a few seconds');
assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'এক মিনিট', '45 seconds = a minute');
assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'এক মিনিট', '89 seconds = a minute');
assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '২ মিনিট', '90 seconds = 2 minutes');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'à¦\95à¦\8fক সেকেন্ড পরে', 'prefix');
- assert.equal(moment(0).from(30000), 'à¦\95à¦\8fক সেকেন্ড আগে', 'suffix');
+ assert.equal(moment(30000).from(0), 'à¦\95à§\9fà§\87ক সেকেন্ড পরে', 'prefix');
+ assert.equal(moment(0).from(30000), 'à¦\95à§\9fà§\87ক সেকেন্ড আগে', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'à¦\95à¦\8fক সেকেন্ড আগে', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'à¦\95à§\9fà§\87ক সেকেন্ড আগে', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'à¦\95à¦\8fà¦\95 সà§\87à¦\95à§\87নà§\8dড পরà§\87', 'à¦\95à¦\8fক সেকেন্ড পরে');
+ assert.equal(moment().add({s: 30}).fromNow(), 'à¦\95à§\9fà§\87à¦\95 সà§\87à¦\95à§\87নà§\8dড পরà§\87', 'à¦\95à§\9fà§\87ক সেকেন্ড পরে');
assert.equal(moment().add({d: 5}).fromNow(), '৫ দিন পরে', '৫ দিন পরে');
});
assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'রাত', 'before dawn');
assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'সকাল', 'morning');
assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'দুপুর', 'during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'বিà¦\95à§\87ল', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'বিà¦\95à§\87ল', 'late evening');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'বিà¦\95াল', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'বিà¦\95াল', 'late evening');
assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'রাত', 'night');
assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'রাত', 'before dawn');
assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'সকাল', 'morning');
assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'দুপুর', ' during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'বিà¦\95à§\87ল', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'বিà¦\95à§\87ল', 'late evening');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'বিà¦\95াল', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'বিà¦\95াল', 'late evening');
assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'রাত', 'night');
});
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
test('parse', function (assert) {
var tests = 'leden led_únor úno_březen bře_duben dub_květen kvě_červen čvn_červenec čvc_srpen srp_září zář_říjen říj_listopad lis_prosinec pro'.split('_'), i;
function equalTest(input, mmm, monthIndex) {
- assert.equal(moment(input, mmm).month(), monthIndex, input + ' should be month ' + (monthIndex + 1));
+ assert.equal(moment(input, mmm).month(), monthIndex, input + ' ' + mmm + ' should be month ' + (monthIndex + 1));
+ }
+ function equalTestStrict(input, mmm, monthIndex) {
+ assert.equal(moment(input, mmm, true).month(), monthIndex, input + ' ' + mmm + ' should be strict month ' + (monthIndex + 1));
}
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+
+ equalTestStrict(tests[i][1], 'MMM', i);
+ equalTestStrict(tests[i][0], 'MMMM', i);
+ equalTestStrict(tests[i][1].toLocaleLowerCase(), 'MMM', i);
+ equalTestStrict(tests[i][1].toLocaleUpperCase(), 'MMM', i);
+ equalTestStrict(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTestStrict(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
}
});
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Heute um 02:00 Uhr', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Heute um 02:25 Uhr', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Heute um 03:00 Uhr', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Morgen um 02:00 Uhr', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Heute um 01:00 Uhr', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Gestern um 02:00 Uhr', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'heute um 02:00 Uhr', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'heute um 02:25 Uhr', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'heute um 03:00 Uhr', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'morgen um 02:00 Uhr', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'heute um 01:00 Uhr', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'gestern um 02:00 Uhr', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Heute um 02:00 Uhr', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Heute um 02:25 Uhr', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Heute um 03:00 Uhr', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Morgen um 02:00 Uhr', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Heute um 01:00 Uhr', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Gestern um 02:00 Uhr', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'heute um 02:00 Uhr', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'heute um 02:25 Uhr', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'heute um 03:00 Uhr', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'morgen um 02:00 Uhr', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'heute um 01:00 Uhr', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'gestern um 02:00 Uhr', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('dv');
+
+ test('parse', function (assert) {
+ var i,
+ tests = [
+ 'ޖެނުއަރީ',
+ 'ފެބްރުއަރީ',
+ 'މާރިޗު',
+ 'އޭޕްރީލު',
+ 'މޭ',
+ 'ޖޫން',
+ 'ޖުލައި',
+ 'އޯގަސްޓު',
+ 'ސެޕްޓެމްބަރު',
+ 'އޮކްޓޯބަރު',
+ 'ނޮވެމްބަރު',
+ 'ޑިސެމްބަރު'
+ ];
+
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ }
+
+ for (i = 0; i < 12; i++) {
+ equalTest(tests[i], 'MMM', i);
+ equalTest(tests[i], 'MMMM', i);
+ equalTest(tests[i].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'އާދިއްތަ، ފެބްރުއަރީ 14 2010، 3:25:50 މފ'],
+ ['ddd, hA', 'އާދިއްތަ، 3މފ'],
+ ['M Mo MM MMMM MMM', '2 2 02 ފެބްރުއަރީ ފެބްރުއަރީ'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 އާދިއްތަ އާދިއްތަ އާދި'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '8 8 08'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'މފ މފ'],
+ ['LTS', '15:25:50'],
+ ['L', '14/2/2010'],
+ ['LL', '14 ފެބްރުއަރީ 2010'],
+ ['LLL', '14 ފެބްރުއަރީ 2010 15:25'],
+ ['LLLL', 'އާދިއްތަ 14 ފެބްރުއަރީ 2010 15:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 ފެބްރުއަރީ 2010'],
+ ['lll', '14 ފެބްރުއަރީ 2010 15:25'],
+ ['llll', 'އާދިއްތަ 14 ފެބްރުއަރީ 2010 15:25']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format month', function (assert) {
+ var i,
+ expected = [
+ 'ޖެނުއަރީ',
+ 'ފެބްރުއަރީ',
+ 'މާރިޗު',
+ 'އޭޕްރީލު',
+ 'މޭ',
+ 'ޖޫން',
+ 'ޖުލައި',
+ 'އޯގަސްޓު',
+ 'ސެޕްޓެމްބަރު',
+ 'އޮކްޓޯބަރު',
+ 'ނޮވެމްބަރު',
+ 'ޑިސެމްބަރު'
+ ];
+
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM'), expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var i,
+ expected = [
+ 'އާދިއްތަ',
+ 'ހޯމަ',
+ 'އަންގާރަ',
+ 'ބުދަ',
+ 'ބުރާސްފަތި',
+ 'ހުކުރު',
+ 'ހޮނިހިރު'
+ ];
+
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd'), expected[i]);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
['10 Μ', 22, true],
['10 am', 10, false],
['10 pm', 10, false]
- ];
+ ],
+ parsed;
// test that a formatted moment including meridiem string can be parsed back to the same moment
assert.ok(b.isSame(moment(b.format('h:mm:ss a'), 'h:mm:ss a', 'el', true), 'seconds'), b.format('h:mm:ss a') + ' should be equal to ' + moment(b.format('h:mm:ss a'), 'h:mm:ss a', 'el', true).format('h:mm:ss a'));
assert.ok(moment(b.format('h:mm:ss a'), 'h:mm:ss a', 'el', true).isValid(), b.format('h:mm:ss a') + ' should be parsed as valid');
for (i = 0; i < meridiemTests.length; i++) {
- assert.equal(moment(meridiemTests[i][0], 'h a', 'el', true).hours(), meridiemTests[i][1], moment(meridiemTests[i][0], 'h a', 'el', true).hours() + ' should be ' + meridiemTests[i][1]);
- assert.ok(moment(meridiemTests[i][0], 'h a', 'el', true).isValid() === meridiemTests[i][2], meridiemTests[i][0] + ' ----> ' + meridiemTests[i][2]);
+ parsed = moment(meridiemTests[i][0], 'h a', 'el', true);
+ assert.equal(parsed.isValid(), meridiemTests[i][2], 'validity for ' + meridiemTests[i][0]);
+ if (parsed.isValid()) {
+ assert.equal(parsed.hours(), meridiemTests[i][1], 'hours for ' + meridiemTests[i][0]);
+ }
}
});
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
localeModule('en-au');
test('parse', function (assert) {
- var tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_'), i;
+ var tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
});
test('format month', function (assert) {
- var expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_'), i;
+ var expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
test('parse', function (assert) {
var i,
- tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_');
+ tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_');
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
test('format month', function (assert) {
var i,
- expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_');
+ expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_');
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
localeModule('en-gb');
test('parse', function (assert) {
- var tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_'), i;
+ var tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
});
test('format month', function (assert) {
- var expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_'), i;
+ var expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('en');
+ localeModule('en-ie');
test('parse', function (assert) {
- var i,
- tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_');
-
+ var tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
-
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
['D Do DD', '14 14th 14'],
['d do dddd ddd dd', '0 0th Sunday Sun Su'],
['DDD DDDo DDDD', '45 45th 045'],
- ['w wo ww', '8 8th 08'],
+ ['w wo ww', '6 6th 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
['[the] DDDo [day of the year]', 'the 45th day of the year'],
- ['LTS', '3:25:50 PM'],
- ['L', '02/14/2010'],
- ['LL', 'February 14, 2010'],
- ['LLL', 'February 14, 2010 3:25 PM'],
- ['LLLL', 'Sunday, February 14, 2010 3:25 PM'],
- ['l', '2/14/2010'],
- ['ll', 'Feb 14, 2010'],
- ['lll', 'Feb 14, 2010 3:25 PM'],
- ['llll', 'Sun, Feb 14, 2010 3:25 PM']
+ ['LTS', '15:25:50'],
+ ['L', '14-02-2010'],
+ ['LL', '14 February 2010'],
+ ['LLL', '14 February 2010 15:25'],
+ ['LLLL', 'Sunday 14 February 2010 15:25'],
+ ['l', '14-2-2010'],
+ ['ll', '14 Feb 2010'],
+ ['lll', '14 Feb 2010 15:25'],
+ ['llll', 'Sun 14 Feb 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
-
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
test('format month', function (assert) {
- var i,
- expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_');
-
+ var expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sep_October Oct_November Nov_December Dec'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var i,
- expected = 'Sunday Sun Su_Monday Mon Mo_Tuesday Tue Tu_Wednesday Wed We_Thursday Thu Th_Friday Fri Fr_Saturday Sat Sa'.split('_');
-
+ var expected = 'Sunday Sun Su_Monday Mon Mo_Tuesday Tue Tu_Wednesday Wed We_Thursday Thu Th_Friday Fri Fr_Saturday Sat Sa'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
-
assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'a few seconds', '44 seconds = a few seconds');
assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'a minute', '45 seconds = a minute');
assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'a minute', '89 seconds = a minute');
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Today at 2:00 AM', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Today at 2:25 AM', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Today at 3:00 AM', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Tomorrow at 2:00 AM', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Today at 1:00 AM', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Yesterday at 2:00 AM', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Today at 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Today at 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Today at 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Tomorrow at 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Today at 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Yesterday at 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
-
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
assert.equal(m.calendar(), m.format('dddd [at] LT'), 'Today + ' + i + ' days current time');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
- test('weeks year starting sunday format', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1st', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1st', 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2nd', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2nd', 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3rd', 'Jan 15 2012 should be week 3');
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52nd', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1st', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1st', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2nd', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2nd', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('eo');
+ localeModule('en-nz');
test('parse', function (assert) {
- var tests = 'januaro jan_februaro feb_marto mar_aprilo apr_majo maj_junio jun_julio jul_aŭgusto aŭg_septembro sep_oktobro okt_novembro nov_decembro dec'.split('_'), i;
+ var tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Dimanĉo, februaro 14a 2010, 3:25:50 p.t.m.'],
- ['ddd, hA', 'Dim, 3P.T.M.'],
- ['M Mo MM MMMM MMM', '2 2a 02 februaro feb'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Sunday, February 14th 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Sun, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2nd 02 February Feb'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14a 14'],
- ['d do dddd ddd dd', '0 0a Dimanĉo Dim Di'],
- ['DDD DDDo DDDD', '45 45a 045'],
- ['w wo ww', '7 7a 07'],
+ ['D Do DD', '14 14th 14'],
+ ['d do dddd ddd dd', '0 0th Sunday Sun Su'],
+ ['DDD DDDo DDDD', '45 45th 045'],
+ ['w wo ww', '6 6th 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'p.t.m. P.T.M.'],
- ['[la] DDDo [tago] [de] [la] [jaro]', 'la 45a tago de la jaro'],
- ['LTS', '15:25:50'],
- ['L', '2010-02-14'],
- ['LL', '14-an de februaro, 2010'],
- ['LLL', '14-an de februaro, 2010 15:25'],
- ['LLLL', 'Dimanĉo, la 14-an de februaro, 2010 15:25'],
- ['l', '2010-2-14'],
- ['ll', '14-an de feb, 2010'],
- ['lll', '14-an de feb, 2010 15:25'],
- ['llll', 'Dim, la 14-an de feb, 2010 15:25']
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45th day of the year'],
+ ['LTS', '3:25:50 PM'],
+ ['L', '14/02/2010'],
+ ['LL', '14 February 2010'],
+ ['LLL', '14 February 2010 3:25 PM'],
+ ['LLLL', 'Sunday, 14 February 2010 3:25 PM'],
+ ['l', '14/2/2010'],
+ ['ll', '14 Feb 2010'],
+ ['lll', '14 Feb 2010 3:25 PM'],
+ ['llll', 'Sun, 14 Feb 2010 3:25 PM']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1a', '1a');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2a', '2a');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3a', '3a');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4a', '4a');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5a', '5a');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6a', '6a');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7a', '7a');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8a', '8a');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9a', '9a');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10a', '10a');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1st', '1st');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2nd', '2nd');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3rd', '3rd');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4th', '4th');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5th', '5th');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6th', '6th');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7th', '7th');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8th', '8th');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9th', '9th');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10th', '10th');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11a', '11a');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12a', '12a');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13a', '13a');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14a', '14a');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15a', '15a');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16a', '16a');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17a', '17a');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18a', '18a');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19a', '19a');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20a', '20a');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11th', '11th');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12th', '12th');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13th', '13th');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14th', '14th');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15th', '15th');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16th', '16th');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17th', '17th');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18th', '18th');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19th', '19th');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20th', '20th');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21a', '21a');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22a', '22a');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23a', '23a');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24a', '24a');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25a', '25a');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26a', '26a');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27a', '27a');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28a', '28a');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29a', '29a');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30a', '30a');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21st', '21st');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22nd', '22nd');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23rd', '23rd');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24th', '24th');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25th', '25th');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26th', '26th');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27th', '27th');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28th', '28th');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29th', '29th');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30th', '30th');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31a', '31a');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31st', '31st');
});
test('format month', function (assert) {
- var expected = 'januaro jan_februaro feb_marto mar_aprilo apr_majo maj_junio jun_julio jul_aŭgusto aŭg_septembro sep_oktobro okt_novembro nov_decembro dec'.split('_'), i;
+ var expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'Dimanĉo Dim Di_Lundo Lun Lu_Mardo Mard Ma_Merkredo Merk Me_Ĵaŭdo Ĵaŭ Ĵa_Vendredo Ven Ve_Sabato Sab Sa'.split('_'), i;
+ var expected = 'Sunday Sun Su_Monday Mon Mo_Tuesday Tue Tu_Wednesday Wed We_Thursday Thu Th_Friday Fri Fr_Saturday Sat Sa'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'sekundoj', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minuto', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minuto', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutoj', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutoj', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'horo', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'horo', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horoj', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horoj', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horoj', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'tago', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'tago', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 tagoj', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'tago', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 tagoj', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 tagoj', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'monato', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'monato', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'monato', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 monatoj', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 monatoj', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 monatoj', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'monato', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 monatoj', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'jaro', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 jaroj', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'jaro', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 jaroj', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'a few seconds', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'a minute', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'a minute', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutes', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutes', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'an hour', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'an hour', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 hours', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 hours', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 hours', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'a day', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'a day', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 days', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'a day', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 days', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 days', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'a month', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'a month', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'a month', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 months', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 months', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 months', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'a month', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 months', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'a year', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 years', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'a year', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 years', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'je sekundoj', 'je prefix');
- assert.equal(moment(0).from(30000), 'antaŭ sekundoj', 'antaŭ prefix');
+ assert.equal(moment(30000).from(0), 'in a few seconds', 'prefix');
+ assert.equal(moment(0).from(30000), 'a few seconds ago', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'antaŭ sekundoj', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'a few seconds ago', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'je sekundoj', 'je sekundoj');
- assert.equal(moment().add({d: 5}).fromNow(), 'je 5 tagoj', 'je 5 tagoj');
+ assert.equal(moment().add({s: 30}).fromNow(), 'in a few seconds', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'in 5 days', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Hodiaŭ je 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Hodiaŭ je 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Hodiaŭ je 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Morgaŭ je 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hodiaŭ je 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Hieraŭ je 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Today at 2:00 AM', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Today at 2:25 AM', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Today at 3:00 AM', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Tomorrow at 2:00 AM', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Today at 1:00 AM', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Yesterday at 2:00 AM', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
-
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [je] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [at] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [je] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [at] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [je] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [at] LT'), 'Today + ' + i + ' days end of day');
}
});
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[pasinta] dddd [je] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[Last] dddd [at] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[pasinta] dddd [je] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[Last] dddd [at] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[pasinta] dddd [je] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[Last] dddd [at] LT'), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1a', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1a', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2a', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2a', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3a', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52nd', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1st', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1st', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2nd', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2nd', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
- var i, ordinalStr, testMoment;
+ var i, ordinalStr, testStr;
for (i = 1; i <= 31; ++i) {
ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
- testMoment = moment(ordinalStr, 'YYYY MM Do');
- assert.equal(testMoment.year(), 2014,
- 'lenient ordinal parsing ' + i + ' year check');
- assert.equal(testMoment.month(), 0,
- 'lenient ordinal parsing ' + i + ' month check');
- assert.equal(testMoment.date(), i,
- 'lenient ordinal parsing ' + i + ' date check');
+ testStr = moment(ordinalStr, 'YYYY MM Do').format('YYYY MM D');
+ assert.equal(testStr, '2014 01 ' + i, 'lenient ordinal parsing ' + i);
}
});
test('lenient ordinal parsing of number', function (assert) {
- var i, testMoment;
+ var i, testStr;
for (i = 1; i <= 31; ++i) {
- testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
- assert.equal(testMoment.year(), 2014,
- 'lenient ordinal parsing of number ' + i + ' year check');
- assert.equal(testMoment.month(), 0,
- 'lenient ordinal parsing of number ' + i + ' month check');
- assert.equal(testMoment.date(), i,
- 'lenient ordinal parsing of number ' + i + ' date check');
+ testStr = moment('2014 01 ' + i, 'YYYY MM Do').format('YYYY MM D');
+ assert.equal(testStr, '2014 01 ' + i,
+ 'lenient ordinal parsing of number ' + i);
}
});
test('strict ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
- ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
- testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ ordinalStr = moment([2014, 0, i]).format('YYYY MMM Do');
+ testMoment = moment(ordinalStr, 'YYYY MMM Do', true);
assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
}
});
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('es');
+ localeModule('en');
test('parse', function (assert) {
- var tests = 'enero ene._febrero feb._marzo mar._abril abr._mayo may._junio jun._julio jul._agosto ago._septiembre sep._octubre oct._noviembre nov._diciembre dic.'.split('_'), i;
+ var i,
+ tests = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_');
+
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
+
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Domingo, Febrero 14º 2010, 3:25:50 pm'],
- ['ddd, hA', 'Dom., 3PM'],
- ['M Mo MM MMMM MMM', '2 2º 02 Febrero Feb.'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Sunday, February 14th 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Sun, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2nd 02 February Feb'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14º 14'],
- ['d do dddd ddd dd', '0 0º Domingo Dom. Do'],
- ['DDD DDDo DDDD', '45 45º 045'],
- ['w wo ww', '6 6º 06'],
- ['YYYY-MMM-DD', '2010-Feb-14'],
+ ['D Do DD', '14 14th 14'],
+ ['d do dddd ddd dd', '0 0th Sunday Sun Su'],
+ ['DDD DDDo DDDD', '45 45th 045'],
+ ['w wo ww', '8 8th 08'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45º day of the year'],
- ['LTS', '15:25:50'],
- ['L', '14/02/2010'],
- ['LL', '14 de Febrero de 2010'],
- ['LLL', '14 de Febrero de 2010 15:25'],
- ['LLLL', 'Domingo, 14 de Febrero de 2010 15:25'],
- ['l', '14/2/2010'],
- ['ll', '14 de Feb. de 2010'],
- ['lll', '14 de Feb. de 2010 15:25'],
- ['llll', 'Dom., 14 de Feb. de 2010 15:25']
+ ['[the] DDDo [day of the year]', 'the 45th day of the year'],
+ ['LTS', '3:25:50 PM'],
+ ['L', '02/14/2010'],
+ ['LL', 'February 14, 2010'],
+ ['LLL', 'February 14, 2010 3:25 PM'],
+ ['LLLL', 'Sunday, February 14, 2010 3:25 PM'],
+ ['l', '2/14/2010'],
+ ['ll', 'Feb 14, 2010'],
+ ['lll', 'Feb 14, 2010 3:25 PM'],
+ ['llll', 'Sun, Feb 14, 2010 3:25 PM']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
+
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1st', '1st');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2nd', '2nd');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3rd', '3rd');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4th', '4th');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5th', '5th');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6th', '6th');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7th', '7th');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8th', '8th');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9th', '9th');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10th', '10th');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11th', '11th');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12th', '12th');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13th', '13th');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14th', '14th');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15th', '15th');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16th', '16th');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17th', '17th');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18th', '18th');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19th', '19th');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20th', '20th');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21st', '21st');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22nd', '22nd');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23rd', '23rd');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24th', '24th');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25th', '25th');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26th', '26th');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27th', '27th');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28th', '28th');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29th', '29th');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30th', '30th');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31st', '31st');
});
test('format month', function (assert) {
- var expected = 'Enero Ene._Febrero Feb._Marzo Mar._Abril Abr._Mayo May._Junio Jun._Julio Jul._Agosto Ago._Septiembre Sep._Octubre Oct._Noviembre Nov._Diciembre Dic.'.split('_'), i;
+ var i,
+ expected = 'January Jan_February Feb_March Mar_April Apr_May May_June Jun_July Jul_August Aug_September Sept_October Oct_November Nov_December Dec'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'Domingo Dom. Do_Lunes Lun. Lu_Martes Mar. Ma_Miércoles Mié. Mi_Jueves Jue. Ju_Viernes Vie. Vi_Sábado Sáb. Sá'.split('_'), i;
+ var i,
+ expected = 'Sunday Sun Su_Monday Mon Mo_Tuesday Tue Tu_Wednesday Wed We_Thursday Thu Th_Friday Fri Fr_Saturday Sat Sa'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'unos segundos', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'un minuto', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'un minuto', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutos', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutos', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'una hora', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'una hora', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horas', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horas', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horas', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un día', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un día', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 días', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un día', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 días', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 días', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mes', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mes', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mes', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 meses', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 meses', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 meses', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mes', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 meses', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un año', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 años', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un año', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 años', '5 years = 5 years');
+
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'a few seconds', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'a minute', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'a minute', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutes', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutes', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'an hour', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'an hour', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 hours', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 hours', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 hours', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'a day', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'a day', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 days', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'a day', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 days', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 days', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'a month', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'a month', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'a month', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 months', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 months', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 months', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'a month', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 months', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'a year', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 years', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'a year', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 years', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'en unos segundos', 'prefix');
- assert.equal(moment(0).from(30000), 'hace unos segundos', 'suffix');
+ assert.equal(moment(30000).from(0), 'in a few seconds', 'prefix');
+ assert.equal(moment(0).from(30000), 'a few seconds ago', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'hace unos segundos', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'a few seconds ago', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'en unos segundos', 'en unos segundos');
- assert.equal(moment().add({d: 5}).fromNow(), 'en 5 días', 'en 5 días');
+ assert.equal(moment().add({s: 30}).fromNow(), 'in a few seconds', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'in 5 days', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'hoy a las 2:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'hoy a las 2:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'hoy a las 3:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'mañana a las 2:00', 'tomorrow at the same time');
- assert.equal(moment(a).add({d: 1, h : -1}).calendar(), 'mañana a la 1:00', 'tomorrow minus 1 hour');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'hoy a la 1:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'ayer a las 2:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Today at 2:00 AM', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Today at 2:25 AM', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Today at 3:00 AM', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Tomorrow at 2:00 AM', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Today at 1:00 AM', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Yesterday at 2:00 AM', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [at] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [at] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [at] LT'), 'Today + ' + i + ' days end of day');
}
});
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[el] dddd [pasado a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[Last] dddd [at] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[el] dddd [pasado a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[Last] dddd [at] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[el] dddd [pasado a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[Last] dddd [at] LT'), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
});
- test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52º', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1º', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1º', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2º', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2º', 'Jan 15 2012 should be week 2');
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1st', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1st', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2nd', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2nd', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3rd', 'Jan 15 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}
});
+ test('weekdays strict parsing', function (assert) {
+ var m = moment('2015-01-01T12', moment.ISO_8601, true),
+ enLocale = moment.localeData('en');
+
+ for (var i = 0; i < 7; ++i) {
+ assert.equal(moment(enLocale.weekdays(m.day(i), ''), 'dddd', true).isValid(), true, 'parse weekday ' + i);
+ assert.equal(moment(enLocale.weekdaysShort(m.day(i), ''), 'ddd', true).isValid(), true, 'parse short weekday ' + i);
+ assert.equal(moment(enLocale.weekdaysMin(m.day(i), ''), 'dd', true).isValid(), true, 'parse min weekday ' + i);
+
+ // negative tests
+ assert.equal(moment(enLocale.weekdaysMin(m.day(i), ''), 'ddd', true).isValid(), false, 'parse short weekday ' + i);
+ assert.equal(moment(enLocale.weekdaysShort(m.day(i), ''), 'dd', true).isValid(), false, 'parse min weekday ' + i);
+ }
+ });
+
test('lenient ordinal parsing of number', function (assert) {
var i, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('et');
+ localeModule('eo');
test('parse', function (assert) {
- var tests = 'jaanuar jaan_veebruar veebr_märts märts_aprill apr_mai mai_juuni juuni_juuli juuli_august aug_september sept_oktoober okt_november nov_detsember dets'.split('_'), i;
+ var tests = 'januaro jan_februaro feb_marto mar_aprilo apr_majo maj_junio jun_julio jul_aŭgusto aŭg_septembro sep_oktobro okt_novembro nov_decembro dec'.split('_'), i;
function equalTest(input, mmm, i) {
- assert.equal(moment(input, mmm).month(), i, input + ' peaks olema kuu ' + (i + 1));
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, H:mm:ss', 'pühapäev, 14. veebruar 2010, 15:25:50'],
- ['ddd, h', 'P, 3'],
- ['M Mo MM MMMM MMM', '2 2. 02 veebruar veebr'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. pühapäev P P'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '6 6. 06'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[aasta] DDDo [päev]', 'aasta 45. päev'],
- ['LTS', '15:25:50'],
- ['L', '14.02.2010'],
- ['LL', '14. veebruar 2010'],
- ['LLL', '14. veebruar 2010 15:25'],
- ['LLLL', 'pühapäev, 14. veebruar 2010 15:25'],
- ['l', '14.2.2010'],
- ['ll', '14. veebr 2010'],
- ['lll', '14. veebr 2010 15:25'],
- ['llll', 'P, 14. veebr 2010 15:25']
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Dimanĉo, februaro 14a 2010, 3:25:50 p.t.m.'],
+ ['ddd, hA', 'Dim, 3P.T.M.'],
+ ['M Mo MM MMMM MMM', '2 2a 02 februaro feb'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14a 14'],
+ ['d do dddd ddd dd', '0 0a Dimanĉo Dim Di'],
+ ['DDD DDDo DDDD', '45 45a 045'],
+ ['w wo ww', '7 7a 07'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'p.t.m. P.T.M.'],
+ ['[la] DDDo [tago] [de] [la] [jaro]', 'la 45a tago de la jaro'],
+ ['LTS', '15:25:50'],
+ ['L', '2010-02-14'],
+ ['LL', '14-an de februaro, 2010'],
+ ['LLL', '14-an de februaro, 2010 15:25'],
+ ['LLLL', 'Dimanĉo, la 14-an de februaro, 2010 15:25'],
+ ['l', '2010-2-14'],
+ ['ll', '14-an de feb, 2010'],
+ ['lll', '14-an de feb, 2010 15:25'],
+ ['llll', 'Dim, la 14-an de feb, 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1a', '1a');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2a', '2a');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3a', '3a');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4a', '4a');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5a', '5a');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6a', '6a');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7a', '7a');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8a', '8a');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9a', '9a');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10a', '10a');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11a', '11a');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12a', '12a');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13a', '13a');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14a', '14a');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15a', '15a');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16a', '16a');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17a', '17a');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18a', '18a');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19a', '19a');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20a', '20a');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21a', '21a');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22a', '22a');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23a', '23a');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24a', '24a');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25a', '25a');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26a', '26a');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27a', '27a');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28a', '28a');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29a', '29a');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30a', '30a');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31a', '31a');
});
test('format month', function (assert) {
- var expected = 'jaanuar jaan_veebruar veebr_märts märts_aprill apr_mai mai_juuni juuni_juuli juuli_august aug_september sept_oktoober okt_november nov_detsember dets'.split('_'), i;
+ var expected = 'januaro jan_februaro feb_marto mar_aprilo apr_majo maj_junio jun_julio jul_aŭgusto aŭg_septembro sep_oktobro okt_novembro nov_decembro dec'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'pühapäev P P_esmaspäev E E_teisipäev T T_kolmapäev K K_neljapäev N N_reede R R_laupäev L L'.split('_'), i;
+ var expected = 'Dimanĉo Dim Di_Lundo Lun Lu_Mardo Mard Ma_Merkredo Merk Me_Ĵaŭdo Ĵaŭ Ĵa_Vendredo Ven Ve_Sabato Sab Sa'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'paar sekundit', '44 seconds = paar sekundit');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'üks minut', '45 seconds = üks minut');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'üks minut', '89 seconds = üks minut');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutit', '90 seconds = 2 minutit');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutit', '44 minutes = 44 minutit');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'üks tund', '45 minutes = tund aega');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'üks tund', '89 minutes = üks tund');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 tundi', '90 minutes = 2 tundi');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 tundi', '5 hours = 5 tundi');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 tundi', '21 hours = 21 tundi');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'üks päev', '22 hours = üks päev');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'üks päev', '35 hours = üks päev');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 päeva', '36 hours = 2 päeva');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'üks päev', '1 day = üks päev');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 päeva', '5 days = 5 päeva');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 päeva', '25 days = 25 päeva');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'üks kuu', '26 days = üks kuu');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'üks kuu', '30 days = üks kuu');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'üks kuu', '43 days = üks kuu');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 kuud', '46 days = 2 kuud');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 kuud', '75 days = 2 kuud');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 kuud', '76 days = 3 kuud');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'üks kuu', '1 month = üks kuu');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 kuud', '5 months = 5 kuud');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'üks aasta', '345 days = üks aasta');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 aastat', '548 days = 2 aastat');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'üks aasta', '1 year = üks aasta');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 aastat', '5 years = 5 aastat');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'sekundoj', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minuto', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minuto', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutoj', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutoj', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'horo', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'horo', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horoj', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horoj', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horoj', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'tago', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'tago', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 tagoj', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'tago', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 tagoj', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 tagoj', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'monato', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'monato', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'monato', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 monatoj', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 monatoj', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 monatoj', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'monato', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 monatoj', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'jaro', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 jaroj', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'jaro', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 jaroj', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'mõne sekundi pärast', 'prefix');
- assert.equal(moment(0).from(30000), 'mõni sekund tagasi', 'suffix');
+ assert.equal(moment(30000).from(0), 'je sekundoj', 'je prefix');
+ assert.equal(moment(0).from(30000), 'antaŭ sekundoj', 'antaŭ prefix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'mõni sekund tagasi', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'antaŭ sekundoj', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'mõne sekundi pärast', 'in a few seconds');
- assert.equal(moment().subtract({s: 30}).fromNow(), 'mõni sekund tagasi', 'a few seconds ago');
-
- assert.equal(moment().add({m: 1}).fromNow(), 'ühe minuti pärast', 'in a minute');
- assert.equal(moment().subtract({m: 1}).fromNow(), 'üks minut tagasi', 'a minute ago');
-
- assert.equal(moment().add({m: 5}).fromNow(), '5 minuti pärast', 'in 5 minutes');
- assert.equal(moment().subtract({m: 5}).fromNow(), '5 minutit tagasi', '5 minutes ago');
-
- assert.equal(moment().add({d: 1}).fromNow(), 'ühe päeva pärast', 'in one day');
- assert.equal(moment().subtract({d: 1}).fromNow(), 'üks päev tagasi', 'one day ago');
-
- assert.equal(moment().add({d: 5}).fromNow(), '5 päeva pärast', 'in 5 days');
- assert.equal(moment().subtract({d: 5}).fromNow(), '5 päeva tagasi', '5 days ago');
-
- assert.equal(moment().add({M: 1}).fromNow(), 'kuu aja pärast', 'in a month');
- assert.equal(moment().subtract({M: 1}).fromNow(), 'kuu aega tagasi', 'a month ago');
-
- assert.equal(moment().add({M: 5}).fromNow(), '5 kuu pärast', 'in 5 months');
- assert.equal(moment().subtract({M: 5}).fromNow(), '5 kuud tagasi', '5 months ago');
-
- assert.equal(moment().add({y: 1}).fromNow(), 'ühe aasta pärast', 'in a year');
- assert.equal(moment().subtract({y: 1}).fromNow(), 'aasta tagasi', 'a year ago');
-
- assert.equal(moment().add({y: 5}).fromNow(), '5 aasta pärast', 'in 5 years');
- assert.equal(moment().subtract({y: 5}).fromNow(), '5 aastat tagasi', '5 years ago');
+ assert.equal(moment().add({s: 30}).fromNow(), 'je sekundoj', 'je sekundoj');
+ assert.equal(moment().add({d: 5}).fromNow(), 'je 5 tagoj', 'je 5 tagoj');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Täna, 2:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Täna, 2:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Täna, 3:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Homme, 2:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Täna, 1:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Eile, 2:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Hodiaŭ je 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Hodiaŭ je 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Hodiaŭ je 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Morgaŭ je 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hodiaŭ je 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Hieraŭ je 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('[Järgmine] dddd LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [je] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[Järgmine] dddd LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [je] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[Järgmine] dddd LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [je] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[Eelmine] dddd LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[pasinta] dddd [je] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[Eelmine] dddd LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[pasinta] dddd [je] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[Eelmine] dddd LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[pasinta] dddd [je] LT'), 'Today - ' + i + ' days end of day');
}
});
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 nädal tagasi');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '1 nädala pärast');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 nädalat tagasi');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '2 nädala pärast');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1a', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1a', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2a', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2a', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3a', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('eu');
+ localeModule('es');
test('parse', function (assert) {
- var tests = 'urtarrila urt._otsaila ots._martxoa mar._apirila api._maiatza mai._ekaina eka._uztaila uzt._abuztua abu._iraila ira._urria urr._azaroa aza._abendua abe.'.split('_'), i;
+ var tests = 'enero ene._febrero feb._marzo mar._abril abr._mayo may._junio jun._julio jul._agosto ago._septiembre sep._octubre oct._noviembre nov._diciembre dic.'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'igandea, otsaila 14. 2010, 3:25:50 pm'],
- ['ddd, hA', 'ig., 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 otsaila ots.'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'domingo, febrero 14º 2010, 3:25:50 pm'],
+ ['ddd, hA', 'dom., 3PM'],
+ ['M Mo MM MMMM MMM', '2 2º 02 febrero feb.'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. igandea ig. ig'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '7 7. 07'],
+ ['D Do DD', '14 14º 14'],
+ ['d do dddd ddd dd', '0 0º domingo dom. do'],
+ ['DDD DDDo DDDD', '45 45º 045'],
+ ['w wo ww', '6 6º 06'],
+ ['YYYY-MMM-DD', '2010-feb-14'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['[the] DDDo [day of the year]', 'the 45º day of the year'],
['LTS', '15:25:50'],
- ['L', '2010-02-14'],
- ['LL', '2010ko otsailaren 14a'],
- ['LLL', '2010ko otsailaren 14a 15:25'],
- ['LLLL', 'igandea, 2010ko otsailaren 14a 15:25'],
- ['l', '2010-2-14'],
- ['ll', '2010ko ots. 14a'],
- ['lll', '2010ko ots. 14a 15:25'],
- ['llll', 'ig., 2010ko ots. 14a 15:25']
+ ['L', '14/02/2010'],
+ ['LL', '14 de febrero de 2010'],
+ ['LLL', '14 de febrero de 2010 15:25'],
+ ['LLLL', 'domingo, 14 de febrero de 2010 15:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 de feb. de 2010'],
+ ['lll', '14 de feb. de 2010 15:25'],
+ ['llll', 'dom., 14 de feb. de 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
});
test('format month', function (assert) {
- var expected = 'urtarrila urt._otsaila ots._martxoa mar._apirila api._maiatza mai._ekaina eka._uztaila uzt._abuztua abu._iraila ira._urria urr._azaroa aza._abendua abe.'.split('_'), i;
+ var expected = 'enero ene._febrero feb._marzo mar._abril abr._mayo may._junio jun._julio jul._agosto ago._septiembre sep._octubre oct._noviembre nov._diciembre dic.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'igandea ig. ig_astelehena al. al_asteartea ar. ar_asteazkena az. az_osteguna og. og_ostirala ol. ol_larunbata lr. lr'.split('_'), i;
+ var expected = 'domingo dom. do_lunes lun. lu_martes mar. ma_miércoles mié. mi_jueves jue. ju_viernes vie. vi_sábado sáb. sá'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'segundo batzuk', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minutu bat', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minutu bat', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutu', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutu', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ordu bat', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ordu bat', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ordu', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ordu', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 ordu', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'egun bat', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'egun bat', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 egun', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'egun bat', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 egun', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 egun', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'hilabete bat', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'hilabete bat', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'hilabete bat', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 hilabete', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 hilabete', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 hilabete', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'hilabete bat', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 hilabete', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'urte bat', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 urte', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'urte bat', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 urte', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'unos segundos', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'un minuto', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'un minuto', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutos', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutos', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'una hora', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'una hora', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horas', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horas', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horas', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un día', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un día', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 días', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un día', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 días', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 días', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mes', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mes', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mes', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 meses', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 meses', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 meses', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mes', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 meses', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un año', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 años', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un año', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 años', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'segundo batzuk barru', 'prefix');
- assert.equal(moment(0).from(30000), 'duela segundo batzuk', 'suffix');
+ assert.equal(moment(30000).from(0), 'en unos segundos', 'prefix');
+ assert.equal(moment(0).from(30000), 'hace unos segundos', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'duela segundo batzuk', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'hace unos segundos', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'segundo batzuk barru', 'in seconds');
- assert.equal(moment().add({d: 5}).fromNow(), '5 egun barru', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'en unos segundos', 'en unos segundos');
+ assert.equal(moment().add({d: 5}).fromNow(), 'en 5 días', 'en 5 días');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'gaur 02:00etan', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'gaur 02:25etan', 'now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'gaur 03:00etan', 'now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'bihar 02:00etan', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'gaur 01:00etan', 'now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'atzo 02:00etan', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'hoy a las 2:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'hoy a las 2:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'hoy a las 3:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'mañana a las 2:00', 'tomorrow at the same time');
+ assert.equal(moment(a).add({d: 1, h : -1}).calendar(), 'mañana a la 1:00', 'tomorrow minus 1 hour');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'hoy a la 1:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'ayer a las 2:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd LT[etan]'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd LT[etan]'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd LT[etan]'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[aurreko] dddd LT[etan]'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[el] dddd [pasado a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[aurreko] dddd LT[etan]'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[el] dddd [pasado a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[aurreko] dddd LT[etan]'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[el] dddd [pasado a la' + ((m.hours() !== 1) ? 's' : '') + '] LT'), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1.', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1.', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2.', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2.', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3.', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52º', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1º', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1º', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2º', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2º', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('fa');
+ localeModule('et');
test('parse', function (assert) {
- var tests = 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'), i;
+ var tests = 'jaanuar jaan_veebruar veebr_märts märts_aprill apr_mai mai_juuni juuni_juuli juuli_august aug_september sept_oktoober okt_november nov_detsember dets'.split('_'), i;
function equalTest(input, mmm, i) {
- assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1) + ' instead is month ' + moment(input, mmm).month());
+ assert.equal(moment(input, mmm).month(), i, input + ' peaks olema kuu ' + (i + 1));
}
for (i = 0; i < 12; i++) {
- equalTest(tests[i], 'MMM', i);
- equalTest(tests[i], 'MMMM', i);
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
}
});
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'یک\u200cشنبه، فوریه ۱۴م ۲۰۱۰، ۳:۲۵:۵۰ بعد از ظهر'],
- ['ddd, hA', 'یک\u200cشنبه، ۳بعد از ظهر'],
- ['M Mo MM MMMM MMM', '۲ ۲م ۰۲ فوریه فوریه'],
- ['YYYY YY', '۲۰۱۰ ۱۰'],
- ['D Do DD', '۱۴ ۱۴م ۱۴'],
- ['d do dddd ddd dd', '۰ ۰م یک\u200cشنبه یک\u200cشنبه ی'],
- ['DDD DDDo DDDD', '۴۵ ۴۵م ۰۴۵'],
- ['w wo ww', '۸ ۸م ۰۸'],
- ['h hh', '۳ ۰۳'],
- ['H HH', '۱۵ ۱۵'],
- ['m mm', '۲۵ ۲۵'],
- ['s ss', '۵۰ ۵۰'],
- ['a A', 'بعد از ظهر بعد از ظهر'],
- ['DDDo [روز سال]', '۴۵م روز سال'],
- ['LTS', '۱۵:۲۵:۵۰'],
- ['L', '۱۴/۰۲/۲۰۱۰'],
- ['LL', '۱۴ فوریه ۲۰۱۰'],
- ['LLL', '۱۴ فوریه ۲۰۱۰ ۱۵:۲۵'],
- ['LLLL', 'یک\u200cشنبه، ۱۴ فوریه ۲۰۱۰ ۱۵:۲۵'],
- ['l', '۱۴/۲/۲۰۱۰'],
- ['ll', '۱۴ فوریه ۲۰۱۰'],
- ['lll', '۱۴ فوریه ۲۰۱۰ ۱۵:۲۵'],
- ['llll', 'یک\u200cشنبه، ۱۴ فوریه ۲۰۱۰ ۱۵:۲۵']
+ ['dddd, Do MMMM YYYY, H:mm:ss', 'pühapäev, 14. veebruar 2010, 15:25:50'],
+ ['ddd, h', 'P, 3'],
+ ['M Mo MM MMMM MMM', '2 2. 02 veebruar veebr'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. pühapäev P P'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[aasta] DDDo [päev]', 'aasta 45. päev'],
+ ['LTS', '15:25:50'],
+ ['L', '14.02.2010'],
+ ['LL', '14. veebruar 2010'],
+ ['LLL', '14. veebruar 2010 15:25'],
+ ['LLLL', 'pühapäev, 14. veebruar 2010 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14. veebr 2010'],
+ ['lll', '14. veebr 2010 15:25'],
+ ['llll', 'P, 14. veebr 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '۱م', '1');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '۲م', '2');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '۳م', '3');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '۴م', '4');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '۵م', '5');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '۶م', '6');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '۷م', '7');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '۸م', '8');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '۹م', '9');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '۱۰م', '10');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '۱۱م', '11');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '۱۲م', '12');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '۱۳م', '13');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '۱۴م', '14');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '۱۵م', '15');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '۱۶م', '16');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '۱۷م', '17');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '۱۸م', '18');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '۱۹م', '19');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '۲۰م', '20');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '۲۱م', '21');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '۲۲م', '22');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '۲۳م', '23');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '۲۴م', '24');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '۲۵م', '25');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '۲۶م', '26');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '۲۷م', '27');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '۲۸م', '28');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '۲۹م', '29');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '۳۰م', '30');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '۳۱م', '31');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
});
test('format month', function (assert) {
- var expected = 'ژانویه ژانویه_فوریه فوریه_مارس مارس_آوریل آوریل_مه مه_ژوئن ژوئن_ژوئیه ژوئیه_اوت اوت_سپتامبر سپتامبر_اکتبر اکتبر_نوامبر نوامبر_دسامبر دسامبر'.split('_'), i;
+ var expected = 'jaanuar jaan_veebruar veebr_märts märts_aprill apr_mai mai_juuni juuni_juuli juuli_august aug_september sept_oktoober okt_november nov_detsember dets'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'یک\u200cشنبه یک\u200cشنبه ی_دوشنبه دوشنبه د_سه\u200cشنبه سه\u200cشنبه س_چهارشنبه چهارشنبه چ_پنج\u200cشنبه پنج\u200cشنبه پ_جمعه جمعه ج_شنبه شنبه ش'.split('_'), i;
+ var expected = 'pühapäev P P_esmaspäev E E_teisipäev T T_kolmapäev K K_neljapäev N N_reede R R_laupäev L L'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'چندین ثانیه', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'یک دقیقه', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'یک دقیقه', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '۲ دقیقه', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '۴۴ دقیقه', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'یک ساعت', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'یک ساعت', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '۲ ساعت', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '۵ ساعت', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '۲۱ ساعت', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'یک روز', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'یک روز', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '۲ روز', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'یک روز', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '۵ روز', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '۲۵ روز', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'یک ماه', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'یک ماه', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'یک ماه', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '۲ ماه', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '۲ ماه', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '۳ ماه', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'یک ماه', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '۵ ماه', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'یک سال', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '۲ سال', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'یک سال', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '۵ سال', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'paar sekundit', '44 seconds = paar sekundit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'üks minut', '45 seconds = üks minut');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'üks minut', '89 seconds = üks minut');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutit', '90 seconds = 2 minutit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutit', '44 minutes = 44 minutit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'üks tund', '45 minutes = tund aega');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'üks tund', '89 minutes = üks tund');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 tundi', '90 minutes = 2 tundi');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 tundi', '5 hours = 5 tundi');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 tundi', '21 hours = 21 tundi');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'üks päev', '22 hours = üks päev');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'üks päev', '35 hours = üks päev');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 päeva', '36 hours = 2 päeva');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'üks päev', '1 day = üks päev');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 päeva', '5 days = 5 päeva');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 päeva', '25 days = 25 päeva');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'üks kuu', '26 days = üks kuu');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'üks kuu', '30 days = üks kuu');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'üks kuu', '43 days = üks kuu');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 kuud', '46 days = 2 kuud');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 kuud', '75 days = 2 kuud');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 kuud', '76 days = 3 kuud');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'üks kuu', '1 month = üks kuu');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 kuud', '5 months = 5 kuud');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'üks aasta', '345 days = üks aasta');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 aastat', '548 days = 2 aastat');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'üks aasta', '1 year = üks aasta');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 aastat', '5 years = 5 aastat');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'در چندین ثانیه', 'prefix');
- assert.equal(moment(0).from(30000), 'چندین ثانیه پیش', 'suffix');
+ assert.equal(moment(30000).from(0), 'mõne sekundi pärast', 'prefix');
+ assert.equal(moment(0).from(30000), 'mõni sekund tagasi', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'چندین ثانیه پیش', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'mõni sekund tagasi', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'در چندین ثانیه', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'در ۵ روز', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'mõne sekundi pärast', 'in a few seconds');
+ assert.equal(moment().subtract({s: 30}).fromNow(), 'mõni sekund tagasi', 'a few seconds ago');
+
+ assert.equal(moment().add({m: 1}).fromNow(), 'ühe minuti pärast', 'in a minute');
+ assert.equal(moment().subtract({m: 1}).fromNow(), 'üks minut tagasi', 'a minute ago');
+
+ assert.equal(moment().add({m: 5}).fromNow(), '5 minuti pärast', 'in 5 minutes');
+ assert.equal(moment().subtract({m: 5}).fromNow(), '5 minutit tagasi', '5 minutes ago');
+
+ assert.equal(moment().add({d: 1}).fromNow(), 'ühe päeva pärast', 'in one day');
+ assert.equal(moment().subtract({d: 1}).fromNow(), 'üks päev tagasi', 'one day ago');
+
+ assert.equal(moment().add({d: 5}).fromNow(), '5 päeva pärast', 'in 5 days');
+ assert.equal(moment().subtract({d: 5}).fromNow(), '5 päeva tagasi', '5 days ago');
+
+ assert.equal(moment().add({M: 1}).fromNow(), 'kuu aja pärast', 'in a month');
+ assert.equal(moment().subtract({M: 1}).fromNow(), 'kuu aega tagasi', 'a month ago');
+
+ assert.equal(moment().add({M: 5}).fromNow(), '5 kuu pärast', 'in 5 months');
+ assert.equal(moment().subtract({M: 5}).fromNow(), '5 kuud tagasi', '5 months ago');
+
+ assert.equal(moment().add({y: 1}).fromNow(), 'ühe aasta pärast', 'in a year');
+ assert.equal(moment().subtract({y: 1}).fromNow(), 'aasta tagasi', 'a year ago');
+
+ assert.equal(moment().add({y: 5}).fromNow(), '5 aasta pärast', 'in 5 years');
+ assert.equal(moment().subtract({y: 5}).fromNow(), '5 aastat tagasi', '5 years ago');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'امروز ساعت ۰۲:۰۰', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'امروز ساعت ۰۲:۲۵', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'امروز ساعت ۰۳:۰۰', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'فردا ساعت ۰۲:۰۰', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'امروز ساعت ۰۱:۰۰', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'دیروز ساعت ۰۲:۰۰', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Täna, 2:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Täna, 2:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Täna, 3:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Homme, 2:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Täna, 1:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Eile, 2:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [ساعت] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[Järgmine] dddd LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [ساعت] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[Järgmine] dddd LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [ساعت] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[Järgmine] dddd LT'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('dddd [پیش ساعت] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[Eelmine] dddd LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [پیش ساعت] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[Eelmine] dddd LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [پیش ساعت] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[Eelmine] dddd LT'), 'Today - ' + i + ' days end of day');
}
});
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 nädal tagasi');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '1 nädala pärast');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 nädalat tagasi');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '2 nädala pärast');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 31]).week(), 1, 'Dec 31 2011 should be week 1');
- assert.equal(moment([2012, 0, 6]).week(), 1, 'Jan 6 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).week(), 2, 'Jan 7 2012 should be week 2');
- assert.equal(moment([2012, 0, 13]).week(), 2, 'Jan 13 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).week(), 3, 'Jan 14 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 30]).week(), 1, 'Dec 30 2006 should be week 1');
- assert.equal(moment([2007, 0, 5]).week(), 1, 'Jan 5 2007 should be week 1');
- assert.equal(moment([2007, 0, 6]).week(), 2, 'Jan 6 2007 should be week 2');
- assert.equal(moment([2007, 0, 12]).week(), 2, 'Jan 12 2007 should be week 2');
- assert.equal(moment([2007, 0, 13]).week(), 3, 'Jan 13 2007 should be week 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 29]).week(), 1, 'Dec 29 2007 should be week 1');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 4]).week(), 1, 'Jan 4 2008 should be week 1');
- assert.equal(moment([2008, 0, 5]).week(), 2, 'Jan 5 2008 should be week 2');
- assert.equal(moment([2008, 0, 11]).week(), 2, 'Jan 11 2008 should be week 2');
- assert.equal(moment([2008, 0, 12]).week(), 3, 'Jan 12 2008 should be week 3');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 28]).week(), 1, 'Dec 28 2002 should be week 1');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 3]).week(), 1, 'Jan 3 2003 should be week 1');
- assert.equal(moment([2003, 0, 4]).week(), 2, 'Jan 4 2003 should be week 2');
- assert.equal(moment([2003, 0, 10]).week(), 2, 'Jan 10 2003 should be week 2');
- assert.equal(moment([2003, 0, 11]).week(), 3, 'Jan 11 2003 should be week 3');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 27]).week(), 1, 'Dec 27 2008 should be week 1');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 2]).week(), 1, 'Jan 2 2009 should be week 1');
- assert.equal(moment([2009, 0, 3]).week(), 2, 'Jan 3 2009 should be week 2');
- assert.equal(moment([2009, 0, 9]).week(), 2, 'Jan 9 2009 should be week 2');
- assert.equal(moment([2009, 0, 10]).week(), 3, 'Jan 10 2009 should be week 3');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 26]).week(), 1, 'Dec 26 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 2]).week(), 2, 'Jan 2 2010 should be week 2');
- assert.equal(moment([2010, 0, 8]).week(), 2, 'Jan 8 2010 should be week 2');
- assert.equal(moment([2010, 0, 9]).week(), 3, 'Jan 9 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 7]).week(), 1, 'Jan 7 2011 should be week 1');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
- assert.equal(moment([2011, 0, 14]).week(), 2, 'Jan 14 2011 should be week 2');
- assert.equal(moment([2011, 0, 15]).week(), 3, 'Jan 15 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 31]).format('w ww wo'), '۱ ۰۱ ۱م', 'Dec 31 2011 should be week 1');
- assert.equal(moment([2012, 0, 6]).format('w ww wo'), '۱ ۰۱ ۱م', 'Jan 6 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '۲ ۰۲ ۲م', 'Jan 7 2012 should be week 2');
- assert.equal(moment([2012, 0, 13]).format('w ww wo'), '۲ ۰۲ ۲م', 'Jan 13 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '۳ ۰۳ ۳م', 'Jan 14 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('fi');
+ localeModule('eu');
test('parse', function (assert) {
- var tests = 'tammikuu tammi_helmikuu helmi_maaliskuu maalis_huhtikuu huhti_toukokuu touko_kesäkuu kesä_heinäkuu heinä_elokuu elo_syyskuu syys_lokakuu loka_marraskuu marras_joulukuu joulu'.split('_'), i;
+ var tests = 'urtarrila urt._otsaila ots._martxoa mar._apirila api._maiatza mai._ekaina eka._uztaila uzt._abuztua abu._iraila ira._urria urr._azaroa aza._abendua abe.'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'sunnuntai, helmikuu 14. 2010, 3:25:50 pm'],
- ['ddd, hA', 'su, 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 helmikuu helmi'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'igandea, otsaila 14. 2010, 3:25:50 pm'],
+ ['ddd, hA', 'ig., 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 otsaila ots.'],
['YYYY YY', '2010 10'],
['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. sunnuntai su su'],
+ ['d do dddd ddd dd', '0 0. igandea ig. ig'],
['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '6 6. 06'],
+ ['w wo ww', '7 7. 07'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[vuoden] DDDo [päivä]', 'vuoden 45. päivä'],
- ['LTS', '15.25.50'],
- ['L', '14.02.2010'],
- ['LL', '14. helmikuuta 2010'],
- ['LLL', '14. helmikuuta 2010, klo 15.25'],
- ['LLLL', 'sunnuntai, 14. helmikuuta 2010, klo 15.25'],
- ['l', '14.2.2010'],
- ['ll', '14. helmi 2010'],
- ['lll', '14. helmi 2010, klo 15.25'],
- ['llll', 'su, 14. helmi 2010, klo 15.25']
+ ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '2010-02-14'],
+ ['LL', '2010ko otsailaren 14a'],
+ ['LLL', '2010ko otsailaren 14a 15:25'],
+ ['LLLL', 'igandea, 2010ko otsailaren 14a 15:25'],
+ ['l', '2010-2-14'],
+ ['ll', '2010ko ots. 14a'],
+ ['lll', '2010ko ots. 14a 15:25'],
+ ['llll', 'ig., 2010ko ots. 14a 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1st');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2nd');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3rd');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4th');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5th');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6th');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7th');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8th');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9th');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10th');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11th');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12th');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13th');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14th');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15th');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16th');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17th');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18th');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19th');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20th');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21st');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22nd');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23rd');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24th');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25th');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26th');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27th');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28th');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29th');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30th');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31st');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
});
test('format month', function (assert) {
- var expected = 'tammikuu tammi_helmikuu helmi_maaliskuu maalis_huhtikuu huhti_toukokuu touko_kesäkuu kesä_heinäkuu heinä_elokuu elo_syyskuu syys_lokakuu loka_marraskuu marras_joulukuu joulu'.split('_'), i;
+ var expected = 'urtarrila urt._otsaila ots._martxoa mar._apirila api._maiatza mai._ekaina eka._uztaila uzt._abuztua abu._iraila ira._urria urr._azaroa aza._abendua abe.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'sunnuntai su su_maanantai ma ma_tiistai ti ti_keskiviikko ke ke_torstai to to_perjantai pe pe_lauantai la la'.split('_'), i;
+ var expected = 'igandea ig. ig_astelehena al. al_asteartea ar. ar_asteazkena az. az_osteguna og. og_ostirala ol. ol_larunbata lr. lr'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'muutama sekunti', '44 seconds = few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minuutti', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minuutti', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), 'kaksi minuuttia', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuuttia', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'tunti', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'tunti', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), 'kaksi tuntia', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), 'viisi tuntia', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 tuntia', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'päivä', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'päivä', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), 'kaksi päivää', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'päivä', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), 'viisi päivää', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 päivää', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'kuukausi', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'kuukausi', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'kuukausi', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), 'kaksi kuukautta', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), 'kaksi kuukautta', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), 'kolme kuukautta', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'kuukausi', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), 'viisi kuukautta', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'vuosi', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), 'kaksi vuotta', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'vuosi', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), 'viisi vuotta', '5 years = 5 years');
- });
-
- test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'muutaman sekunnin päästä', 'prefix');
- assert.equal(moment(0).from(30000), 'muutama sekunti sitten', 'suffix');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'segundo batzuk', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minutu bat', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minutu bat', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutu', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutu', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ordu bat', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ordu bat', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ordu', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ordu', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 ordu', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'egun bat', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'egun bat', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 egun', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'egun bat', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 egun', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 egun', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'hilabete bat', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'hilabete bat', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'hilabete bat', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 hilabete', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 hilabete', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 hilabete', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'hilabete bat', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 hilabete', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'urte bat', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 urte', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'urte bat', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 urte', '5 years = 5 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'segundo batzuk barru', 'prefix');
+ assert.equal(moment(0).from(30000), 'duela segundo batzuk', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'muutama sekunti sitten', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'duela segundo batzuk', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'muutaman sekunnin päästä', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'viiden päivän päästä', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'segundo batzuk barru', 'in seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), '5 egun barru', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'tänään klo 02.00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'tänään klo 02.25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'tänään klo 03.00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'huomenna klo 02.00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'tänään klo 01.00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'eilen klo 02.00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'gaur 02:00etan', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'gaur 02:25etan', 'now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'gaur 03:00etan', 'now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'bihar 02:00etan', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'gaur 01:00etan', 'now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'atzo 02:00etan', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
-
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [klo] LT'), 'today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd LT[etan]'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [klo] LT'), 'today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd LT[etan]'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [klo] LT'), 'today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd LT[etan]'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[viime] dddd[na] [klo] LT'), 'today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[aurreko] dddd LT[etan]'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[viime] dddd[na] [klo] LT'), 'today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[aurreko] dddd LT[etan]'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[viime] dddd[na] [klo] LT'), 'today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[aurreko] dddd LT[etan]'), 'Today - ' + i + ' days end of day');
}
});
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), 'yksi viikko sitten');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'yhden viikon päästä');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), 'kaksi viikkoa sitten');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'kaden viikon päästä');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1.', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1.', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2.', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2.', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3.', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('fo');
+ localeModule('fa');
test('parse', function (assert) {
- var tests = 'januar jan_februar feb_mars mar_apríl apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'), i;
+ var tests = 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'), i;
function equalTest(input, mmm, i) {
- assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1) + ' instead is month ' + moment(input, mmm).month());
}
for (i = 0; i < 12; i++) {
- tests[i] = tests[i].split(' ');
- equalTest(tests[i][0], 'MMM', i);
- equalTest(tests[i][1], 'MMM', i);
- equalTest(tests[i][0], 'MMMM', i);
- equalTest(tests[i][1], 'MMMM', i);
- equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
- equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
- equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
- equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i], 'MMM', i);
+ equalTest(tests[i], 'MMMM', i);
}
});
test('format', function (assert) {
var a = [
- ['dddd [tann] Do MMMM YYYY, h:mm:ss a', 'sunnudagur tann 14. februar 2010, 3:25:50 pm'],
- ['ddd hA', 'sun 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 februar feb'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. sunnudagur sun su'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '6 6. 06'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[tann] DDDo [dagin á árinum]', 'tann 45. dagin á árinum'],
- ['LTS', '15:25:50'],
- ['L', '14/02/2010'],
- ['LL', '14 februar 2010'],
- ['LLL', '14 februar 2010 15:25'],
- ['LLLL', 'sunnudagur 14. februar, 2010 15:25'],
- ['l', '14/2/2010'],
- ['ll', '14 feb 2010'],
- ['lll', '14 feb 2010 15:25'],
- ['llll', 'sun 14. feb, 2010 15:25']
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'یک\u200cشنبه، فوریه ۱۴م ۲۰۱۰، ۳:۲۵:۵۰ بعد از ظهر'],
+ ['ddd, hA', 'یک\u200cشنبه، ۳بعد از ظهر'],
+ ['M Mo MM MMMM MMM', '۲ ۲م ۰۲ فوریه فوریه'],
+ ['YYYY YY', '۲۰۱۰ ۱۰'],
+ ['D Do DD', '۱۴ ۱۴م ۱۴'],
+ ['d do dddd ddd dd', '۰ ۰م یک\u200cشنبه یک\u200cشنبه ی'],
+ ['DDD DDDo DDDD', '۴۵ ۴۵م ۰۴۵'],
+ ['w wo ww', '۸ ۸م ۰۸'],
+ ['h hh', '۳ ۰۳'],
+ ['H HH', '۱۵ ۱۵'],
+ ['m mm', '۲۵ ۲۵'],
+ ['s ss', '۵۰ ۵۰'],
+ ['a A', 'بعد از ظهر بعد از ظهر'],
+ ['DDDo [روز سال]', '۴۵م روز سال'],
+ ['LTS', '۱۵:۲۵:۵۰'],
+ ['L', '۱۴/۰۲/۲۰۱۰'],
+ ['LL', '۱۴ فوریه ۲۰۱۰'],
+ ['LLL', '۱۴ فوریه ۲۰۱۰ ۱۵:۲۵'],
+ ['LLLL', 'یک\u200cشنبه، ۱۴ فوریه ۲۰۱۰ ۱۵:۲۵'],
+ ['l', '۱۴/۲/۲۰۱۰'],
+ ['ll', '۱۴ فوریه ۲۰۱۰'],
+ ['lll', '۱۴ فوریه ۲۰۱۰ ۱۵:۲۵'],
+ ['llll', 'یک\u200cشنبه، ۱۴ فوریه ۲۰۱۰ ۱۵:۲۵']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '۱م', '1');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '۲م', '2');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '۳م', '3');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '۴م', '4');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '۵م', '5');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '۶م', '6');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '۷م', '7');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '۸م', '8');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '۹م', '9');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '۱۰م', '10');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '۱۱م', '11');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '۱۲م', '12');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '۱۳م', '13');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '۱۴م', '14');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '۱۵م', '15');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '۱۶م', '16');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '۱۷م', '17');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '۱۸م', '18');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '۱۹م', '19');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '۲۰م', '20');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '۲۱م', '21');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '۲۲م', '22');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '۲۳م', '23');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '۲۴م', '24');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '۲۵م', '25');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '۲۶م', '26');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '۲۷م', '27');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '۲۸م', '28');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '۲۹م', '29');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '۳۰م', '30');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '۳۱م', '31');
});
test('format month', function (assert) {
- var expected = 'januar jan_februar feb_mars mar_apríl apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'), i;
+ var expected = 'ژانویه ژانویه_فوریه فوریه_مارس مارس_آوریل آوریل_مه مه_ژوئن ژوئن_ژوئیه ژوئیه_اوت اوت_سپتامبر سپتامبر_اکتبر اکتبر_نوامبر نوامبر_دسامبر دسامبر'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'sunnudagur sun su_mánadagur mán má_týsdagur týs tý_mikudagur mik mi_hósdagur hós hó_fríggjadagur frí fr_leygardagur ley le'.split('_'), i;
+ var expected = 'یک\u200cشنبه یک\u200cشنبه ی_دوشنبه دوشنبه د_سه\u200cشنبه سه\u200cشنبه س_چهارشنبه چهارشنبه چ_پنج\u200cشنبه پنج\u200cشنبه پ_جمعه جمعه ج_شنبه شنبه ش'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'fá sekund', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ein minutt', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ein minutt', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuttir', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuttir', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ein tími', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ein tími', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 tímar', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 tímar', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 tímar', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ein dagur', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ein dagur', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagar', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ein dagur', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagar', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagar', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ein mánaði', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ein mánaði', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ein mánaði', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mánaðir', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mánaðir', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mánaðir', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ein mánaði', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mánaðir', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'eitt ár', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ár', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'eitt ár', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ár', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'چندین ثانیه', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'یک دقیقه', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'یک دقیقه', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '۲ دقیقه', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '۴۴ دقیقه', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'یک ساعت', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'یک ساعت', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '۲ ساعت', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '۵ ساعت', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '۲۱ ساعت', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'یک روز', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'یک روز', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '۲ روز', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'یک روز', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '۵ روز', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '۲۵ روز', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'یک ماه', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'یک ماه', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'یک ماه', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '۲ ماه', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '۲ ماه', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '۳ ماه', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'یک ماه', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '۵ ماه', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'یک سال', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '۲ سال', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'یک سال', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '۵ سال', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'um fá sekund', 'prefix');
- assert.equal(moment(0).from(30000), 'fá sekund síðani', 'suffix');
+ assert.equal(moment(30000).from(0), 'در چندین ثانیه', 'prefix');
+ assert.equal(moment(0).from(30000), 'چندین ثانیه پیش', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'fá sekund síðani', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'چندین ثانیه پیش', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'um fá sekund', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'um 5 dagar', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'در چندین ثانیه', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'در ۵ روز', 'in 5 days');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'امروز ساعت ۰۲:۰۰', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'امروز ساعت ۰۲:۲۵', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'امروز ساعت ۰۳:۰۰', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'فردا ساعت ۰۲:۰۰', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'امروز ساعت ۰۱:۰۰', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'دیروز ساعت ۰۲:۰۰', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('dddd [ساعت] LT'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd [ساعت] LT'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd [ساعت] LT'), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('dddd [پیش ساعت] LT'), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd [پیش ساعت] LT'), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd [پیش ساعت] LT'), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 31]).week(), 1, 'Dec 31 2011 should be week 1');
+ assert.equal(moment([2012, 0, 6]).week(), 1, 'Jan 6 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 2, 'Jan 7 2012 should be week 2');
+ assert.equal(moment([2012, 0, 13]).week(), 2, 'Jan 13 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 3, 'Jan 14 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ assert.equal(moment([2006, 11, 30]).week(), 1, 'Dec 30 2006 should be week 1');
+ assert.equal(moment([2007, 0, 5]).week(), 1, 'Jan 5 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 2, 'Jan 6 2007 should be week 2');
+ assert.equal(moment([2007, 0, 12]).week(), 2, 'Jan 12 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 3, 'Jan 13 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2007, 11, 29]).week(), 1, 'Dec 29 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2008, 0, 4]).week(), 1, 'Jan 4 2008 should be week 1');
+ assert.equal(moment([2008, 0, 5]).week(), 2, 'Jan 5 2008 should be week 2');
+ assert.equal(moment([2008, 0, 11]).week(), 2, 'Jan 11 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 3, 'Jan 12 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2002, 11, 28]).week(), 1, 'Dec 28 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2003, 0, 3]).week(), 1, 'Jan 3 2003 should be week 1');
+ assert.equal(moment([2003, 0, 4]).week(), 2, 'Jan 4 2003 should be week 2');
+ assert.equal(moment([2003, 0, 10]).week(), 2, 'Jan 10 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 3, 'Jan 11 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2008, 11, 27]).week(), 1, 'Dec 27 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 2]).week(), 1, 'Jan 2 2009 should be week 1');
+ assert.equal(moment([2009, 0, 3]).week(), 2, 'Jan 3 2009 should be week 2');
+ assert.equal(moment([2009, 0, 9]).week(), 2, 'Jan 9 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 3, 'Jan 10 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 26]).week(), 1, 'Dec 26 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 2]).week(), 2, 'Jan 2 2010 should be week 2');
+ assert.equal(moment([2010, 0, 8]).week(), 2, 'Jan 8 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 3, 'Jan 9 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 7]).week(), 1, 'Jan 7 2011 should be week 1');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 14]).week(), 2, 'Jan 14 2011 should be week 2');
+ assert.equal(moment([2011, 0, 15]).week(), 3, 'Jan 15 2011 should be week 3');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 31]).format('w ww wo'), '۱ ۰۱ ۱م', 'Dec 31 2011 should be week 1');
+ assert.equal(moment([2012, 0, 6]).format('w ww wo'), '۱ ۰۱ ۱م', 'Jan 6 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '۲ ۰۲ ۲م', 'Jan 7 2012 should be week 2');
+ assert.equal(moment([2012, 0, 13]).format('w ww wo'), '۲ ۰۲ ۲م', 'Jan 13 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '۳ ۰۳ ۳م', 'Jan 14 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('fr-ca');
+ localeModule('fi');
test('parse', function (assert) {
- var i,
- tests = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_');
-
+ var tests = 'tammikuu tammi_helmikuu helmi_maaliskuu maalis_huhtikuu huhti_toukokuu touko_kesäkuu kesä_heinäkuu heinä_elokuu elo_syyskuu syys_lokakuu loka_marraskuu marras_joulukuu joulu'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
-
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'dimanche, février 14e 2010, 3:25:50 pm'],
- ['ddd, hA', 'dim., 3PM'],
- ['M Mo MM MMMM MMM', '2 2e 02 février févr.'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'sunnuntai, helmikuu 14. 2010, 3:25:50 pm'],
+ ['ddd, hA', 'su, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 helmikuu helmi'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14e 14'],
- ['d do dddd ddd dd', '0 0e dimanche dim. Di'],
- ['DDD DDDo DDDD', '45 45e 045'],
- ['w wo ww', '8 8e 08'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. sunnuntai su su'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45e day of the year'],
- ['LTS', '15:25:50'],
- ['L', '2010-02-14'],
- ['LL', '14 février 2010'],
- ['LLL', '14 février 2010 15:25'],
- ['LLLL', 'dimanche 14 février 2010 15:25'],
- ['l', '2010-2-14'],
- ['ll', '14 févr. 2010'],
- ['lll', '14 févr. 2010 15:25'],
- ['llll', 'dim. 14 févr. 2010 15:25']
+ ['[vuoden] DDDo [päivä]', 'vuoden 45. päivä'],
+ ['LTS', '15.25.50'],
+ ['L', '14.02.2010'],
+ ['LL', '14. helmikuuta 2010'],
+ ['LLL', '14. helmikuuta 2010, klo 15.25'],
+ ['LLLL', 'sunnuntai, 14. helmikuuta 2010, klo 15.25'],
+ ['l', '14.2.2010'],
+ ['ll', '14. helmi 2010'],
+ ['lll', '14. helmi 2010, klo 15.25'],
+ ['llll', 'su, 14. helmi 2010, klo 15.25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
-
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1er', '1er');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2e', '2e');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3e', '3e');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4e', '4e');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5e', '5e');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6e', '6e');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7e', '7e');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8e', '8e');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9e', '9e');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10e', '10e');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1st');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2nd');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3rd');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4th');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5th');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6th');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7th');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8th');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9th');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10th');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11e', '11e');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12e', '12e');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13e', '13e');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14e', '14e');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15e', '15e');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16e', '16e');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17e', '17e');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18e', '18e');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19e', '19e');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20e', '20e');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11th');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12th');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13th');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14th');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15th');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16th');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17th');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18th');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19th');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20th');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21e', '21e');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22e', '22e');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23e', '23e');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24e', '24e');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25e', '25e');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26e', '26e');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27e', '27e');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28e', '28e');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29e', '29e');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30e', '30e');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21st');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22nd');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23rd');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24th');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25th');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26th');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27th');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28th');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29th');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30th');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31e', '31e');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31st');
});
test('format month', function (assert) {
- var i,
- expected = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_');
-
+ var expected = 'tammikuu tammi_helmikuu helmi_maaliskuu maalis_huhtikuu huhti_toukokuu touko_kesäkuu kesä_heinäkuu heinä_elokuu elo_syyskuu syys_lokakuu loka_marraskuu marras_joulukuu joulu'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var i,
- expected = 'dimanche dim. Di_lundi lun. Lu_mardi mar. Ma_mercredi mer. Me_jeudi jeu. Je_vendredi ven. Ve_samedi sam. Sa'.split('_');
-
+ var expected = 'sunnuntai su su_maanantai ma ma_tiistai ti ti_keskiviikko ke ke_torstai to to_perjantai pe pe_lauantai la la'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
-
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'quelques secondes', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'une minute', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'une minute', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutes', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutes', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'une heure', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'une heure', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 heures', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 heures', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 heures', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un jour', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un jour', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 jours', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un jour', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 jours', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 jours', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mois', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mois', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mois', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mois', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mois', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mois', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mois', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mois', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un an', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ans', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un an', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ans', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'muutama sekunti', '44 seconds = few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minuutti', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minuutti', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), 'kaksi minuuttia', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuuttia', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'tunti', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'tunti', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), 'kaksi tuntia', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), 'viisi tuntia', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 tuntia', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'päivä', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'päivä', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), 'kaksi päivää', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'päivä', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), 'viisi päivää', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 päivää', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'kuukausi', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'kuukausi', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'kuukausi', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), 'kaksi kuukautta', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), 'kaksi kuukautta', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), 'kolme kuukautta', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'kuukausi', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), 'viisi kuukautta', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'vuosi', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), 'kaksi vuotta', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'vuosi', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), 'viisi vuotta', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'dans quelques secondes', 'prefix');
- assert.equal(moment(0).from(30000), 'il y a quelques secondes', 'suffix');
+ assert.equal(moment(30000).from(0), 'muutaman sekunnin päästä', 'prefix');
+ assert.equal(moment(0).from(30000), 'muutama sekunti sitten', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'muutama sekunti sitten', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'dans quelques secondes', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'dans 5 jours', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'muutaman sekunnin päästä', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'viiden päivän päästä', 'in 5 days');
});
- test('same day', function (assert) {
+ test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Aujourd\'hui à 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Aujourd\'hui à 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Aujourd\'hui à 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Demain à 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Aujourd\'hui à 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Hier à 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'tänään klo 02.00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'tänään klo 02.25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'tänään klo 03.00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'huomenna klo 02.00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'tänään klo 01.00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'eilen klo 02.00', 'yesterday at the same time');
});
- test('same next week', function (assert) {
+ test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [klo] LT'), 'today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [klo] LT'), 'today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [klo] LT'), 'today + ' + i + ' days end of day');
}
});
- test('same last week', function (assert) {
+ test('calendar last week', function (assert) {
var i, m;
-
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[viime] dddd[na] [klo] LT'), 'today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[viime] dddd[na] [klo] LT'), 'today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[viime] dddd[na] [klo] LT'), 'today - ' + i + ' days end of day');
}
});
- test('same all else', function (assert) {
+ test('calendar all else', function (assert) {
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), 'yksi viikko sitten');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'yhden viikon päästä');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), 'kaksi viikkoa sitten');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'kaden viikon päästä');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
- test('weeks year starting sunday format', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1er', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1er', 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2e', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2e', 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3e', 'Jan 15 2012 should be week 3');
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('fr');
+ localeModule('fo');
test('parse', function (assert) {
- var tests = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_'),
- i;
+ var tests = 'januar jan_februar feb_mars mar_apríl apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'dimanche, février 14 2010, 3:25:50 pm'],
- ['ddd, hA', 'dim., 3PM'],
- ['M Mo MM MMMM MMM', '2 2 02 février févr.'],
+ ['dddd [tann] Do MMMM YYYY, h:mm:ss a', 'sunnudagur tann 14. februar 2010, 3:25:50 pm'],
+ ['ddd hA', 'sun 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 februar feb'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 dimanche dim. Di'],
- ['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '6 6 06'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. sunnudagur sun su'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45 day of the year'],
+ ['[tann] DDDo [dagin á árinum]', 'tann 45. dagin á árinum'],
['LTS', '15:25:50'],
['L', '14/02/2010'],
- ['LL', '14 février 2010'],
- ['LLL', '14 février 2010 15:25'],
- ['LLLL', 'dimanche 14 février 2010 15:25'],
+ ['LL', '14 februar 2010'],
+ ['LLL', '14 februar 2010 15:25'],
+ ['LLLL', 'sunnudagur 14. februar, 2010 15:25'],
['l', '14/2/2010'],
- ['ll', '14 févr. 2010'],
- ['lll', '14 févr. 2010 15:25'],
- ['llll', 'dim. 14 févr. 2010 15:25']
+ ['ll', '14 feb 2010'],
+ ['lll', '14 feb 2010 15:25'],
+ ['llll', 'sun 14. feb, 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1er', '1er');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
});
test('format month', function (assert) {
- var expected = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_'), i;
+ var expected = 'januar jan_februar feb_mars mar_apríl apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'dimanche dim. Di_lundi lun. Lu_mardi mar. Ma_mercredi mer. Me_jeudi jeu. Je_vendredi ven. Ve_samedi sam. Sa'.split('_'), i;
+ var expected = 'sunnudagur sun su_mánadagur mán má_týsdagur týs tý_mikudagur mik mi_hósdagur hós hó_fríggjadagur frí fr_leygardagur ley le'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'quelques secondes', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'une minute', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'une minute', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutes', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutes', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'une heure', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'une heure', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 heures', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 heures', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 heures', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un jour', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un jour', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 jours', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un jour', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 jours', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 jours', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mois', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mois', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mois', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mois', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mois', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mois', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mois', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mois', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un an', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ans', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un an', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ans', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'fá sekund', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ein minutt', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ein minutt', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuttir', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuttir', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ein tími', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ein tími', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 tímar', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 tímar', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 tímar', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ein dagur', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ein dagur', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagar', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ein dagur', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagar', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagar', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ein mánaði', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ein mánaði', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ein mánaði', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mánaðir', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mánaðir', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mánaðir', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ein mánaði', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mánaðir', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'eitt ár', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ár', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'eitt ár', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ár', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'dans quelques secondes', 'prefix');
- assert.equal(moment(0).from(30000), 'il y a quelques secondes', 'suffix');
- });
-
- test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'dans quelques secondes', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'dans 5 jours', 'in 5 days');
- });
-
- test('same day', function (assert) {
- var a = moment().hours(2).minutes(0).seconds(0);
-
- assert.equal(moment(a).calendar(), 'Aujourd\'hui à 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Aujourd\'hui à 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Aujourd\'hui à 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Demain à 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Aujourd\'hui à 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Hier à 02:00', 'yesterday at the same time');
- });
-
- test('same next week', function (assert) {
- var i, m;
-
- for (i = 2; i < 7; i++) {
- m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days current time');
- m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days beginning of day');
- m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days end of day');
- }
+ assert.equal(moment(30000).from(0), 'um fá sekund', 'prefix');
+ assert.equal(moment(0).from(30000), 'fá sekund síðani', 'suffix');
});
- test('same last week', function (assert) {
- var i, m;
-
- for (i = 2; i < 7; i++) {
- m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days current time');
- m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days beginning of day');
- m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days end of day');
- }
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'fá sekund síðani', 'now from now should display as in the past');
});
- test('same all else', function (assert) {
- var weeksAgo = moment().subtract({w: 1}),
- weeksFromNow = moment().add({w: 1});
-
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
-
- weeksAgo = moment().subtract({w: 2});
- weeksFromNow = moment().add({w: 2});
-
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'um fá sekund', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'um 5 dagar', 'in 5 days');
});
test('weeks year starting sunday', function (assert) {
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1er', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1er', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('fy');
+ localeModule('fr-ca');
test('parse', function (assert) {
- var tests = 'jannewaris jan._febrewaris feb._maart mrt._april apr._maaie mai._juny jun._july jul._augustus aug._septimber sep._oktober okt._novimber nov._desimber des.'.split('_'), i;
+ var i,
+ tests = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_');
+
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
+
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, HH:mm:ss', 'snein, febrewaris 14de 2010, 15:25:50'],
- ['ddd, HH', 'si., 15'],
- ['M Mo MM MMMM MMM', '2 2de 02 febrewaris feb.'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'dimanche, février 14e 2010, 3:25:50 pm'],
+ ['ddd, hA', 'dim., 3PM'],
+ ['M Mo MM MMMM MMM', '2 2e 02 février févr.'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14de 14'],
- ['d do dddd ddd dd', '0 0de snein si. Si'],
- ['DDD DDDo DDDD', '45 45ste 045'],
- ['w wo ww', '6 6de 06'],
+ ['D Do DD', '14 14e 14'],
+ ['d do dddd ddd dd', '0 0e dimanche dim. Di'],
+ ['DDD DDDo DDDD', '45 45e 045'],
+ ['w wo ww', '8 8e 08'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45ste day of the year'],
+ ['[the] DDDo [day of the year]', 'the 45e day of the year'],
['LTS', '15:25:50'],
- ['L', '14-02-2010'],
- ['LL', '14 febrewaris 2010'],
- ['LLL', '14 febrewaris 2010 15:25'],
- ['LLLL', 'snein 14 febrewaris 2010 15:25'],
- ['l', '14-2-2010'],
- ['ll', '14 feb. 2010'],
- ['lll', '14 feb. 2010 15:25'],
- ['llll', 'si. 14 feb. 2010 15:25']
+ ['L', '2010-02-14'],
+ ['LL', '14 février 2010'],
+ ['LLL', '14 février 2010 15:25'],
+ ['LLLL', 'dimanche 14 février 2010 15:25'],
+ ['l', '2010-2-14'],
+ ['ll', '14 févr. 2010'],
+ ['lll', '14 févr. 2010 15:25'],
+ ['llll', 'dim. 14 févr. 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
+
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1ste', '1ste');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2de', '2de');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3de', '3de');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4de', '4de');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5de', '5de');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6de', '6de');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7de', '7de');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8ste', '8ste');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9de', '9de');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10de', '10de');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1er', '1er');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2e', '2e');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3e', '3e');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4e', '4e');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5e', '5e');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6e', '6e');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7e', '7e');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8e', '8e');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9e', '9e');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10e', '10e');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11de', '11de');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12de', '12de');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13de', '13de');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14de', '14de');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15de', '15de');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16de', '16de');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17de', '17de');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18de', '18de');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19de', '19de');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20ste', '20ste');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11e', '11e');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12e', '12e');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13e', '13e');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14e', '14e');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15e', '15e');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16e', '16e');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17e', '17e');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18e', '18e');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19e', '19e');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20e', '20e');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21ste', '21ste');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22ste', '22ste');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23ste', '23ste');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24ste', '24ste');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25ste', '25ste');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26ste', '26ste');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27ste', '27ste');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28ste', '28ste');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29ste', '29ste');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30ste', '30ste');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21e', '21e');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22e', '22e');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23e', '23e');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24e', '24e');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25e', '25e');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26e', '26e');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27e', '27e');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28e', '28e');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29e', '29e');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30e', '30e');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31ste', '31ste');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31e', '31e');
});
test('format month', function (assert) {
- var expected = 'jannewaris jan._febrewaris feb._maart mrt._april apr._maaie mai_juny jun._july jul._augustus aug._septimber sep._oktober okt._novimber nov._desimber des.'.split('_'), i;
+ var i,
+ expected = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'snein si. Si_moandei mo. Mo_tiisdei ti. Ti_woansdei wo. Wo_tongersdei to. To_freed fr. Fr_sneon so. So'.split('_'), i;
+ var i,
+ expected = 'dimanche dim. Di_lundi lun. Lu_mardi mar. Ma_mercredi mer. Me_jeudi jeu. Je_vendredi ven. Ve_samedi sam. Sa'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'in pear sekonden', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ien minút', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ien minút', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuten', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuten', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ien oere', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ien oere', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 oeren', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 oeren', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 oeren', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ien dei', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ien dei', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagen', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ien dei', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagen', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagen', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ien moanne', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ien moanne', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ien moanne', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 moannen', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 moannen', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 moannen', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ien moanne', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 moannen', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ien jier', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 jierren', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ien jier', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 jierren', '5 years = 5 years');
- });
- test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'oer in pear sekonden', 'prefix');
- assert.equal(moment(0).from(30000), 'in pear sekonden lyn', 'suffix');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'quelques secondes', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'une minute', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'une minute', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutes', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutes', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'une heure', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'une heure', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 heures', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 heures', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 heures', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un jour', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un jour', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 jours', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un jour', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 jours', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 jours', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mois', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mois', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mois', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mois', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mois', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mois', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mois', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mois', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un an', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ans', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un an', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ans', '5 years = 5 years');
});
- test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'in pear sekonden lyn', 'now from now should display as in the past');
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'dans quelques secondes', 'prefix');
+ assert.equal(moment(0).from(30000), 'il y a quelques secondes', 'suffix');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'oer in pear sekonden', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'oer 5 dagen', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'dans quelques secondes', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'dans 5 jours', 'in 5 days');
});
- test('calendar day', function (assert) {
+ test('same day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'hjoed om 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'hjoed om 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'hjoed om 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'moarn om 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'hjoed om 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'juster om 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Aujourd\'hui à 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Aujourd\'hui à 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Aujourd\'hui à 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Demain à 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Aujourd\'hui à 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Hier à 02:00', 'yesterday at the same time');
});
- test('calendar next week', function (assert) {
+ test('same next week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days end of day');
}
});
- test('calendar last week', function (assert) {
+ test('same last week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[ôfrûne] dddd [om] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[ôfrûne] dddd [om] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[ôfrûne] dddd [om] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days end of day');
}
});
- test('calendar all else', function (assert) {
+ test('same all else', function (assert) {
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- test('month abbreviation', function (assert) {
- assert.equal(moment([2012, 5, 23]).format('D-MMM-YYYY'), '23-jun-2012', 'format month abbreviation surrounded by dashes should not include a dot');
- assert.equal(moment([2012, 5, 23]).format('D MMM YYYY'), '23 jun. 2012', 'format month abbreviation not surrounded by dashes should include a dot');
- });
-
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
});
- test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52ste', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1ste', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1ste', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2de', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2de', 'Jan 15 2012 should be week 2');
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1er', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1er', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2e', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2e', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3e', 'Jan 15 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('gl');
+ localeModule('fr-ch');
test('parse', function (assert) {
- var tests = 'Xaneiro Xan._Febreiro Feb._Marzo Mar._Abril Abr._Maio Mai._Xuño Xuñ._Xullo Xul._Agosto Ago._Setembro Set._Outubro Out._Novembro Nov._Decembro Dec.'.split('_'), i;
+ var i,
+ tests = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_');
+
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
+
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Domingo, Febreiro 14º 2010, 3:25:50 pm'],
- ['ddd, hA', 'Dom., 3PM'],
- ['M Mo MM MMMM MMM', '2 2º 02 Febreiro Feb.'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'dimanche, février 14e 2010, 3:25:50 pm'],
+ ['ddd, hA', 'dim., 3PM'],
+ ['M Mo MM MMMM MMM', '2 2e 02 février févr.'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14º 14'],
- ['d do dddd ddd dd', '0 0º Domingo Dom. Do'],
- ['DDD DDDo DDDD', '45 45º 045'],
- ['w wo ww', '7 7º 07'],
+ ['D Do DD', '14 14e 14'],
+ ['d do dddd ddd dd', '0 0e dimanche dim. Di'],
+ ['DDD DDDo DDDD', '45 45e 045'],
+ ['w wo ww', '6 6e 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45º day of the year'],
+ ['[the] DDDo [day of the year]', 'the 45e day of the year'],
['LTS', '15:25:50'],
- ['L', '14/02/2010'],
- ['LL', '14 Febreiro 2010'],
- ['LLL', '14 Febreiro 2010 15:25'],
- ['LLLL', 'Domingo 14 Febreiro 2010 15:25'],
- ['l', '14/2/2010'],
- ['ll', '14 Feb. 2010'],
- ['lll', '14 Feb. 2010 15:25'],
- ['llll', 'Dom. 14 Feb. 2010 15:25']
+ ['L', '14.02.2010'],
+ ['LL', '14 février 2010'],
+ ['LLL', '14 février 2010 15:25'],
+ ['LLLL', 'dimanche 14 février 2010 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14 févr. 2010'],
+ ['lll', '14 févr. 2010 15:25'],
+ ['llll', 'dim. 14 févr. 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
+
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1er', '1er');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2e', '2e');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3e', '3e');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4e', '4e');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5e', '5e');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6e', '6e');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7e', '7e');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8e', '8e');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9e', '9e');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10e', '10e');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11e', '11e');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12e', '12e');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13e', '13e');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14e', '14e');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15e', '15e');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16e', '16e');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17e', '17e');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18e', '18e');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19e', '19e');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20e', '20e');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21e', '21e');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22e', '22e');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23e', '23e');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24e', '24e');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25e', '25e');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26e', '26e');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27e', '27e');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28e', '28e');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29e', '29e');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30e', '30e');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31e', '31e');
});
test('format month', function (assert) {
- var expected = 'Xaneiro Xan._Febreiro Feb._Marzo Mar._Abril Abr._Maio Mai._Xuño Xuñ._Xullo Xul._Agosto Ago._Setembro Set._Outubro Out._Novembro Nov._Decembro Dec.'.split('_'), i;
+ var i,
+ expected = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'Domingo Dom. Do_Luns Lun. Lu_Martes Mar. Ma_Mércores Mér. Mé_Xoves Xov. Xo_Venres Ven. Ve_Sábado Sáb. Sá'.split('_'),
- i;
+ var i,
+ expected = 'dimanche dim. Di_lundi lun. Lu_mardi mar. Ma_mercredi mer. Me_jeudi jeu. Je_vendredi ven. Ve_samedi sam. Sa'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'uns segundos', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'un minuto', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'un minuto', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutos', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutos', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'unha hora', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'unha hora', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horas', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horas', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horas', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un día', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un día', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 días', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un día', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 días', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 días', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mes', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mes', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mes', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 meses', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 meses', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 meses', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mes', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 meses', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un ano', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 anos', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un ano', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 anos', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'quelques secondes', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'une minute', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'une minute', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutes', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutes', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'une heure', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'une heure', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 heures', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 heures', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 heures', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un jour', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un jour', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 jours', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un jour', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 jours', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 jours', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mois', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mois', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mois', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mois', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mois', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mois', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mois', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mois', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un an', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ans', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un an', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ans', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'nuns segundos', 'prefix');
- assert.equal(moment(0).from(30000), 'hai uns segundos', 'suffix');
- });
-
- test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'hai uns segundos', 'now from now should display as in the past');
+ assert.equal(moment(30000).from(0), 'dans quelques secondes', 'prefix');
+ assert.equal(moment(0).from(30000), 'il y a quelques secondes', 'suffix');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'nuns segundos', 'en unos segundos');
- assert.equal(moment().add({d: 5}).fromNow(), 'en 5 días', 'en 5 días');
+ assert.equal(moment().add({s: 30}).fromNow(), 'dans quelques secondes', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'dans 5 jours', 'in 5 days');
});
- test('calendar day', function (assert) {
+ test('same day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'hoxe ás 2:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'hoxe ás 2:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'hoxe ás 3:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'mañá ás 2:00', 'tomorrow at the same time');
- assert.equal(moment(a).add({d: 1, h : -1}).calendar(), 'mañá á 1:00', 'tomorrow minus 1 hour');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'hoxe á 1:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'onte á 2:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Aujourd\'hui à 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Aujourd\'hui à 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Aujourd\'hui à 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Demain à 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Aujourd\'hui à 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Hier à 02:00', 'yesterday at the same time');
});
- test('calendar next week', function (assert) {
+ test('same next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days end of day');
}
});
- test('calendar last week', function (assert) {
+ test('same last week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[o] dddd [pasado ' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[o] dddd [pasado ' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[o] dddd [pasado ' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days end of day');
}
});
- test('calendar all else', function (assert) {
+ test('same all else', function (assert) {
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- test('regression tests', function (assert) {
- var lastWeek = moment().subtract({d: 4}).hours(1);
- assert.equal(lastWeek.calendar(), lastWeek.format('[o] dddd [pasado a] LT'), '1 o\'clock bug');
- });
-
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
- });
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ });
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1º', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1º', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2º', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2º', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3º', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52e', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1er', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1er', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2e', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2e', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('he');
+ localeModule('fr');
test('parse', function (assert) {
- var tests = 'ינואר ינו׳_פברואר פבר׳_מרץ מרץ_אפריל אפר׳_מאי מאי_יוני יוני_יולי יולי_אוגוסט אוג׳_ספטמבר ספט׳_אוקטובר אוק׳_נובמבר נוב׳_דצמבר דצמ׳'.split('_'), i;
+ var tests = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_'),
+ i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'ראשון, פברואר 14 2010, 3:25:50 pm'],
- ['ddd, hA', 'א׳, 3PM'],
- ['M Mo MM MMMM MMM', '2 2 02 פברואר פבר׳'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'dimanche, février 14 2010, 3:25:50 pm'],
+ ['ddd, hA', 'dim., 3PM'],
+ ['M Mo MM MMMM MMM', '2 2 02 février févr.'],
['YYYY YY', '2010 10'],
['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 ראשון א׳ א'],
+ ['d do dddd ddd dd', '0 0 dimanche dim. Di'],
['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '8 8 08'],
+ ['w wo ww', '6 6 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['[the] DDDo [day of the year]', 'the 45 day of the year'],
['LTS', '15:25:50'],
['L', '14/02/2010'],
- ['LL', '14 בפברואר 2010'],
- ['LLL', '14 בפברואר 2010 15:25'],
- ['LLLL', 'ראשון, 14 בפברואר 2010 15:25'],
+ ['LL', '14 février 2010'],
+ ['LLL', '14 février 2010 15:25'],
+ ['LLLL', 'dimanche 14 février 2010 15:25'],
['l', '14/2/2010'],
- ['ll', '14 פבר׳ 2010'],
- ['lll', '14 פבר׳ 2010 15:25'],
- ['llll', 'א׳, 14 פבר׳ 2010 15:25']
+ ['ll', '14 févr. 2010'],
+ ['lll', '14 févr. 2010 15:25'],
+ ['llll', 'dim. 14 févr. 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1er', '1er');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ });
+
test('format month', function (assert) {
- var expected = 'ינואר ינו׳_פברואר פבר׳_מרץ מרץ_אפריל אפר׳_מאי מאי_יוני יוני_יולי יולי_אוגוסט אוג׳_ספטמבר ספט׳_אוקטובר אוק׳_נובמבר נוב׳_דצמבר דצמ׳'.split('_'), i;
+ var expected = 'janvier janv._février févr._mars mars_avril avr._mai mai_juin juin_juillet juil._août août_septembre sept._octobre oct._novembre nov._décembre déc.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'ראשון א׳ א|שני ב׳ ב|שלישי ג׳ ג|רביעי ד׳ ד|חמישי ה׳ ה|שישי ו׳ ו|שבת ש׳ ש'.split('|'), i;
+ var expected = 'dimanche dim. Di_lundi lun. Lu_mardi mar. Ma_mercredi mer. Me_jeudi jeu. Je_vendredi ven. Ve_samedi sam. Sa'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'מספר שניות', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'דקה', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'דקה', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 דקות', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 דקות', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'שעה', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'שעה', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), 'שעתיים', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 שעות', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 שעות', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'יום', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'יום', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), 'יומיים', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'יום', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 ימים', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 ימים', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'חודש', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'חודש', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'חודש', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), 'חודשיים', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), 'חודשיים', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 חודשים', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'חודש', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 חודשים', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'שנה', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), 'שנתיים', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 3699}), true), '10 שנים', '345 days = 10 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 7340}), true), '20 שנה', '548 days = 20 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'שנה', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 שנים', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'quelques secondes', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'une minute', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'une minute', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutes', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutes', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'une heure', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'une heure', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 heures', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 heures', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 heures', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un jour', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un jour', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 jours', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un jour', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 jours', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 jours', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mois', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mois', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mois', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mois', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mois', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mois', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mois', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mois', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un an', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ans', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un an', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ans', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'בעוד מספר שניות', 'prefix');
- assert.equal(moment(0).from(30000), 'לפני מספר שניות', 'suffix');
- });
-
- test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'לפני מספר שניות', 'now from now should display as in the past');
+ assert.equal(moment(30000).from(0), 'dans quelques secondes', 'prefix');
+ assert.equal(moment(0).from(30000), 'il y a quelques secondes', 'suffix');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'בעוד מספר שניות', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'בעוד 5 ימים', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'dans quelques secondes', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'dans 5 jours', 'in 5 days');
});
- test('calendar day', function (assert) {
+ test('same day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'היום ב־02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'היום ב־02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'היום ב־03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'מחר ב־02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'היום ב־01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'אתמול ב־02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Aujourd\'hui à 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Aujourd\'hui à 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Aujourd\'hui à 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Demain à 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Aujourd\'hui à 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Hier à 02:00', 'yesterday at the same time');
});
- test('calendar next week', function (assert) {
+ test('same next week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [בשעה] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [בשעה] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [בשעה] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [à] LT'), 'Today + ' + i + ' days end of day');
}
});
- test('calendar last week', function (assert) {
+ test('same last week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[ביום] dddd [האחרון בשעה] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[ביום] dddd [האחרון בשעה] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[ביום] dddd [האחרון בשעה] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [dernier à] LT'), 'Today - ' + i + ' days end of day');
}
});
- test('calendar all else', function (assert) {
+ test('same all else', function (assert) {
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
- test('weeks year starting sunday format', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1', 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2', 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 should be week 3');
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1er', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1er', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('hi');
+ localeModule('fy');
test('parse', function (assert) {
- var tests = 'जनवरी जन._फ़रवरी फ़र._मार्च मार्च_अप्रैल अप्रै._मई मई_जून जून_जुलाई जुल._अगस्त अग._सितम्बर सित._अक्टूबर अक्टू._नवम्बर नव._दिसम्बर दिस.'.split('_'), i;
+ var tests = 'jannewaris jan._febrewaris feb._maart mrt._april apr._maaie mai._juny jun._july jul._augustus aug._septimber sep._oktober okt._novimber nov._desimber des.'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, a h:mm:ss बजे', 'रविवार, १४ फ़रवरी २०१०, दोपहर ३:२५:५० बजे'],
- ['ddd, a h बजे', 'रवि, दोपहर ३ बजे'],
- ['M Mo MM MMMM MMM', '२ २ ०२ फ़रवरी फ़र.'],
- ['YYYY YY', '२०१० १०'],
- ['D Do DD', '१४ १४ १४'],
- ['d do dddd ddd dd', '० ० रविवार रवि र'],
- ['DDD DDDo DDDD', '४५ ४५ ०४५'],
- ['w wo ww', '८ ८ ०८'],
- ['h hh', '३ ०३'],
- ['H HH', '१५ १५'],
- ['m mm', '२५ २५'],
- ['s ss', '५० ५०'],
- ['a A', 'दोपहर दोपहर'],
- ['LTS', 'दोपहर ३:२५:५० बजे'],
- ['L', '१४/०२/२०१०'],
- ['LL', '१४ फ़रवरी २०१०'],
- ['LLL', '१४ फ़रवरी २०१०, दोपहर ३:२५ बजे'],
- ['LLLL', 'रविवार, १४ फ़रवरी २०१०, दोपहर ३:२५ बजे'],
- ['l', '१४/२/२०१०'],
- ['ll', '१४ फ़र. २०१०'],
- ['lll', '१४ फ़र. २०१०, दोपहर ३:२५ बजे'],
- ['llll', 'रवि, १४ फ़र. २०१०, दोपहर ३:२५ बजे']
+ ['dddd, MMMM Do YYYY, HH:mm:ss', 'snein, febrewaris 14de 2010, 15:25:50'],
+ ['ddd, HH', 'si., 15'],
+ ['M Mo MM MMMM MMM', '2 2de 02 febrewaris feb.'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14de 14'],
+ ['d do dddd ddd dd', '0 0de snein si. Si'],
+ ['DDD DDDo DDDD', '45 45ste 045'],
+ ['w wo ww', '6 6de 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45ste day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '14-02-2010'],
+ ['LL', '14 febrewaris 2010'],
+ ['LLL', '14 febrewaris 2010 15:25'],
+ ['LLLL', 'snein 14 febrewaris 2010 15:25'],
+ ['l', '14-2-2010'],
+ ['ll', '14 feb. 2010'],
+ ['lll', '14 feb. 2010 15:25'],
+ ['llll', 'si. 14 feb. 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '१', '१');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '२', '२');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '३', '३');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '४', '४');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '५', '५');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '६', '६');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '७', '७');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '८', '८');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '९', '९');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '१०', '१०');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1ste', '1ste');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2de', '2de');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3de', '3de');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4de', '4de');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5de', '5de');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6de', '6de');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7de', '7de');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8ste', '8ste');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9de', '9de');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10de', '10de');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '११', '११');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '१२', '१२');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '१३', '१३');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '१४', '१४');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '१५', '१५');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '१६', '१६');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '१७', '१७');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '१८', '१८');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '१९', '१९');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '२०', '२०');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11de', '11de');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12de', '12de');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13de', '13de');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14de', '14de');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15de', '15de');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16de', '16de');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17de', '17de');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18de', '18de');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19de', '19de');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20ste', '20ste');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '२१', '२१');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '२२', '२२');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '२३', '२३');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '२४', '२४');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '२५', '२५');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '२६', '२६');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '२७', '२७');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '२८', '२८');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '२९', '२९');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '३०', '३०');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21ste', '21ste');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22ste', '22ste');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23ste', '23ste');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24ste', '24ste');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25ste', '25ste');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26ste', '26ste');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27ste', '27ste');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28ste', '28ste');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29ste', '29ste');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30ste', '30ste');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '३१', '३१');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31ste', '31ste');
});
test('format month', function (assert) {
- var expected = 'जनवरी जन._फ़रवरी फ़र._मार्च मार्च_अप्रैल अप्रै._मई मई_जून जून_जुलाई जुल._अगस्त अग._सितम्बर सित._अक्टूबर अक्टू._नवम्बर नव._दिसम्बर दिस.'.split('_'), i;
+ var expected = 'jannewaris jan._febrewaris feb._maart mrt._april apr._maaie mai_juny jun._july jul._augustus aug._septimber sep._oktober okt._novimber nov._desimber des.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'रविवार रवि र_सोमवार सोम सो_मंगलवार मंगल मं_बुधवार बुध बु_गुरूवार गुरू गु_शुक्रवार शुक्र शु_शनिवार शनि श'.split('_'), i;
+ var expected = 'snein si. Si_moandei mo. Mo_tiisdei ti. Ti_woansdei wo. Wo_tongersdei to. To_freed fr. Fr_sneon so. So'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'कुछ ही क्षण', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'एक मिनट', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'एक मिनट', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '२ मिनट', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '४४ मिनट', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'एक घंटा', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'एक घंटा', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '२ घंटे', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '५ घंटे', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '२१ घंटे', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'एक दिन', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'एक दिन', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '२ दिन', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'एक दिन', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '५ दिन', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '२५ दिन', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'एक महीने', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'एक महीने', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'एक महीने', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '२ महीने', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '२ महीने', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '३ महीने', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'एक महीने', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '५ महीने', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'एक वर्ष', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '२ वर्ष', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'एक वर्ष', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '५ वर्ष', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'in pear sekonden', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ien minút', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ien minút', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuten', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuten', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ien oere', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ien oere', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 oeren', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 oeren', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 oeren', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ien dei', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ien dei', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagen', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ien dei', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagen', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagen', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ien moanne', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ien moanne', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ien moanne', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 moannen', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 moannen', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 moannen', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ien moanne', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 moannen', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ien jier', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 jierren', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ien jier', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 jierren', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'कुछ ही क्षण में', 'prefix');
- assert.equal(moment(0).from(30000), 'कुछ ही क्षण पहले', 'suffix');
+ assert.equal(moment(30000).from(0), 'oer in pear sekonden', 'prefix');
+ assert.equal(moment(0).from(30000), 'in pear sekonden lyn', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'कुछ ही क्षण पहले', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'in pear sekonden lyn', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'कुछ ही क्षण में', 'कुछ ही क्षण में');
- assert.equal(moment().add({d: 5}).fromNow(), '५ दिन में', '५ दिन में');
+ assert.equal(moment().add({s: 30}).fromNow(), 'oer in pear sekonden', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'oer 5 dagen', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'आज रात २:०० बजे', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'आज रात २:२५ बजे', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 3}).calendar(), 'आज सुबह ५:०० बजे', 'Now plus 3 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'कल रात २:०० बजे', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'आज रात १:०० बजे', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'कल रात २:०० बजे', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'hjoed om 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'hjoed om 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'hjoed om 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'moarn om 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'hjoed om 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'juster om 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
-
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[पिछले] dddd[,] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[ôfrûne] dddd [om] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[पिछले] dddd[,] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[ôfrûne] dddd [om] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[पिछले] dddd[,] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[ôfrûne] dddd [om] LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- test('meridiem invariant', function (assert) {
- assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'रात', 'before dawn');
- assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'सुबह', 'morning');
- assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'दोपहर', 'during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'शाम', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'शाम', 'late evening');
- assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'रात', 'night');
-
- assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'रात', 'before dawn');
- assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'सुबह', 'morning');
- assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'दोपहर', ' during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'शाम', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'शाम', 'late evening');
- assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'रात', 'night');
+ test('month abbreviation', function (assert) {
+ assert.equal(moment([2012, 5, 23]).format('D-MMM-YYYY'), '23-jun-2012', 'format month abbreviation surrounded by dashes should not include a dot');
+ assert.equal(moment([2012, 5, 23]).format('D MMM YYYY'), '23 jun. 2012', 'format month abbreviation not surrounded by dashes should include a dot');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '१ ०१ १', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '१ ०१ १', 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '२ ०२ २', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '२ ०२ २', 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '३ ०३ ३', 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52ste', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1ste', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1ste', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2de', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2de', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}
});
- test('meridiem', function (assert) {
- var h, m, t1, t2;
- for (h = 0; h < 24; ++h) {
- for (m = 0; m < 60; m += 15) {
- t1 = moment.utc([2000, 0, 1, h, m]);
- t2 = moment(t1.format('A h:mm'), 'A h:mm');
- assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
- 'meridiem at ' + t1.format('HH:mm'));
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
}
+ });
+ }
+
+ localeModule('gd');
+
+ var months = [
+ 'Am Faoilleach,Faoi',
+ 'An Gearran,Gear',
+ 'Am Màrt,Màrt',
+ 'An Giblean,Gibl',
+ 'An Cèitean,Cèit',
+ 'An t-Ògmhios,Ògmh',
+ 'An t-Iuchar,Iuch',
+ 'An Lùnastal,Lùn',
+ 'An t-Sultain,Sult',
+ 'An Dàmhair,Dàmh',
+ 'An t-Samhain,Samh',
+ 'An Dùbhlachd,Dùbh'
+ ];
+
+ test('parse', function (assert) {
+ function equalTest(monthName, monthFormat, monthNum) {
+ assert.equal(moment(monthName, monthFormat).month(), monthNum, monthName + ' should be month ' + monthNum + 1);
+ }
+
+ for (var i = 0; i < 12; i++) {
+ var testMonth = months[i].split(',');
+ equalTest(testMonth[0], 'MMM', i);
+ equalTest(testMonth[1], 'MMM', i);
+ equalTest(testMonth[0], 'MMMM', i);
+ equalTest(testMonth[1], 'MMMM', i);
+ equalTest(testMonth[0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(testMonth[1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(testMonth[0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(testMonth[1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Didòmhnaich, An Gearran 14mh 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Did, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2na 02 An Gearran Gear'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14mh 14'],
+ ['d do dddd ddd dd', '0 0mh Didòmhnaich Did Dò'],
+ ['DDD DDDo DDDD', '45 45mh 045'],
+ ['w wo ww', '6 6mh 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[an] DDDo [latha den bhliadhna]', 'an 45mh latha den bhliadhna'],
+ ['LTS', '15:25:50'],
+ ['L', '14/02/2010'],
+ ['LL', '14 An Gearran 2010'],
+ ['LLL', '14 An Gearran 2010 15:25'],
+ ['LLLL', 'Didòmhnaich, 14 An Gearran 2010 15:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 Gear 2010'],
+ ['lll', '14 Gear 2010 15:25'],
+ ['llll', 'Did, 14 Gear 2010 15:25']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1d', '1d');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2na', '2na');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3mh', '3mh');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4mh', '4mh');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5mh', '5mh');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6mh', '6mh');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7mh', '7mh');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8mh', '8mh');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9mh', '9mh');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10mh', '10mh');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11mh', '11mh');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12na', '12na');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13mh', '13mh');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14mh', '14mh');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15mh', '15mh');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16mh', '16mh');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17mh', '17mh');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18mh', '18mh');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19mh', '19mh');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20mh', '20mh');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21mh', '21mh');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22na', '22na');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23mh', '23mh');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24mh', '24mh');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25mh', '25mh');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26mh', '26mh');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27mh', '27mh');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28mh', '28mh');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29mh', '29mh');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30mh', '30mh');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31mh', '31mh');
+ });
+
+ test('format month', function (assert) {
+ var expected = months;
+ for (var i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM,MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var expected = ['Didòmhnaich Did Dò', 'Diluain Dil Lu', 'Dimàirt Dim Mà', 'Diciadain Dic Ci', 'Diardaoin Dia Ar', 'Dihaoine Dih Ha', 'Disathairne Dis Sa'];
+ for (var i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'beagan diogan', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'mionaid', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'mionaid', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 mionaidean', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 mionaidean', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'uair', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'uair', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 uairean', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 uairean', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 uairean', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'latha', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'latha', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 latha', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'latha', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 latha', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 latha', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mìos', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mìos', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mìos', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mìosan', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mìosan', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mìosan', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mìos', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mìosan', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'bliadhna', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 bliadhna', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'bliadhna', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 bliadhna', '5 years = 5 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'ann an beagan diogan', 'prefix');
+ assert.equal(moment(0).from(30000), 'bho chionn beagan diogan', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'bho chionn beagan diogan', 'now from now should display as in the past');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'ann an beagan diogan', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'ann an 5 latha', 'in 5 days');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'An-diugh aig 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'An-diugh aig 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'An-diugh aig 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'A-màireach aig 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'An-diugh aig 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'An-dè aig 02:00', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('dddd [aig] LT'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd [aig] LT'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd [aig] LT'), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('dddd [seo chaidh] [aig] LT'), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd [seo chaidh] [aig] LT'), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd [seo chaidh] [aig] LT'), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Faoi 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Faoi 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Faoi 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Faoi 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Faoi 15 2012 should be week 2');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Faoi 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Faoi 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Faoi 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Faoi 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Faoi 15 2007 should be week 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dùbh 31 2007 should be week 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Faoi 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Faoi 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Faoi 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Faoi 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Faoi 14 2008 should be week 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dùbh 30 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Faoi 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Faoi 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Faoi 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Faoi 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Faoi 13 2003 should be week 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dùbh 29 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Faoi 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Faoi 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Faoi 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Faoi 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Faoi 12 2009 should be week 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dùbh 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Faoi 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Faoi 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Faoi 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Faoi 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Faoi 11 2010 should be week 2');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dùbh 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Faoi 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Faoi 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Faoi 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Faoi 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Faoi 10 2011 should be week 2');
+ });
+
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52na', 'Faoi 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1d', 'Faoi 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1d', 'Faoi 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2na', 'Faoi 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2na', 'Faoi 15 2012 should be week 2');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
}
});
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('hr');
+ localeModule('gl');
test('parse', function (assert) {
- var tests = 'siječanj sij._veljača velj._ožujak ožu._travanj tra._svibanj svi._lipanj lip._srpanj srp._kolovoz kol._rujan ruj._listopad lis._studeni stu._prosinac pro.'.split('_'), i;
+ var tests = 'Xaneiro Xan._Febreiro Feb._Marzo Mar._Abril Abr._Maio Mai._Xuño Xuñ._Xullo Xul._Agosto Ago._Setembro Set._Outubro Out._Novembro Nov._Decembro Dec.'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, h:mm:ss a', 'nedjelja, 14. veljača 2010, 3:25:50 pm'],
- ['ddd, hA', 'ned., 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 veljača velj.'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Domingo, Febreiro 14º 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Dom., 3PM'],
+ ['M Mo MM MMMM MMM', '2 2º 02 Febreiro Feb.'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. nedjelja ned. ne'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '7 7. 07'],
+ ['D Do DD', '14 14º 14'],
+ ['d do dddd ddd dd', '0 0º Domingo Dom. Do'],
+ ['DDD DDDo DDDD', '45 45º 045'],
+ ['w wo ww', '7 7º 07'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['[the] DDDo [day of the year]', 'the 45º day of the year'],
['LTS', '15:25:50'],
- ['L', '14. 02. 2010'],
- ['LL', '14. veljača 2010'],
- ['LLL', '14. veljača 2010 15:25'],
- ['LLLL', 'nedjelja, 14. veljača 2010 15:25'],
- ['l', '14. 2. 2010'],
- ['ll', '14. velj. 2010'],
- ['lll', '14. velj. 2010 15:25'],
- ['llll', 'ned., 14. velj. 2010 15:25']
+ ['L', '14/02/2010'],
+ ['LL', '14 Febreiro 2010'],
+ ['LLL', '14 Febreiro 2010 15:25'],
+ ['LLLL', 'Domingo 14 Febreiro 2010 15:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 Feb. 2010'],
+ ['lll', '14 Feb. 2010 15:25'],
+ ['llll', 'Dom. 14 Feb. 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
});
test('format month', function (assert) {
- var expected = 'siječanj sij._veljača velj._ožujak ožu._travanj tra._svibanj svi._lipanj lip._srpanj srp._kolovoz kol._rujan ruj._listopad lis._studeni stu._prosinac pro.'.split('_'), i;
+ var expected = 'Xaneiro Xan._Febreiro Feb._Marzo Mar._Abril Abr._Maio Mai._Xuño Xuñ._Xullo Xul._Agosto Ago._Setembro Set._Outubro Out._Novembro Nov._Decembro Dec.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'nedjelja ned. ne_ponedjeljak pon. po_utorak uto. ut_srijeda sri. sr_četvrtak čet. če_petak pet. pe_subota sub. su'.split('_'), i;
+ var expected = 'Domingo Dom. Do_Luns Lun. Lu_Martes Mar. Ma_Mércores Mér. Mé_Xoves Xov. Xo_Venres Ven. Ve_Sábado Sáb. Sá'.split('_'),
+ i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'par sekundi', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'jedna minuta', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'jedna minuta', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minute', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuta', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'jedan sat', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'jedan sat', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 sata', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 sati', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 sati', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'dan', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'dan', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dana', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'dan', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dana', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dana', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mjesec', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mjesec', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mjesec', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mjeseca', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mjeseca', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mjeseca', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mjesec', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mjeseci', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'godinu', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 godine', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'godinu', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 godina', '5 years = 5 years');
+
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'uns segundos', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'un minuto', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'un minuto', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutos', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutos', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'unha hora', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'unha hora', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horas', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horas', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horas', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un día', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un día', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 días', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un día', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 días', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 días', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mes', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mes', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mes', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 meses', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 meses', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 meses', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mes', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 meses', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un ano', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 anos', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un ano', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 anos', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'za par sekundi', 'prefix');
- assert.equal(moment(0).from(30000), 'prije par sekundi', 'prefix');
+ assert.equal(moment(30000).from(0), 'nuns segundos', 'prefix');
+ assert.equal(moment(0).from(30000), 'hai uns segundos', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'prije par sekundi', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'hai uns segundos', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'za par sekundi', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'za 5 dana', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'nuns segundos', 'en unos segundos');
+ assert.equal(moment().add({d: 5}).fromNow(), 'en 5 días', 'en 5 días');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'danas u 2:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'danas u 2:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'danas u 3:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'sutra u 2:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'danas u 1:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'jučer u 2:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'hoxe ás 2:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'hoxe ás 2:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'hoxe ás 3:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'mañá ás 2:00', 'tomorrow at the same time');
+ assert.equal(moment(a).add({d: 1, h : -1}).calendar(), 'mañá á 1:00', 'tomorrow minus 1 hour');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'hoxe á 1:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'onte á 2:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
- function makeFormat(d) {
- switch (d.day()) {
- case 0:
- return '[u] [nedjelju] [u] LT';
- case 3:
- return '[u] [srijedu] [u] LT';
- case 6:
- return '[u] [subotu] [u] LT';
- case 1:
- case 2:
- case 4:
- case 5:
- return '[u] dddd [u] LT';
- }
- }
-
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
-
- function makeFormat(d) {
- switch (d.day()) {
- case 0:
- case 3:
- return '[prošlu] dddd [u] LT';
- case 6:
- return '[prošle] [subote] [u] LT';
- case 1:
- case 2:
- case 4:
- case 5:
- return '[prošli] dddd [u] LT';
- }
- }
-
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[o] dddd [pasado ' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[o] dddd [pasado ' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[o] dddd [pasado ' + ((m.hours() !== 1) ? 'ás' : 'a') + '] LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
+ test('regression tests', function (assert) {
+ var lastWeek = moment().subtract({d: 4}).hours(1);
+ assert.equal(lastWeek.calendar(), lastWeek.format('[o] dddd [pasado a] LT'), '1 o\'clock bug');
+ });
+
test('weeks year starting sunday', function (assert) {
assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1.', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1.', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2.', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2.', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3.', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1º', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1º', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2º', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2º', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3º', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('hu');
+ localeModule('he');
test('parse', function (assert) {
- var tests = 'január jan_február feb_március márc_április ápr_május máj_június jún_július júl_augusztus aug_szeptember szept_október okt_november nov_december dec'.split('_'),
- i;
+ var tests = 'ינואר ינו׳_פברואר פבר׳_מרץ מרץ_אפריל אפר׳_מאי מאי_יוני יוני_יולי יולי_אוגוסט אוג׳_ספטמבר ספט׳_אוקטובר אוק׳_נובמבר נוב׳_דצמבר דצמ׳'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, HH:mm:ss', 'vasárnap, február 14. 2010, 15:25:50'],
- ['ddd, HH', 'vas, 15'],
- ['M Mo MM MMMM MMM', '2 2. 02 február feb'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'ראשון, פברואר 14 2010, 3:25:50 pm'],
+ ['ddd, hA', 'א׳, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2 02 פברואר פבר׳'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. vasárnap vas v'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '7 7. 07'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 ראשון א׳ א'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '8 8 08'],
+ ['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['[az év] DDDo [napja]', 'az év 45. napja'],
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45 day of the year'],
['LTS', '15:25:50'],
- ['L', '2010.02.14.'],
- ['LL', '2010. február 14.'],
- ['LLL', '2010. február 14. 15:25'],
- ['LLLL', '2010. február 14., vasárnap 15:25'],
- ['l', '2010.2.14.'],
- ['ll', '2010. feb 14.'],
- ['lll', '2010. feb 14. 15:25'],
- ['llll', '2010. feb 14., vas 15:25']
+ ['L', '14/02/2010'],
+ ['LL', '14 בפברואר 2010'],
+ ['LLL', '14 בפברואר 2010 15:25'],
+ ['LLLL', 'ראשון, 14 בפברואר 2010 15:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 פבר׳ 2010'],
+ ['lll', '14 פבר׳ 2010 15:25'],
+ ['llll', 'א׳, 14 פבר׳ 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
- test('meridiem', function (assert) {
- assert.equal(moment([2011, 2, 23, 0, 0]).format('a'), 'de', 'am');
- assert.equal(moment([2011, 2, 23, 11, 59]).format('a'), 'de', 'am');
- assert.equal(moment([2011, 2, 23, 12, 0]).format('a'), 'du', 'pm');
- assert.equal(moment([2011, 2, 23, 23, 59]).format('a'), 'du', 'pm');
-
- assert.equal(moment([2011, 2, 23, 0, 0]).format('A'), 'DE', 'AM');
- assert.equal(moment([2011, 2, 23, 11, 59]).format('A'), 'DE', 'AM');
- assert.equal(moment([2011, 2, 23, 12, 0]).format('A'), 'DU', 'PM');
- assert.equal(moment([2011, 2, 23, 23, 59]).format('A'), 'DU', 'PM');
- });
-
- test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
-
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
-
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
-
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
- });
-
test('format month', function (assert) {
- var expected = 'január jan_február feb_március márc_április ápr_május máj_június jún_július júl_augusztus aug_szeptember szept_október okt_november nov_december dec'.split('_'),
- i;
+ var expected = 'ינואר ינו׳_פברואר פבר׳_מרץ מרץ_אפריל אפר׳_מאי מאי_יוני יוני_יולי יולי_אוגוסט אוג׳_ספטמבר ספט׳_אוקטובר אוק׳_נובמבר נוב׳_דצמבר דצמ׳'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'vasárnap vas_hétfő hét_kedd kedd_szerda sze_csütörtök csüt_péntek pén_szombat szo'.split('_'),
- i;
+ var expected = 'ראשון א׳ א|שני ב׳ ב|שלישי ג׳ ג|רביעי ד׳ ד|חמישי ה׳ ה|שישי ו׳ ו|שבת ש׳ ש'.split('|'), i;
for (i = 0; i < expected.length; i++) {
- assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd'), expected[i], expected[i]);
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
});
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'néhány másodperc', '44 másodperc = néhány másodperc');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'egy perc', '45 másodperc = egy perc');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'egy perc', '89 másodperc = egy perc');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 perc', '90 másodperc = 2 perc');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 perc', '44 perc = 44 perc');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'egy óra', '45 perc = egy óra');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'egy óra', '89 perc = egy óra');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 óra', '90 perc = 2 óra');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 óra', '5 óra = 5 óra');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 óra', '21 óra = 21 óra');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'egy nap', '22 óra = egy nap');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'egy nap', '35 óra = egy nap');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 nap', '36 óra = 2 nap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'egy nap', '1 nap = egy nap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 nap', '5 nap = 5 nap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 nap', '25 nap = 25 nap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'egy hónap', '26 nap = egy hónap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'egy hónap', '30 nap = egy hónap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'egy hónap', '45 nap = egy hónap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 hónap', '46 nap = 2 hónap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 hónap', '75 nap = 2 hónap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 hónap', '76 nap = 3 hónap');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'egy hónap', '1 hónap = egy hónap');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 hónap', '5 hónap = 5 hónap');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'egy év', '345 nap = egy év');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 év', '548 nap = 2 év');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'egy év', '1 év = egy év');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 év', '5 év = 5 év');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'מספר שניות', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'דקה', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'דקה', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 דקות', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 דקות', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'שעה', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'שעה', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), 'שעתיים', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 שעות', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 שעות', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'יום', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'יום', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), 'יומיים', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'יום', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 ימים', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 ימים', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'חודש', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'חודש', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'חודש', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), 'חודשיים', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), 'חודשיים', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 חודשים', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'חודש', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 חודשים', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'שנה', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), 'שנתיים', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 3699}), true), '10 שנים', '345 days = 10 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 7340}), true), '20 שנה', '548 days = 20 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'שנה', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 שנים', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'néhány másodperc múlva', 'prefix');
- assert.equal(moment(0).from(30000), 'néhány másodperce', 'suffix');
+ assert.equal(moment(30000).from(0), 'בעוד מספר שניות', 'prefix');
+ assert.equal(moment(0).from(30000), 'לפני מספר שניות', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'néhány másodperce', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'לפני מספר שניות', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'néhány másodperc múlva', 'néhány másodperc múlva');
- assert.equal(moment().add({d: 5}).fromNow(), '5 nap múlva', '5 nap múlva');
+ assert.equal(moment().add({s: 30}).fromNow(), 'בעוד מספר שניות', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'בעוד 5 ימים', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'ma 2:00-kor', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'ma 2:25-kor', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'ma 3:00-kor', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'holnap 2:00-kor', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'ma 1:00-kor', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'tegnap 2:00-kor', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'היום ב־02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'היום ב־02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'היום ב־03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'מחר ב־02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'היום ב־01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'אתמול ב־02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
- var i, m, days = 'vasárnap_hétfőn_kedden_szerdán_csütörtökön_pénteken_szombaton'.split('_');
+ var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('[' + days[m.day()] + '] LT[-kor]'), 'today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [בשעה] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[' + days[m.day()] + '] LT[-kor]'), 'today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [בשעה] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[' + days[m.day()] + '] LT[-kor]'), 'today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [בשעה] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
- var i, m, days = 'vasárnap_hétfőn_kedden_szerdán_csütörtökön_pénteken_szombaton'.split('_');
-
+ var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[múlt ' + days[m.day()] + '] LT[-kor]'), 'today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[ביום] dddd [האחרון בשעה] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[múlt ' + days[m.day()] + '] LT[-kor]'), 'today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[ביום] dddd [האחרון בשעה] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[múlt ' + days[m.day()] + '] LT[-kor]'), 'today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[ביום] dddd [האחרון בשעה] LT'), 'Today - ' + i + ' days end of day');
}
});
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), 'egy héte');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'egy hét múlva');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 hete');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '2 hét múlva');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
});
- test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1.', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1.', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2.', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2.', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3.', 'Jan 9 2012 should be week 3');
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('hy-am');
+ localeModule('hi');
test('parse', function (assert) {
- var tests = 'հունվար հնվ_փետրվար փտր_մարտ մրտ_ապրիլ ապր_մայիս մյս_հունիս հնս_հուլիս հլս_օգոստոս օգս_սեպտեմբեր սպտ_հոկտեմբեր հկտ_նոյեմբեր նմբ_դեկտեմբեր դկտ'.split('_'), i;
+ var tests = 'जनवरी जन._फ़रवरी फ़र._मार्च मार्च_अप्रैल अप्रै._मई मई_जून जून_जुलाई जुल._अगस्त अग._सितम्बर सित._अक्टूबर अक्टू._नवम्बर नव._दिसम्बर दिस.'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
}
});
- test('parse exceptional case', function (assert) {
- assert.equal(moment('11 մայիսի 1989', ['DD MMMM YYYY']).format('DD-MM-YYYY'), '11-05-1989');
- });
-
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, HH:mm:ss', 'կիրակի, 14 փետրվարի 2010, 15:25:50'],
- ['ddd, h A', 'կրկ, 3 ցերեկվա'],
- ['M Mo MM MMMM MMM', '2 2 02 փետրվար փտր'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 կիրակի կրկ կրկ'],
- ['DDD DDDo DDDD', '45 45-րդ 045'],
- ['w wo ww', '7 7-րդ 07'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'ցերեկվա ցերեկվա'],
- ['[տարվա] DDDo [օրը]', 'տարվա 45-րդ օրը'],
- ['LTS', '15:25:50'],
- ['L', '14.02.2010'],
- ['LL', '14 փետրվարի 2010 թ.'],
- ['LLL', '14 փետրվարի 2010 թ., 15:25'],
- ['LLLL', 'կիրակի, 14 փետրվարի 2010 թ., 15:25'],
- ['l', '14.2.2010'],
- ['ll', '14 փտր 2010 թ.'],
- ['lll', '14 փտր 2010 թ., 15:25'],
- ['llll', 'կրկ, 14 փտր 2010 թ., 15:25']
+ ['dddd, Do MMMM YYYY, a h:mm:ss बजे', 'रविवार, १४ फ़रवरी २०१०, दोपहर ३:२५:५० बजे'],
+ ['ddd, a h बजे', 'रवि, दोपहर ३ बजे'],
+ ['M Mo MM MMMM MMM', '२ २ ०२ फ़रवरी फ़र.'],
+ ['YYYY YY', '२०१० १०'],
+ ['D Do DD', '१४ १४ १४'],
+ ['d do dddd ddd dd', '० ० रविवार रवि र'],
+ ['DDD DDDo DDDD', '४५ ४५ ०४५'],
+ ['w wo ww', '८ ८ ०८'],
+ ['h hh', '३ ०३'],
+ ['H HH', '१५ १५'],
+ ['m mm', '२५ २५'],
+ ['s ss', '५० ५०'],
+ ['a A', 'दोपहर दोपहर'],
+ ['LTS', 'दोपहर ३:२५:५० बजे'],
+ ['L', '१४/०२/२०१०'],
+ ['LL', '१४ फ़रवरी २०१०'],
+ ['LLL', '१४ फ़रवरी २०१०, दोपहर ३:२५ बजे'],
+ ['LLLL', 'रविवार, १४ फ़रवरी २०१०, दोपहर ३:२५ बजे'],
+ ['l', '१४/२/२०१०'],
+ ['ll', '१४ फ़र. २०१०'],
+ ['lll', '१४ फ़र. २०१०, दोपहर ३:२५ बजे'],
+ ['llll', 'रवि, १४ फ़र. २०१०, दोपहर ३:२५ बजे']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
- test('format meridiem', function (assert) {
- assert.equal(moment([2012, 11, 28, 0, 0]).format('A'), 'գիշերվա', 'night');
- assert.equal(moment([2012, 11, 28, 3, 59]).format('A'), 'գիշերվա', 'night');
- assert.equal(moment([2012, 11, 28, 4, 0]).format('A'), 'առավոտվա', 'morning');
- assert.equal(moment([2012, 11, 28, 11, 59]).format('A'), 'առավոտվա', 'morning');
- assert.equal(moment([2012, 11, 28, 12, 0]).format('A'), 'ցերեկվա', 'afternoon');
- assert.equal(moment([2012, 11, 28, 16, 59]).format('A'), 'ցերեկվա', 'afternoon');
- assert.equal(moment([2012, 11, 28, 17, 0]).format('A'), 'երեկոյան', 'evening');
- assert.equal(moment([2012, 11, 28, 23, 59]).format('A'), 'երեկոյան', 'evening');
- });
-
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-ին', '1-ին');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2-րդ', '2-րդ');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3-րդ', '3-րդ');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4-րդ', '4-րդ');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5-րդ', '5-րդ');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6-րդ', '6-րդ');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7-րդ', '7-րդ');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8-րդ', '8-րդ');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9-րդ', '9-րդ');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10-րդ', '10-րդ');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '१', '१');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '२', '२');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '३', '३');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '४', '४');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '५', '५');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '६', '६');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '७', '७');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '८', '८');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '९', '९');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '१०', '१०');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11-րդ', '11-րդ');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12-րդ', '12-րդ');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13-րդ', '13-րդ');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14-րդ', '14-րդ');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15-րդ', '15-րդ');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16-րդ', '16-րդ');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17-րդ', '17-րդ');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18-րդ', '18-րդ');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19-րդ', '19-րդ');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20-րդ', '20-րդ');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '११', '११');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '१२', '१२');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '१३', '१३');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '१४', '१४');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '१५', '१५');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '१६', '१६');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '१७', '१७');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '१८', '१८');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '१९', '१९');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '२०', '२०');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-րդ', '21-րդ');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-րդ', '22-րդ');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-րդ', '23-րդ');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-րդ', '24-րդ');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-րդ', '25-րդ');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-րդ', '26-րդ');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-րդ', '27-րդ');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-րդ', '28-րդ');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-րդ', '29-րդ');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-րդ', '30-րդ');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '२१', '२१');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '२२', '२२');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '२३', '२३');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '२४', '२४');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '२५', '२५');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '२६', '२६');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '२७', '२७');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '२८', '२८');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '२९', '२९');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '३०', '३०');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31-րդ', '31-րդ');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '३१', '३१');
});
test('format month', function (assert) {
- var expected = 'հունվար հնվ_փետրվար փտր_մարտ մրտ_ապրիլ ապր_մայիս մյս_հունիս հնս_հուլիս հլս_օգոստոս օգս_սեպտեմբեր սպտ_հոկտեմբեր հկտ_նոյեմբեր նմբ_դեկտեմբեր դկտ'.split('_'), i;
+ var expected = 'जनवरी जन._फ़रवरी फ़र._मार्च मार्च_अप्रैल अप्रै._मई मई_जून जून_जुलाई जुल._अगस्त अग._सितम्बर सित._अक्टूबर अक्टू._नवम्बर नव._दिसम्बर दिस.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
- test('format month case', function (assert) {
- var months = {
- 'nominative': 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split('_'),
- 'accusative': 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split('_')
- }, i;
- for (i = 0; i < 12; i++) {
- assert.equal(moment([2011, i, 1]).format('D MMMM'), '1 ' + months.accusative[i], '1 ' + months.accusative[i]);
- assert.equal(moment([2011, i, 1]).format('MMMM'), months.nominative[i], '1 ' + months.nominative[i]);
+ test('format week', function (assert) {
+ var expected = 'रविवार रवि र_सोमवार सोम सो_मंगलवार मंगल मं_बुधवार बुध बु_गुरूवार गुरू गु_शुक्रवार शुक्र शु_शनिवार शनि श'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
});
- test('format month short case', function (assert) {
- var monthsShort = {
- 'nominative': 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),
- 'accusative': 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_')
- }, i;
- for (i = 0; i < 12; i++) {
- assert.equal(moment([2011, i, 1]).format('D MMM'), '1 ' + monthsShort.accusative[i], '1 ' + monthsShort.accusative[i]);
- assert.equal(moment([2011, i, 1]).format('MMM'), monthsShort.nominative[i], '1 ' + monthsShort.nominative[i]);
- }
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'कुछ ही क्षण', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'एक मिनट', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'एक मिनट', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '२ मिनट', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '४४ मिनट', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'एक घंटा', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'एक घंटा', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '२ घंटे', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '५ घंटे', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '२१ घंटे', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'एक दिन', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'एक दिन', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '२ दिन', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'एक दिन', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '५ दिन', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '२५ दिन', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'एक महीने', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'एक महीने', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'एक महीने', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '२ महीने', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '२ महीने', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '३ महीने', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'एक महीने', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '५ महीने', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'एक वर्ष', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '२ वर्ष', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'एक वर्ष', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '५ वर्ष', '5 years = 5 years');
});
- test('format month case with escaped symbols', function (assert) {
- var months = {
- 'nominative': 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split('_'),
- 'accusative': 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split('_')
- }, i;
- for (i = 0; i < 12; i++) {
- assert.equal(moment([2013, i, 1]).format('D[] MMMM'), '1 ' + months.accusative[i], '1 ' + months.accusative[i]);
- assert.equal(moment([2013, i, 1]).format('[<i>]D[</i>] [<b>]MMMM[</b>]'), '<i>1</i> <b>' + months.accusative[i] + '</b>', '1 <b>' + months.accusative[i] + '</b>');
- assert.equal(moment([2013, i, 1]).format('D[-ին օրը] MMMM'), '1-ին օրը ' + months.accusative[i], '1-ին օրը ' + months.accusative[i]);
- assert.equal(moment([2013, i, 1]).format('D, MMMM'), '1, ' + months.nominative[i], '1, ' + months.nominative[i]);
- }
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'कुछ ही क्षण में', 'prefix');
+ assert.equal(moment(0).from(30000), 'कुछ ही क्षण पहले', 'suffix');
});
- test('format month short case with escaped symbols', function (assert) {
- var monthsShort = {
- 'nominative': 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),
- 'accusative': 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_')
- }, i;
- for (i = 0; i < 12; i++) {
- assert.equal(moment([2013, i, 1]).format('D[] MMM'), '1 ' + monthsShort.accusative[i], '1 ' + monthsShort.accusative[i]);
- assert.equal(moment([2013, i, 1]).format('[<i>]D[</i>] [<b>]MMM[</b>]'), '<i>1</i> <b>' + monthsShort.accusative[i] + '</b>', '1 <b>' + monthsShort.accusative[i] + '</b>');
- assert.equal(moment([2013, i, 1]).format('D[-ին օրը] MMM'), '1-ին օրը ' + monthsShort.accusative[i], '1-ին օրը ' + monthsShort.accusative[i]);
- assert.equal(moment([2013, i, 1]).format('D, MMM'), '1, ' + monthsShort.nominative[i], '1, ' + monthsShort.nominative[i]);
- }
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'कुछ ही क्षण पहले', 'now from now should display as in the past');
});
- test('format week', function (assert) {
- var expected = 'կիրակի կրկ կրկ_երկուշաբթի երկ երկ_երեքշաբթի երք երք_չորեքշաբթի չրք չրք_հինգշաբթի հնգ հնգ_ուրբաթ ուրբ ուրբ_շաբաթ շբթ շբթ'.split('_'), i;
- for (i = 0; i < expected.length; i++) {
- assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
- }
- });
-
- test('from', function (assert) {
- var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'մի քանի վայրկյան', '44 seconds = seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'րոպե', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'րոպե', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 րոպե', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 րոպե', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ժամ', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ժամ', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ժամ', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ժամ', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 ժամ', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'օր', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'օր', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 օր', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'օր', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 օր', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 11}), true), '11 օր', '11 days = 11 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 21}), true), '21 օր', '21 days = 21 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 օր', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ամիս', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ամիս', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ամիս', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 ամիս', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 ամիս', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 ամիս', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ամիս', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 ամիս', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'տարի', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 տարի', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'տարի', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 տարի', '5 years = 5 years');
- });
-
- test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'մի քանի վայրկյան հետո', 'prefix');
- assert.equal(moment(0).from(30000), 'մի քանի վայրկյան առաջ', 'suffix');
- });
-
- test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'մի քանի վայրկյան հետո', 'in seconds');
- assert.equal(moment().add({d: 5}).fromNow(), '5 օր հետո', 'in 5 days');
- });
-
- test('calendar day', function (assert) {
- var a = moment().hours(2).minutes(0).seconds(0);
-
- assert.equal(moment(a).calendar(), 'այսօր 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'այսօր 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'այսօր 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'վաղը 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'այսօր 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'երեկ 02:00', 'yesterday at the same time');
- });
-
- test('calendar next week', function (assert) {
- var i, m;
- function makeFormat(d) {
- return 'dddd [օրը ժամը] LT';
- }
-
- for (i = 2; i < 7; i++) {
- m = moment().add({d: i});
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days current time');
- m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days beginning of day');
- m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days end of day');
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'कुछ ही क्षण में', 'कुछ ही क्षण में');
+ assert.equal(moment().add({d: 5}).fromNow(), '५ दिन में', '५ दिन में');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'आज रात २:०० बजे', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'आज रात २:२५ बजे', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 3}).calendar(), 'आज सुबह ५:०० बजे', 'Now plus 3 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'कल रात २:०० बजे', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'आज रात १:०० बजे', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'कल रात २:०० बजे', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
- function makeFormat(d) {
- return '[անցած] dddd [օրը ժամը] LT';
- }
-
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[पिछले] dddd[,] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[पिछले] dddd[,] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[पिछले] dddd[,] LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
+ test('meridiem invariant', function (assert) {
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'रात', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'सुबह', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'दोपहर', 'during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'शाम', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'शाम', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'रात', 'night');
+
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'रात', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'सुबह', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'दोपहर', ' during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'शाम', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'शाम', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'रात', 'night');
+ });
+
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1-ին', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1-ին', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2-րդ', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2-րդ', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3-րդ', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '१ ०१ १', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '१ ०१ १', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '२ ०२ २', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '२ ०२ २', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '३ ०३ ३', 'Jan 15 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}
});
+ test('meridiem', function (assert) {
+ var h, m, t1, t2;
+ for (h = 0; h < 24; ++h) {
+ for (m = 0; m < 60; m += 15) {
+ t1 = moment.utc([2000, 0, 1, h, m]);
+ t2 = moment(t1.format('A h:mm'), 'A h:mm');
+ assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
+ 'meridiem at ' + t1.format('HH:mm'));
+ }
+ }
+ });
+
test('strict ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('id');
+ localeModule('hr');
test('parse', function (assert) {
- var tests = 'Januari Jan_Februari Feb_Maret Mar_April Apr_Mei Mei_Juni Jun_Juli Jul_Agustus Ags_September Sep_Oktober Okt_November Nov_Desember Des'.split('_'), i;
+ var tests = 'siječanj sij._veljača velj._ožujak ožu._travanj tra._svibanj svi._lipanj lip._srpanj srp._kolovoz kol._rujan ruj._listopad lis._studeni stu._prosinac pro.'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Minggu, Februari 14 2010, 3:25:50 sore'],
- ['ddd, hA', 'Min, 3sore'],
- ['M Mo MM MMMM MMM', '2 2 02 Februari Feb'],
+ ['dddd, Do MMMM YYYY, h:mm:ss a', 'nedjelja, 14. veljače 2010, 3:25:50 pm'],
+ ['ddd, hA', 'ned., 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 veljača velj.'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 Minggu Min Mg'],
- ['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '7 7 07'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. nedjelja ned. ne'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '7 7. 07'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'sore sore'],
- ['[the] DDDo [day of the year]', 'the 45 day of the year'],
- ['LTS', '15.25.50'],
- ['L', '14/02/2010'],
- ['LL', '14 Februari 2010'],
- ['LLL', '14 Februari 2010 pukul 15.25'],
- ['LLLL', 'Minggu, 14 Februari 2010 pukul 15.25'],
- ['l', '14/2/2010'],
- ['ll', '14 Feb 2010'],
- ['lll', '14 Feb 2010 pukul 15.25'],
- ['llll', 'Min, 14 Feb 2010 pukul 15.25']
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '14. 02. 2010'],
+ ['LL', '14. veljača 2010'],
+ ['LLL', '14. veljača 2010 15:25'],
+ ['LLLL', 'nedjelja, 14. veljača 2010 15:25'],
+ ['l', '14. 2. 2010'],
+ ['ll', '14. velj. 2010'],
+ ['lll', '14. velj. 2010 15:25'],
+ ['llll', 'ned., 14. velj. 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ });
+
test('format month', function (assert) {
- var expected = 'Januari Jan_Februari Feb_Maret Mar_April Apr_Mei Mei_Juni Jun_Juli Jul_Agustus Ags_September Sep_Oktober Okt_November Nov_Desember Des'.split('_'), i;
+ var expected = 'siječanj sij._veljača velj._ožujak ožu._travanj tra._svibanj svi._lipanj lip._srpanj srp._kolovoz kol._rujan ruj._listopad lis._studeni stu._prosinac pro.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'Minggu Min Mg_Senin Sen Sn_Selasa Sel Sl_Rabu Rab Rb_Kamis Kam Km_Jumat Jum Jm_Sabtu Sab Sb'.split('_'), i;
+ var expected = 'nedjelja ned. ne_ponedjeljak pon. po_utorak uto. ut_srijeda sri. sr_četvrtak čet. če_petak pet. pe_subota sub. su'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'beberapa detik', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'semenit', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'semenit', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 menit', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 menit', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'sejam', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'sejam', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 jam', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 jam', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 jam', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'sehari', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'sehari', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 hari', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'sehari', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 hari', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 hari', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'sebulan', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'sebulan', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'sebulan', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 bulan', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 bulan', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 bulan', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'sebulan', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 bulan', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'setahun', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 tahun', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'setahun', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 tahun', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'par sekundi', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'jedna minuta', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'jedna minuta', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minute', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuta', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'jedan sat', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'jedan sat', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 sata', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 sati', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 sati', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'dan', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'dan', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dana', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'dan', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dana', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dana', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mjesec', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mjesec', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mjesec', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mjeseca', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mjeseca', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mjeseca', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mjesec', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mjeseci', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'godinu', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 godine', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'godinu', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 godina', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'dalam beberapa detik', 'prefix');
- assert.equal(moment(0).from(30000), 'beberapa detik yang lalu', 'suffix');
+ assert.equal(moment(30000).from(0), 'za par sekundi', 'prefix');
+ assert.equal(moment(0).from(30000), 'prije par sekundi', 'prefix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'beberapa detik yang lalu', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'prije par sekundi', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'dalam beberapa detik', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'dalam 5 hari', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'za par sekundi', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'za 5 dana', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Hari ini pukul 02.00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Hari ini pukul 02.25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Hari ini pukul 03.00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Besok pukul 02.00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hari ini pukul 01.00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Kemarin pukul 02.00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'danas u 2:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'danas u 2:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'danas u 3:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'sutra u 2:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'danas u 1:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'jučer u 2:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
+
+ function makeFormat(d) {
+ switch (d.day()) {
+ case 0:
+ return '[u] [nedjelju] [u] LT';
+ case 3:
+ return '[u] [srijedu] [u] LT';
+ case 6:
+ return '[u] [subotu] [u] LT';
+ case 1:
+ case 2:
+ case 4:
+ case 5:
+ return '[u] dddd [u] LT';
+ }
+ }
+
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
+
+ function makeFormat(d) {
+ switch (d.day()) {
+ case 0:
+ case 3:
+ return '[prošlu] dddd [u] LT';
+ case 6:
+ return '[prošle] [subote] [u] LT';
+ case 1:
+ case 2:
+ case 4:
+ case 5:
+ return '[prošli] dddd [u] LT';
+ }
+ }
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('dddd [lalu pukul] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [lalu pukul] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [lalu pukul] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1.', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1.', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2.', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2.', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3.', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}
});
- test('meridiem invariant', function (assert) {
- var h, m, t1, t2;
- for (h = 0; h < 24; ++h) {
- for (m = 0; m < 60; m += 15) {
- t1 = moment.utc([2000, 0, 1, h, m]);
- t2 = moment(t1.format('A h:mm'), 'A h:mm');
- assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
- 'meridiem at ' + t1.format('HH:mm'));
- }
- }
- });
-
test('strict ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('is');
+ localeModule('hu');
test('parse', function (assert) {
- var tests = 'janúar jan_febrúar feb_mars mar_apríl apr_maí maí_júní jún_júlí júl_ágúst ágú_september sep_október okt_nóvember nóv_desember des'.split('_'), i;
+ var tests = 'január jan_február feb_március márc_április ápr_május máj_június jún_július júl_augusztus aug_szeptember szept_október okt_november nov_december dec'.split('_'),
+ i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, h:mm:ss a', 'sunnudagur, 14. febrúar 2010, 3:25:50 pm'],
- ['ddd, hA', 'sun, 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 febrúar feb'],
+ ['dddd, MMMM Do YYYY, HH:mm:ss', 'vasárnap, február 14. 2010, 15:25:50'],
+ ['ddd, HH', 'vas, 15'],
+ ['M Mo MM MMMM MMM', '2 2. 02 február feb'],
['YYYY YY', '2010 10'],
['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. sunnudagur sun Su'],
+ ['d do dddd ddd dd', '0 0. vasárnap vas v'],
['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '6 6. 06'],
- ['h hh', '3 03'],
+ ['w wo ww', '7 7. 07'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['[az év] DDDo [napja]', 'az év 45. napja'],
['LTS', '15:25:50'],
- ['L', '14/02/2010'],
- ['LL', '14. febrúar 2010'],
- ['LLL', '14. febrúar 2010 kl. 15:25'],
- ['LLLL', 'sunnudagur, 14. febrúar 2010 kl. 15:25'],
- ['l', '14/2/2010'],
- ['ll', '14. feb 2010'],
- ['lll', '14. feb 2010 kl. 15:25'],
- ['llll', 'sun, 14. feb 2010 kl. 15:25']
+ ['L', '2010.02.14.'],
+ ['LL', '2010. február 14.'],
+ ['LLL', '2010. február 14. 15:25'],
+ ['LLLL', '2010. február 14., vasárnap 15:25'],
+ ['l', '2010.2.14.'],
+ ['ll', '2010. feb 14.'],
+ ['lll', '2010. feb 14. 15:25'],
+ ['llll', '2010. feb 14., vas 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
+ test('meridiem', function (assert) {
+ assert.equal(moment([2011, 2, 23, 0, 0]).format('a'), 'de', 'am');
+ assert.equal(moment([2011, 2, 23, 11, 59]).format('a'), 'de', 'am');
+ assert.equal(moment([2011, 2, 23, 12, 0]).format('a'), 'du', 'pm');
+ assert.equal(moment([2011, 2, 23, 23, 59]).format('a'), 'du', 'pm');
+
+ assert.equal(moment([2011, 2, 23, 0, 0]).format('A'), 'DE', 'AM');
+ assert.equal(moment([2011, 2, 23, 11, 59]).format('A'), 'DE', 'AM');
+ assert.equal(moment([2011, 2, 23, 12, 0]).format('A'), 'DU', 'PM');
+ assert.equal(moment([2011, 2, 23, 23, 59]).format('A'), 'DU', 'PM');
+ });
+
test('format ordinal', function (assert) {
assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
});
test('format month', function (assert) {
- var expected = 'janúar jan_febrúar feb_mars mar_apríl apr_maí maí_júní jún_júlí júl_ágúst ágú_september sep_október okt_nóvember nóv_desember des'.split('_'), i;
+ var expected = 'január jan_február feb_március márc_április ápr_május máj_június jún_július júl_augusztus aug_szeptember szept_október okt_november nov_december dec'.split('_'),
+ i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'sunnudagur sun Su_mánudagur mán Má_þriðjudagur þri Þr_miðvikudagur mið Mi_fimmtudagur fim Fi_föstudagur fös Fö_laugardagur lau La'.split('_'), i;
+ var expected = 'vasárnap vas_hétfő hét_kedd kedd_szerda sze_csütörtök csüt_péntek pén_szombat szo'.split('_'),
+ i;
for (i = 0; i < expected.length; i++) {
- assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd'), expected[i], expected[i]);
}
});
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'nokkrar sekúndur', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'mínúta', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'mínúta', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 mínútur', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 mínútur', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 21}), true), '21 mínúta', '21 minutes = 21 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'klukkustund', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'klukkustund', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 klukkustundir', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 klukkustundir', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 klukkustund', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'dagur', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'dagur', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagar', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'dagur', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagar', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagar', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 11}), true), '11 dagar', '11 days = 11 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 21}), true), '21 dagur', '21 days = 21 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mánuður', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mánuður', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mánuður', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mánuðir', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mánuðir', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mánuðir', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mánuður', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mánuðir', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ár', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ár', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ár', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ár', '5 years = 5 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 21}), true), '21 ár', '21 years = 21 years');
- });
-
- test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'eftir nokkrar sekúndur', 'prefix');
- assert.equal(moment(0).from(30000), 'fyrir nokkrum sekúndum síðan', 'suffix');
- assert.equal(moment().subtract({m: 1}).fromNow(), 'fyrir mínútu síðan', 'a minute ago');
- });
-
- test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'fyrir nokkrum sekúndum síðan', 'now from now should display as in the past');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'néhány másodperc', '44 másodperc = néhány másodperc');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'egy perc', '45 másodperc = egy perc');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'egy perc', '89 másodperc = egy perc');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 perc', '90 másodperc = 2 perc');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 perc', '44 perc = 44 perc');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'egy óra', '45 perc = egy óra');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'egy óra', '89 perc = egy óra');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 óra', '90 perc = 2 óra');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 óra', '5 óra = 5 óra');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 óra', '21 óra = 21 óra');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'egy nap', '22 óra = egy nap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'egy nap', '35 óra = egy nap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 nap', '36 óra = 2 nap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'egy nap', '1 nap = egy nap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 nap', '5 nap = 5 nap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 nap', '25 nap = 25 nap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'egy hónap', '26 nap = egy hónap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'egy hónap', '30 nap = egy hónap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'egy hónap', '45 nap = egy hónap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 hónap', '46 nap = 2 hónap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 hónap', '75 nap = 2 hónap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 hónap', '76 nap = 3 hónap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'egy hónap', '1 hónap = egy hónap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 hónap', '5 hónap = 5 hónap');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'egy év', '345 nap = egy év');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 év', '548 nap = 2 év');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'egy év', '1 év = egy év');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 év', '5 év = 5 év');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'néhány másodperc múlva', 'prefix');
+ assert.equal(moment(0).from(30000), 'néhány másodperce', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'néhány másodperce', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'eftir nokkrar sekúndur', 'in a few seconds');
- assert.equal(moment().add({m: 1}).fromNow(), 'eftir mínútu', 'in a minute');
- assert.equal(moment().add({d: 5}).fromNow(), 'eftir 5 daga', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'néhány másodperc múlva', 'néhány másodperc múlva');
+ assert.equal(moment().add({d: 5}).fromNow(), '5 nap múlva', '5 nap múlva');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'í dag kl. 2:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'í dag kl. 2:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'í dag kl. 3:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'á morgun kl. 2:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'í dag kl. 1:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'í gær kl. 2:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'ma 2:00-kor', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'ma 2:25-kor', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'ma 3:00-kor', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'holnap 2:00-kor', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'ma 1:00-kor', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'tegnap 2:00-kor', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
- var i, m;
+ var i, m, days = 'vasárnap_hétfőn_kedden_szerdán_csütörtökön_pénteken_szombaton'.split('_');
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[' + days[m.day()] + '] LT[-kor]'), 'today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[' + days[m.day()] + '] LT[-kor]'), 'today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[' + days[m.day()] + '] LT[-kor]'), 'today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
- var i, m;
+ var i, m, days = 'vasárnap_hétfőn_kedden_szerdán_csütörtökön_pénteken_szombaton'.split('_');
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[síðasta] dddd [kl.] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[múlt ' + days[m.day()] + '] LT[-kor]'), 'today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[síðasta] dddd [kl.] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[múlt ' + days[m.day()] + '] LT[-kor]'), 'today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[síðasta] dddd [kl.] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[múlt ' + days[m.day()] + '] LT[-kor]'), 'today - ' + i + ' days end of day');
}
});
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), 'egy héte');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'egy hét múlva');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 hete');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '2 hét múlva');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1.', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1.', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2.', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2.', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3.', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('it');
+ localeModule('hy-am');
test('parse', function (assert) {
- var tests = 'gennaio gen_febbraio feb_marzo mar_aprile apr_maggio mag_giugno giu_luglio lug_agosto ago_settembre set_ottobre ott_novembre nov_dicembre dic'.split('_'), i;
+ var tests = 'հունվար հնվ_փետրվար փտր_մարտ մրտ_ապրիլ ապր_մայիս մյս_հունիս հնս_հուլիս հլս_օգոստոս օգս_սեպտեմբեր սպտ_հոկտեմբեր հկտ_նոյեմբեր նմբ_դեկտեմբեր դկտ'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
}
});
+ test('parse exceptional case', function (assert) {
+ assert.equal(moment('11 մայիսի 1989', ['DD MMMM YYYY']).format('DD-MM-YYYY'), '11-05-1989');
+ });
+
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Domenica, febbraio 14º 2010, 3:25:50 pm'],
- ['ddd, hA', 'Dom, 3PM'],
- ['M Mo MM MMMM MMM', '2 2º 02 febbraio feb'],
+ ['dddd, Do MMMM YYYY, HH:mm:ss', 'կիրակի, 14 փետրվարի 2010, 15:25:50'],
+ ['ddd, h A', 'կրկ, 3 ցերեկվա'],
+ ['M Mo MM MMMM MMM', '2 2 02 փետրվար փտր'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14º 14'],
- ['d do dddd ddd dd', '0 0º Domenica Dom D'],
- ['DDD DDDo DDDD', '45 45º 045'],
- ['w wo ww', '6 6º 06'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 կիրակի կրկ կրկ'],
+ ['DDD DDDo DDDD', '45 45-րդ 045'],
+ ['w wo ww', '7 7-րդ 07'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45º day of the year'],
+ ['a A', 'ցերեկվա ցերեկվա'],
+ ['[տարվա] DDDo [օրը]', 'տարվա 45-րդ օրը'],
['LTS', '15:25:50'],
- ['L', '14/02/2010'],
- ['LL', '14 febbraio 2010'],
- ['LLL', '14 febbraio 2010 15:25'],
- ['LLLL', 'Domenica, 14 febbraio 2010 15:25'],
- ['l', '14/2/2010'],
- ['ll', '14 feb 2010'],
- ['lll', '14 feb 2010 15:25'],
- ['llll', 'Dom, 14 feb 2010 15:25']
+ ['L', '14.02.2010'],
+ ['LL', '14 փետրվարի 2010 թ.'],
+ ['LLL', '14 փետրվարի 2010 թ., 15:25'],
+ ['LLLL', 'կիրակի, 14 փետրվարի 2010 թ., 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14 փտր 2010 թ.'],
+ ['lll', '14 փտր 2010 թ., 15:25'],
+ ['llll', 'կրկ, 14 փտր 2010 թ., 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
+ test('format meridiem', function (assert) {
+ assert.equal(moment([2012, 11, 28, 0, 0]).format('A'), 'գիշերվա', 'night');
+ assert.equal(moment([2012, 11, 28, 3, 59]).format('A'), 'գիշերվա', 'night');
+ assert.equal(moment([2012, 11, 28, 4, 0]).format('A'), 'առավոտվա', 'morning');
+ assert.equal(moment([2012, 11, 28, 11, 59]).format('A'), 'առավոտվա', 'morning');
+ assert.equal(moment([2012, 11, 28, 12, 0]).format('A'), 'ցերեկվա', 'afternoon');
+ assert.equal(moment([2012, 11, 28, 16, 59]).format('A'), 'ցերեկվա', 'afternoon');
+ assert.equal(moment([2012, 11, 28, 17, 0]).format('A'), 'երեկոյան', 'evening');
+ assert.equal(moment([2012, 11, 28, 23, 59]).format('A'), 'երեկոյան', 'evening');
+ });
+
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-ին', '1-ին');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2-րդ', '2-րդ');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3-րդ', '3-րդ');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4-րդ', '4-րդ');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5-րդ', '5-րդ');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6-րդ', '6-րդ');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7-րդ', '7-րդ');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8-րդ', '8-րդ');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9-րդ', '9-րդ');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10-րդ', '10-րդ');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11-րդ', '11-րդ');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12-րդ', '12-րդ');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13-րդ', '13-րդ');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14-րդ', '14-րդ');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15-րդ', '15-րդ');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16-րդ', '16-րդ');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17-րդ', '17-րդ');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18-րդ', '18-րդ');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19-րդ', '19-րդ');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20-րդ', '20-րդ');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-րդ', '21-րդ');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-րդ', '22-րդ');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-րդ', '23-րդ');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-րդ', '24-րդ');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-րդ', '25-րդ');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-րդ', '26-րդ');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-րդ', '27-րդ');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-րդ', '28-րդ');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-րդ', '29-րդ');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-րդ', '30-րդ');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31-րդ', '31-րդ');
});
test('format month', function (assert) {
- var expected = 'gennaio gen_febbraio feb_marzo mar_aprile apr_maggio mag_giugno giu_luglio lug_agosto ago_settembre set_ottobre ott_novembre nov_dicembre dic'.split('_'), i;
+ var expected = 'հունվար հնվ_փետրվար փտր_մարտ մրտ_ապրիլ ապր_մայիս մյս_հունիս հնս_հուլիս հլս_օգոստոս օգս_սեպտեմբեր սպտ_հոկտեմբեր հկտ_նոյեմբեր նմբ_դեկտեմբեր դկտ'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
+ test('format month case', function (assert) {
+ var months = {
+ 'nominative': 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split('_'),
+ 'accusative': 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split('_')
+ }, i;
+ for (i = 0; i < 12; i++) {
+ assert.equal(moment([2011, i, 1]).format('D MMMM'), '1 ' + months.accusative[i], '1 ' + months.accusative[i]);
+ assert.equal(moment([2011, i, 1]).format('MMMM'), months.nominative[i], '1 ' + months.nominative[i]);
+ }
+ });
+
+ test('format month short case', function (assert) {
+ var monthsShort = {
+ 'nominative': 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),
+ 'accusative': 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_')
+ }, i;
+ for (i = 0; i < 12; i++) {
+ assert.equal(moment([2011, i, 1]).format('D MMM'), '1 ' + monthsShort.accusative[i], '1 ' + monthsShort.accusative[i]);
+ assert.equal(moment([2011, i, 1]).format('MMM'), monthsShort.nominative[i], '1 ' + monthsShort.nominative[i]);
+ }
+ });
+
+ test('format month case with escaped symbols', function (assert) {
+ var months = {
+ 'nominative': 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split('_'),
+ 'accusative': 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split('_')
+ }, i;
+ for (i = 0; i < 12; i++) {
+ assert.equal(moment([2013, i, 1]).format('D[] MMMM'), '1 ' + months.accusative[i], '1 ' + months.accusative[i]);
+ assert.equal(moment([2013, i, 1]).format('[<i>]D[</i>] [<b>]MMMM[</b>]'), '<i>1</i> <b>' + months.accusative[i] + '</b>', '1 <b>' + months.accusative[i] + '</b>');
+ assert.equal(moment([2013, i, 1]).format('D[-ին օրը] MMMM'), '1-ին օրը ' + months.accusative[i], '1-ին օրը ' + months.accusative[i]);
+ assert.equal(moment([2013, i, 1]).format('D, MMMM'), '1, ' + months.nominative[i], '1, ' + months.nominative[i]);
+ }
+ });
+
+ test('format month short case with escaped symbols', function (assert) {
+ var monthsShort = {
+ 'nominative': 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'),
+ 'accusative': 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_')
+ }, i;
+ for (i = 0; i < 12; i++) {
+ assert.equal(moment([2013, i, 1]).format('D[] MMM'), '1 ' + monthsShort.accusative[i], '1 ' + monthsShort.accusative[i]);
+ assert.equal(moment([2013, i, 1]).format('[<i>]D[</i>] [<b>]MMM[</b>]'), '<i>1</i> <b>' + monthsShort.accusative[i] + '</b>', '1 <b>' + monthsShort.accusative[i] + '</b>');
+ assert.equal(moment([2013, i, 1]).format('D[-ին օրը] MMM'), '1-ին օրը ' + monthsShort.accusative[i], '1-ին օրը ' + monthsShort.accusative[i]);
+ assert.equal(moment([2013, i, 1]).format('D, MMM'), '1, ' + monthsShort.nominative[i], '1, ' + monthsShort.nominative[i]);
+ }
+ });
+
test('format week', function (assert) {
- var expected = 'Domenica Dom D_Lunedì Lun L_Martedì Mar Ma_Mercoledì Mer Me_Giovedì Gio G_Venerdì Ven V_Sabato Sab S'.split('_'), i;
+ var expected = 'կիրակի կրկ կրկ_երկուշաբթի երկ երկ_երեքշաբթի երք երք_չորեքշաբթի չրք չրք_հինգշաբթի հնգ հնգ_ուրբաթ ուրբ ուրբ_շաբաթ շբթ շբթ'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'alcuni secondi', '44 seconds = seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'un minuto', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'un minuto', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuti', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuti', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'un\'ora', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'un\'ora', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ore', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ore', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 ore', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un giorno', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un giorno', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 giorni', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un giorno', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 giorni', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 giorni', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mese', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mese', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mese', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mesi', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mesi', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mesi', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mese', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mesi', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un anno', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 anni', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un anno', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 anni', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'մի քանի վայրկյան', '44 seconds = seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'րոպե', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'րոպե', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 րոպե', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 րոպե', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ժամ', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ժամ', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ժամ', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ժամ', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 ժամ', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'օր', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'օր', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 օր', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'օր', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 օր', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 11}), true), '11 օր', '11 days = 11 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 21}), true), '21 օր', '21 days = 21 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 օր', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ամիս', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ամիս', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ամիս', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 ամիս', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 ամիս', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 ամիս', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ամիս', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 ամիս', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'տարի', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 տարի', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'տարի', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 տարի', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'in alcuni secondi', 'prefix');
- assert.equal(moment(0).from(30000), 'alcuni secondi fa', 'suffix');
+ assert.equal(moment(30000).from(0), 'մի քանի վայրկյան հետո', 'prefix');
+ assert.equal(moment(0).from(30000), 'մի քանի վայրկյան առաջ', 'suffix');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'in alcuni secondi', 'in seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'tra 5 giorni', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'մի քանի վայրկյան հետո', 'in seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), '5 օր հետո', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Oggi alle 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Oggi alle 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Oggi alle 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Domani alle 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Oggi alle 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Ieri alle 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'այսօր 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'այսօր 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'այսօր 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'վաղը 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'այսօր 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'երեկ 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
+ function makeFormat(d) {
+ return 'dddd [օրը ժամը] LT';
+ }
+
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [alle] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [alle] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [alle] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
- var i, m, weekday, datestring;
+ var i, m;
+
+ function makeFormat(d) {
+ return '[անցած] dddd [օրը ժամը] LT';
+ }
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- // Different date string
- weekday = parseInt(m.format('d'), 10);
- datestring = (weekday === 0) ? '[la scorsa] dddd [alle] LT' : '[lo scorso] dddd [alle] LT';
- assert.equal(m.calendar(), m.format(datestring), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(datestring), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(datestring), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52º', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1º', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1º', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2º', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2º', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1-ին', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1-ին', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2-րդ', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2-րդ', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3-րդ', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('ja');
+ localeModule('id');
test('parse', function (assert) {
- var tests = '1月 1月_2月 2月_3月 3月_4月 4月_5月 5月_6月 6月_7月 7月_8月 8月_9月 9月_10月 10月_11月 11月_12月 12月'.split('_'), i;
+ var tests = 'Januari Jan_Februari Feb_Maret Mar_April Apr_Mei Mei_Juni Jun_Juli Jul_Agustus Ags_September Sep_Oktober Okt_November Nov_Desember Des'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, a h:mm:ss', '日曜日, 2月 14 2010, 午後 3:25:50'],
- ['ddd, Ah', '日, 午後3'],
- ['M Mo MM MMMM MMM', '2 2 02 2月 2月'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Minggu, Februari 14 2010, 3:25:50 sore'],
+ ['ddd, hA', 'Min, 3sore'],
+ ['M Mo MM MMMM MMM', '2 2 02 Februari Feb'],
['YYYY YY', '2010 10'],
['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 日曜日 日 日'],
+ ['d do dddd ddd dd', '0 0 Minggu Min Mg'],
['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '8 8 08'],
+ ['w wo ww', '7 7 07'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', '午後 午後'],
+ ['a A', 'sore sore'],
['[the] DDDo [day of the year]', 'the 45 day of the year'],
- ['LTS', '午後3時25分50秒'],
- ['L', '2010/02/14'],
- ['LL', '2010年2月14日'],
- ['LLL', '2010年2月14日午後3時25分'],
- ['LLLL', '2010年2月14日午後3時25分 日曜日'],
- ['l', '2010/2/14'],
- ['ll', '2010年2月14日'],
- ['lll', '2010年2月14日午後3時25分'],
- ['llll', '2010年2月14日午後3時25分 日']
+ ['LTS', '15.25.50'],
+ ['L', '14/02/2010'],
+ ['LL', '14 Februari 2010'],
+ ['LLL', '14 Februari 2010 pukul 15.25'],
+ ['LLLL', 'Minggu, 14 Februari 2010 pukul 15.25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 Feb 2010'],
+ ['lll', '14 Feb 2010 pukul 15.25'],
+ ['llll', 'Min, 14 Feb 2010 pukul 15.25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format month', function (assert) {
- var expected = '1月 1月_2月 2月_3月 3月_4月 4月_5月 5月_6月 6月_7月 7月_8月 8月_9月 9月_10月 10月_11月 11月_12月 12月'.split('_'), i;
+ var expected = 'Januari Jan_Februari Feb_Maret Mar_April Apr_Mei Mei_Juni Jun_Juli Jul_Agustus Ags_September Sep_Oktober Okt_November Nov_Desember Des'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = '日曜日 日 日_月曜日 月 月_火曜日 火 火_水曜日 水 水_木曜日 木 木_金曜日 金 金_土曜日 土 土'.split('_'), i;
+ var expected = 'Minggu Min Mg_Senin Sen Sn_Selasa Sel Sl_Rabu Rab Rb_Kamis Kam Km_Jumat Jum Jm_Sabtu Sab Sb'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), '数秒', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), '1分', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), '1分', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2分', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44分', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), '1時間', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), '1時間', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2時間', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5時間', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21時間', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), '1日', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), '1日', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2日', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), '1日', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5日', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25日', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), '1ヶ月', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), '1ヶ月', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), '1ヶ月', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2ヶ月', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2ヶ月', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3ヶ月', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), '1ヶ月', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5ヶ月', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), '1年', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2年', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), '1年', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5年', '5 years = 5 years');
- });
-
- test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), '数秒後', 'prefix');
- assert.equal(moment(0).from(30000), '数秒前', 'suffix');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'beberapa detik', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'semenit', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'semenit', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 menit', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 menit', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'sejam', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'sejam', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 jam', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 jam', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 jam', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'sehari', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'sehari', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 hari', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'sehari', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 hari', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 hari', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'sebulan', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'sebulan', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'sebulan', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 bulan', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 bulan', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 bulan', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'sebulan', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 bulan', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'setahun', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 tahun', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'setahun', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 tahun', '5 years = 5 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'dalam beberapa detik', 'prefix');
+ assert.equal(moment(0).from(30000), 'beberapa detik yang lalu', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), '数秒前', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'beberapa detik yang lalu', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), '数秒後', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), '5日後', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'dalam beberapa detik', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'dalam 5 hari', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), '今日 午前2時0分', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), '今日 午前2時25分', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), '今日 午前3時0分', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), '明日 午前2時0分', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), '今日 午前1時0分', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), '昨日 午前2時0分', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Hari ini pukul 02.00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Hari ini pukul 02.25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Hari ini pukul 03.00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Besok pukul 02.00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hari ini pukul 01.00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Kemarin pukul 02.00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('[来週]dddd LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[来週]dddd LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[来週]dddd LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[前週]dddd LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [lalu pukul] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[前週]dddd LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [lalu pukul] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[前週]dddd LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [lalu pukul] LT'), 'Today - ' + i + ' days end of day');
}
});
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
});
- test('weeks year starting sunday format', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1', 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2', 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 should be week 3');
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}
});
+ test('meridiem invariant', function (assert) {
+ var h, m, t1, t2;
+ for (h = 0; h < 24; ++h) {
+ for (m = 0; m < 60; m += 15) {
+ t1 = moment.utc([2000, 0, 1, h, m]);
+ t2 = moment(t1.format('A h:mm'), 'A h:mm');
+ assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
+ 'meridiem at ' + t1.format('HH:mm'));
+ }
+ }
+ });
+
test('strict ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('jv');
-
+ localeModule('is');
test('parse', function (assert) {
- var tests = 'Januari Jan_Februari Feb_Maret Mar_April Apr_Mei Mei_Juni Jun_Juli Jul_Agustus Ags_September Sep_Oktober Okt_Nopember Nop_Desember Des'.split('_'), i;
+ var tests = 'janúar jan_febrúar feb_mars mar_apríl apr_maí maí_júní jún_júlí júl_ágúst ágú_september sep_október okt_nóvember nóv_desember des'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Minggu, Februari 14 2010, 3:25:50 sonten'],
- ['ddd, hA', 'Min, 3sonten'],
- ['M Mo MM MMMM MMM', '2 2 02 Februari Feb'],
+ ['dddd, Do MMMM YYYY, h:mm:ss a', 'sunnudagur, 14. febrúar 2010, 3:25:50 pm'],
+ ['ddd, hA', 'sun, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 febrúar feb'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 Minggu Min Mg'],
- ['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '7 7 07'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. sunnudagur sun Su'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'sonten sonten'],
- ['[the] DDDo [day of the year]', 'the 45 day of the year'],
- ['LTS', '15.25.50'],
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['LTS', '15:25:50'],
['L', '14/02/2010'],
- ['LL', '14 Februari 2010'],
- ['LLL', '14 Februari 2010 pukul 15.25'],
- ['LLLL', 'Minggu, 14 Februari 2010 pukul 15.25'],
+ ['LL', '14. febrúar 2010'],
+ ['LLL', '14. febrúar 2010 kl. 15:25'],
+ ['LLLL', 'sunnudagur, 14. febrúar 2010 kl. 15:25'],
['l', '14/2/2010'],
- ['ll', '14 Feb 2010'],
- ['lll', '14 Feb 2010 pukul 15.25'],
- ['llll', 'Min, 14 Feb 2010 pukul 15.25']
+ ['ll', '14. feb 2010'],
+ ['lll', '14. feb 2010 kl. 15:25'],
+ ['llll', 'sun, 14. feb 2010 kl. 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ });
+
test('format month', function (assert) {
- var expected = 'Januari Jan_Februari Feb_Maret Mar_April Apr_Mei Mei_Juni Jun_Juli Jul_Agustus Ags_September Sep_Oktober Okt_Nopember Nop_Desember Des'.split('_'), i;
+ var expected = 'janúar jan_febrúar feb_mars mar_apríl apr_maí maí_júní jún_júlí júl_ágúst ágú_september sep_október okt_nóvember nóv_desember des'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'Minggu Min Mg_Senen Sen Sn_Seloso Sel Sl_Rebu Reb Rb_Kemis Kem Km_Jemuwah Jem Jm_Septu Sep Sp'.split('_'), i;
+ var expected = 'sunnudagur sun Su_mánudagur mán Má_þriðjudagur þri Þr_miðvikudagur mið Mi_fimmtudagur fim Fi_föstudagur fös Fö_laugardagur lau La'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'sawetawis detik', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'setunggal menit', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'setunggal menit', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 menit', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 menit', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'setunggal jam', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'setunggal jam', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 jam', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 jam', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 jam', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'sedinten', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'sedinten', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dinten', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'sedinten', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dinten', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dinten', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'sewulan', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'sewulan', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'sewulan', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 wulan', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 wulan', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 wulan', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'sewulan', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 wulan', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'setaun', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 taun', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'setaun', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 taun', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'nokkrar sekúndur', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'mínúta', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'mínúta', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 mínútur', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 mínútur', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 21}), true), '21 mínúta', '21 minutes = 21 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'klukkustund', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'klukkustund', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 klukkustundir', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 klukkustundir', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 klukkustund', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'dagur', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'dagur', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagar', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'dagur', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagar', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagar', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 11}), true), '11 dagar', '11 days = 11 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 21}), true), '21 dagur', '21 days = 21 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mánuður', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mánuður', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mánuður', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mánuðir', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mánuðir', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mánuðir', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mánuður', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mánuðir', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ár', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ár', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ár', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ár', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 21}), true), '21 ár', '21 years = 21 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'wonten ing sawetawis detik', 'prefix');
- assert.equal(moment(0).from(30000), 'sawetawis detik ingkang kepengker', 'suffix');
+ assert.equal(moment(30000).from(0), 'eftir nokkrar sekúndur', 'prefix');
+ assert.equal(moment(0).from(30000), 'fyrir nokkrum sekúndum síðan', 'suffix');
+ assert.equal(moment().subtract({m: 1}).fromNow(), 'fyrir mínútu síðan', 'a minute ago');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'sawetawis detik ingkang kepengker', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'fyrir nokkrum sekúndum síðan', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'wonten ing sawetawis detik', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'wonten ing 5 dinten', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'eftir nokkrar sekúndur', 'in a few seconds');
+ assert.equal(moment().add({m: 1}).fromNow(), 'eftir mínútu', 'in a minute');
+ assert.equal(moment().add({d: 5}).fromNow(), 'eftir 5 daga', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Dinten puniko pukul 02.00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Dinten puniko pukul 02.25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Dinten puniko pukul 03.00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Mbenjang pukul 02.00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Dinten puniko pukul 01.00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Kala wingi pukul 02.00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'í dag kl. 2:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'í dag kl. 2:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'í dag kl. 3:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'á morgun kl. 2:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'í dag kl. 1:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'í gær kl. 2:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('dddd [kepengker pukul] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[síðasta] dddd [kl.] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [kepengker pukul] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[síðasta] dddd [kl.] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [kepengker pukul] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[síðasta] dddd [kl.] LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- // Monday is the first day of the week.
- // The week that contains Jan 1st is the first week of the year.
-
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}
});
- test('meridiem invariant', function (assert) {
- var h, m, t1, t2;
- for (h = 0; h < 24; ++h) {
- for (m = 0; m < 60; m += 15) {
- t1 = moment.utc([2000, 0, 1, h, m]);
- t2 = moment(t1.format('A h:mm'), 'A h:mm');
- assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
- 'meridiem at ' + t1.format('HH:mm'));
- }
- }
- });
-
test('strict ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('ka');
+ localeModule('it');
test('parse', function (assert) {
- var i,
- tests = 'იანვარი იან_თებერვალი თებ_მარტი მარ_აპრილი აპრ_მაისი მაი_ივნისი ივნ_ივლისი ივლ_აგვისტო აგვ_სექტემბერი სექ_ოქტომბერი ოქტ_ნოემბერი ნოე_დეკემბერი დეკ'.split('_');
-
+ var tests = 'gennaio gen_febbraio feb_marzo mar_aprile apr_maggio mag_giugno giu_luglio lug_agosto ago_settembre set_ottobre ott_novembre nov_dicembre dic'.split('_'), i;
function equalTest(input, mmm, i) {
- assert.equal(moment(input, mmm).month(), i, input + ' უნდა იყოს თვე ' + (i + 1));
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
-
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'კვირა, თებერვალი მე-14 2010, 3:25:50 pm'],
- ['ddd, hA', 'კვი, 3PM'],
- ['M Mo MM MMMM MMM', '2 მე-2 02 თებერვალი თებ'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 მე-14 14'],
- ['d do dddd ddd dd', '0 0 კვირა კვი კვ'],
- ['DDD DDDo DDDD', '45 45-ე 045'],
- ['w wo ww', '7 მე-7 07'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['წლის DDDo დღე', 'წლის 45-ე დღე'],
- ['LTS', '3:25:50 PM'],
- ['L', '14/02/2010'],
- ['LL', '14 თებერვალი 2010'],
- ['LLL', '14 თებერვალი 2010 3:25 PM'],
- ['LLLL', 'კვირა, 14 თებერვალი 2010 3:25 PM'],
- ['l', '14/2/2010'],
- ['ll', '14 თებ 2010'],
- ['lll', '14 თებ 2010 3:25 PM'],
- ['llll', 'კვი, 14 თებ 2010 3:25 PM']
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Domenica, febbraio 14º 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Dom, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2º 02 febbraio feb'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14º 14'],
+ ['d do dddd ddd dd', '0 0º Domenica Dom Do'],
+ ['DDD DDDo DDDD', '45 45º 045'],
+ ['w wo ww', '6 6º 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45º day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '14/02/2010'],
+ ['LL', '14 febbraio 2010'],
+ ['LLL', '14 febbraio 2010 15:25'],
+ ['LLLL', 'Domenica, 14 febbraio 2010 15:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 feb 2010'],
+ ['lll', '14 feb 2010 15:25'],
+ ['llll', 'Dom, 14 feb 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
-
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-ლი', '1-ლი');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), 'მე-2', 'მე-2');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), 'მე-3', 'მე-3');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), 'მე-4', 'მე-4');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), 'მე-5', 'მე-5');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), 'მე-6', 'მე-6');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), 'მე-7', 'მე-7');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), 'მე-8', 'მე-8');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), 'მე-9', 'მე-9');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), 'მე-10', 'მე-10');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), 'მე-11', 'მე-11');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), 'მე-12', 'მე-12');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), 'მე-13', 'მე-13');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), 'მე-14', 'მე-14');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), 'მე-15', 'მე-15');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), 'მე-16', 'მე-16');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), 'მე-17', 'მე-17');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), 'მე-18', 'მე-18');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), 'მე-19', 'მე-19');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), 'მე-20', 'მე-20');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-ე', '21-ე');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-ე', '22-ე');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-ე', '23-ე');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-ე', '24-ე');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-ე', '25-ე');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-ე', '26-ე');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-ე', '27-ე');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-ე', '28-ე');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-ე', '29-ე');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-ე', '30-ე');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
- assert.equal(moment('2011 40', 'YYYY DDD').format('DDDo'), 'მე-40', 'მე-40');
- assert.equal(moment('2011 50', 'YYYY DDD').format('DDDo'), '50-ე', '50-ე');
- assert.equal(moment('2011 60', 'YYYY DDD').format('DDDo'), 'მე-60', 'მე-60');
- assert.equal(moment('2011 100', 'YYYY DDD').format('DDDo'), 'მე-100', 'მე-100');
- assert.equal(moment('2011 101', 'YYYY DDD').format('DDDo'), '101-ე', '101-ე');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
});
test('format month', function (assert) {
- var i,
- expected = 'იანვარი იან_თებერვალი თებ_მარტი მარ_აპრილი აპრ_მაისი მაი_ივნისი ივნ_ივლისი ივლ_აგვისტო აგვ_სექტემბერი სექ_ოქტომბერი ოქტ_ნოემბერი ნოე_დეკემბერი დეკ'.split('_');
-
+ var expected = 'gennaio gen_febbraio feb_marzo mar_aprile apr_maggio mag_giugno giu_luglio lug_agosto ago_settembre set_ottobre ott_novembre nov_dicembre dic'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var i,
- expected = 'კვირა კვი კვ_ორშაბათი ორშ ორ_სამშაბათი სამ სა_ოთხშაბათი ოთხ ოთ_ხუთშაბათი ხუთ ხუ_პარასკევი პარ პა_შაბათი შაბ შა'.split('_');
-
+ var expected = 'Domenica Dom Do_Lunedì Lun Lu_Martedì Mar Ma_Mercoledì Mer Me_Giovedì Gio Gi_Venerdì Ven Ve_Sabato Sab Sa'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
-
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'რამდენიმე წამი', '44 წამი = რამდენიმე წამი');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'წუთი', '45 წამი = წუთი');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'წუთი', '89 წამი = წუთი');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 წუთი', '90 წამი = 2 წუთი');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 წუთი', '44 წამი = 44 წუთი');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'საათი', '45 წამი = საათი');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'საათი', '89 წამი = საათი');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 საათი', '90 წამი = 2 საათი');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 საათი', '5 საათი = 5 საათი');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 საათი', '21 საათი = 21 საათი');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'დღე', '22 საათი = დღე');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'დღე', '35 საათი = დღე');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 დღე', '36 საათი = 2 დღე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'დღე', '1 დღე = დღე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 დღე', '5 დღე = 5 დღე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 დღე', '25 დღე = 25 დღე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'თვე', '26 დღე = თვე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'თვე', '30 დღე = თვე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'თვე', '45 დღე = თვე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 თვე', '46 დღე = 2 თვე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 თვე', '75 დღე = 2 თვე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 თვე', '76 დღე = 3 თვე');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'თვე', '1 თვე = თვე');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 თვე', '5 თვე = 5 თვე');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'წელი', '345 დღე = წელი');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 წელი', '548 დღე = 2 წელი');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'წელი', '1 წელი = წელი');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 წელი', '5 წელი = 5 წელი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'alcuni secondi', '44 seconds = seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'un minuto', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'un minuto', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuti', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuti', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'un\'ora', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'un\'ora', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ore', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ore', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 ore', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'un giorno', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'un giorno', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 giorni', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'un giorno', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 giorni', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 giorni', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'un mese', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'un mese', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'un mese', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mesi', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mesi', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mesi', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'un mese', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mesi', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un anno', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 anni', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un anno', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 anni', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'რამდენიმე წამში', 'ში სუფიქსი');
- assert.equal(moment(0).from(30000), 'რამდენიმე წამის წინ', 'წინ სუფიქსი');
- });
-
- test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'რამდენიმე წამის წინ', 'უნდა აჩვენოს როგორც წარსული');
+ assert.equal(moment(30000).from(0), 'in alcuni secondi', 'prefix');
+ assert.equal(moment(0).from(30000), 'alcuni secondi fa', 'suffix');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'რამდენიმე წამში', 'რამდენიმე წამში');
- assert.equal(moment().add({d: 5}).fromNow(), '5 დღეში', '5 დღეში');
+ assert.equal(moment().add({s: 30}).fromNow(), 'in alcuni secondi', 'in seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'tra 5 giorni', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'დღეს 2:00 AM-ზე', 'დღეს ამავე დროს');
- assert.equal(moment(a).add({m: 25}).calendar(), 'დღეს 2:25 AM-ზე', 'ახლანდელ დროს დამატებული 25 წუთი');
- assert.equal(moment(a).add({h: 1}).calendar(), 'დღეს 3:00 AM-ზე', 'ახლანდელ დროს დამატებული 1 საათი');
- assert.equal(moment(a).add({d: 1}).calendar(), 'ხვალ 2:00 AM-ზე', 'ხვალ ამავე დროს');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'დღეს 1:00 AM-ზე', 'ახლანდელ დროს გამოკლებული 1 საათი');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'გუშინ 2:00 AM-ზე', 'გუშინ ამავე დროს');
+ assert.equal(moment(a).calendar(), 'Oggi alle 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Oggi alle 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Oggi alle 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Domani alle 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Oggi alle 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Ieri alle 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('[შემდეგ] dddd LT[-ზე]'), 'დღეს + ' + i + ' დღე ახლანდელ დროს');
+ assert.equal(m.calendar(), m.format('dddd [alle] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[შემდეგ] dddd LT[-ზე]'), 'დღეს + ' + i + ' დღე დღის დასაწყისში');
+ assert.equal(m.calendar(), m.format('dddd [alle] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[შემდეგ] dddd LT[-ზე]'), 'დღეს + ' + i + ' დღე დღის დასასრულს');
+ assert.equal(m.calendar(), m.format('dddd [alle] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
- var i, m;
+ var i, m, weekday, datestring;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[წინა] dddd LT[-ზე]'), 'დღეს - ' + i + ' დღე ახლანდელ დროს');
+ // Different date string
+ weekday = parseInt(m.format('d'), 10);
+ datestring = (weekday === 0) ? '[la scorsa] dddd [alle] LT' : '[lo scorso] dddd [alle] LT';
+ assert.equal(m.calendar(), m.format(datestring), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[წინა] dddd LT[-ზე]'), 'დღეს - ' + i + ' დღე დღის დასაწყისში');
+ assert.equal(m.calendar(), m.format(datestring), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[წინა] dddd LT[-ზე]'), 'დღეს - ' + i + ' დღე დღის დასასრულს');
+ assert.equal(m.calendar(), m.format(datestring), 'Today - ' + i + ' days end of day');
}
});
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 კვირის წინ');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '1 კვირაში');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 კვირის წინ');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '2 კვირაში');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'დეკ 26 2011 უნდა იყოს კვირა 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'იან 1 2012 უნდა იყოს კვირა 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'იან 2 2012 უნდა იყოს კვირა 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'იან 8 2012 უნდა იყოს კვირა 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'იან 9 2012 უნდა იყოს კვირა 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'იან 1 2007 უნდა იყოს კვირა 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'იან 7 2007 უნდა იყოს კვირა 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'იან 8 2007 უნდა იყოს კვირა 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'იან 14 2007 უნდა იყოს კვირა 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'იან 15 2007 უნდა იყოს კვირა 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'დეკ 31 2007 უნდა იყოს კვირა 1');
- assert.equal(moment([2008, 0, 1]).week(), 1, 'იან 1 2008 უნდა იყოს კვირა 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'იან 6 2008 უნდა იყოს კვირა 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'იან 7 2008 უნდა იყოს კვირა 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'იან 13 2008 უნდა იყოს კვირა 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'იან 14 2008 უნდა იყოს კვირა 3');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'დეკ 30 2002 უნდა იყოს კვირა 1');
- assert.equal(moment([2003, 0, 1]).week(), 1, 'იან 1 2003 უნდა იყოს კვირა 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'იან 5 2003 უნდა იყოს კვირა 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'იან 6 2003 უნდა იყოს კვირა 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'იან 12 2003 უნდა იყოს კვირა 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'იან 13 2003 უნდა იყოს კვირა 3');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'დეკ 29 2008 უნდა იყოს კვირა 1');
- assert.equal(moment([2009, 0, 1]).week(), 1, 'იან 1 2009 უნდა იყოს კვირა 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'იან 4 2009 უნდა იყოს კვირა 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'იან 5 2009 უნდა იყოს კვირა 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'იან 11 2009 უნდა იყოს კვირა 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'იან 12 2009 უნდა იყოს კვირა 3');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'დეკ 28 2009 უნდა იყოს კვირა 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'იან 1 2010 უნდა იყოს კვირა 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'იან 3 2010 უნდა იყოს კვირა 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'იან 4 2010 უნდა იყოს კვირა 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'იან 10 2010 უნდა იყოს კვირა 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'იან 11 2010 უნდა იყოს კვირა 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'დეკ 27 2010 უნდა იყოს კვირა 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'იან 1 2011 უნდა იყოს კვირა 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'იან 2 2011 უნდა იყოს კვირა 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'იან 3 2011 უნდა იყოს კვირა 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'იან 9 2011 უნდა იყოს კვირა 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'იან 10 2011 უნდა იყოს კვირა 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1-ლი', 'დეკ 26 2011 უნდა იყოს კვირა 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1-ლი', 'იან 1 2012 უნდა იყოს კვირა 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 მე-2', 'იან 2 2012 უნდა იყოს კვირა 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 მე-2', 'იან 8 2012 უნდა იყოს კვირა 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 მე-3', 'იან 9 2012 უნდა იყოს კვირა 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52º', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1º', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1º', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2º', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2º', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('km');
+ localeModule('ja');
test('parse', function (assert) {
- var tests = 'មករា មករា_កុម្ភៈ កុម្ភៈ_មិនា មិនា_មេសា មេសា_ឧសភា ឧសភា_មិថុនា មិថុនា_កក្កដា កក្កដា_សីហា សីហា_កញ្ញា កញ្ញា_តុលា តុលា_វិច្ឆិកា វិច្ឆិកា_ធ្នូ ធ្នូ'.split('_'),
- i;
-
+ var tests = '1月 1月_2月 2月_3月 3月_4月 4月_5月 5月_6月 6月_7月 7月_8月 8月_9月 9月_10月 10月_11月 11月_12月 12月'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'អាទិត្យ, កុម្ភៈ 14 2010, 3:25:50 pm'],
- ['ddd, hA', 'អាទិត្យ, 3PM'],
- ['M Mo MM MMMM MMM', '2 2 02 á\9e\80á\9e»á\9e\98á\9f\92á\9e\97á\9f\88 á\9e\80á\9e»á\9e\98á\9f\92á\9e\97á\9f\88'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 អាទិត្យ អាទិត្យ អាទិត្យ'],
- ['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '6 6 06'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45 day of the year'],
- ['LTS', '15:25:50'],
- ['L', '14/02/2010'],
- ['LL', '14 កុម្ភៈ 2010'],
- ['LLL', '14 កុម្ភៈ 2010 15:25'],
- ['LLLL', 'អាទិត្យ, 14 កុម្ភៈ 2010 15:25'],
- ['l', '14/2/2010'],
- ['ll', '14 កុម្ភៈ 2010'],
- ['lll', '14 កុម្ភៈ 2010 15:25'],
- ['llll', 'អាទិត្យ, 14 កុម្ភៈ 2010 15:25']
+ ['dddd, MMMM Do YYYY, a h:mm:ss', '日曜日, 2月 14 2010, 午後 3:25:50'],
+ ['ddd, Ah', '日, 午後3'],
+ ['M Mo MM MMMM MMM', '2 2 02 2æ\9c\88 2æ\9c\88'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 日曜日 日 日'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '8 8 08'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', '午後 午後'],
+ ['[the] DDDo [day of the year]', 'the 45 day of the year'],
+ ['LTS', '午後3時25分50秒'],
+ ['L', '2010/02/14'],
+ ['LL', '2010年2月14日'],
+ ['LLL', '2010年2月14日午後3時25分'],
+ ['LLLL', '2010年2月14日午後3時25分 日曜日'],
+ ['l', '2010/2/14'],
+ ['ll', '2010年2月14日'],
+ ['lll', '2010年2月14日午後3時25分'],
+ ['llll', '2010年2月14日午後3時25分 日']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
- test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1st');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2nd');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3rd');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4th');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5th');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6th');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7th');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8th');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9th');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10th');
-
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11th');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12th');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13th');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14th');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15th');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16th');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17th');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18th');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19th');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20th');
-
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21st');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22nd');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23rd');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24th');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25th');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26th');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27th');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28th');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29th');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30th');
-
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31st');
- });
-
test('format month', function (assert) {
- var expected = 'មករា មករា_កុម្ភៈ កុម្ភៈ_មិនា មិនា_មេសា មេសា_ឧសភា ឧសភា_មិថុនា មិថុនា_កក្កដា កក្កដា_សីហា សីហា_កញ្ញា កញ្ញា_តុលា តុលា_វិច្ឆិកា វិច្ឆិកា_ធ្នូ ធ្នូ'.split('_'),
- i;
+ var expected = '1月 1月_2月 2月_3月 3月_4月 4月_5月 5月_6月 6月_7月 7月_8月 8月_9月 9月_10月 10月_11月 11月_12月 12月'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'អាទិត្យ អាទិត្យ អាទិត្យ_ច័ន្ទ ច័ន្ទ ច័ន្ទ_អង្គារ អង្គារ អង្គារ_ពុធ ពុធ ពុធ_ព្រហស្បតិ៍ ព្រហស្បតិ៍ ព្រហស្បតិ៍_សុក្រ សុក្រ សុក្រ_សៅរ៍ សៅរ៍ សៅរ៍'.split('_'),
- i;
+ var expected = '日曜日 日 日_月曜日 月 月_火曜日 火 火_水曜日 水 水_木曜日 木 木_金曜日 金 金_土曜日 土 土'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'ប៉ុន្មានវិនាទី', '44 seconds = ប៉ុន្មានវិនាទី');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'មួយនាទី', '45 seconds = មួយនាទី');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'មួយនាទី', '89 seconds = មួយនាទី');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 នាទី', '90 seconds = 2 នាទី');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 នាទី', '44 minutes = 44 នាទី');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'មួយម៉ោង', '45 minutes = មួយម៉ោង');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'មួយម៉ោង', '89 minutes = មួយម៉ោង');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ម៉ោង', '90 minutes = 2 ម៉ោង');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ម៉ោង', '5 hours = 5 ម៉ោង');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 ម៉ោង', '21 hours = 21 ម៉ោង');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'មួយថ្ងៃ', '22 hours = មួយថ្ងៃ');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'មួយថ្ងៃ', '35 hours = មួយថ្ងៃ');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 ថ្ងៃ', '36 hours = 2 ថ្ងៃ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'មួយថ្ងៃ', '1 day = មួយថ្ងៃ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 ថ្ងៃ', '5 days = 5 ថ្ងៃ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 ថ្ងៃ', '25 days = 25 ថ្ងៃ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'មួយខែ', '26 days = មួយខែ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'មួយខែ', '30 days = មួយខែ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'មួយខែ', '43 days = មួយខែ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 ខែ', '46 days = 2 ខែ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 ខែ', '75 days = 2 ខែ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 ខែ', '76 days = 3 ខែ');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'មួយខែ', '1 month = មួយខែ');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 ខែ', '5 months = 5 ខែ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'មួយឆ្នាំ', '345 days = មួយឆ្នាំ');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ឆ្នាំ', '548 days = 2 ឆ្នាំ');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'មួយឆ្នាំ', '1 year = មួយឆ្នាំ');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ឆ្នាំ', '5 years = 5 ឆ្នាំ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), '数秒', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), '1分', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), '1分', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2分', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44分', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), '1時間', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), '1時間', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2時間', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5時間', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21時間', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), '1日', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), '1日', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2日', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), '1日', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5日', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25日', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), '1ヶ月', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), '1ヶ月', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), '1ヶ月', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2ヶ月', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2ヶ月', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3ヶ月', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), '1ヶ月', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5ヶ月', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), '1年', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2年', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), '1年', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5年', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'ប៉ុន្មានវិនាទីទៀត', 'prefix');
- assert.equal(moment(0).from(30000), 'ប៉ុន្មានវិនាទីមុន', 'suffix');
+ assert.equal(moment(30000).from(0), '数秒後', 'prefix');
+ assert.equal(moment(0).from(30000), '数秒前', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'ប៉ុន្មានវិនាទីមុន', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), '数秒前', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({
- s: 30
- }).fromNow(), 'ប៉ុន្មានវិនាទីទៀត', 'in a few seconds');
- assert.equal(moment().add({
- d: 5
- }).fromNow(), '5 ថ្ងៃទៀត', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), '数秒後', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), '5日後', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'ថ្ងៃនៈ ម៉ោង 02:00', 'today at the same time');
- assert.equal(moment(a).add({
- m: 25
- }).calendar(), 'ថ្ងៃនៈ ម៉ោង 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({
- h: 1
- }).calendar(), 'ថ្ងៃនៈ ម៉ោង 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({
- d: 1
- }).calendar(), 'ស្អែក ម៉ោង 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({
- h: 1
- }).calendar(), 'ថ្ងៃនៈ ម៉ោង 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({
- d: 1
- }).calendar(), 'ម្សិលមិញ ម៉ោង 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), '今日 午前2時0分', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), '今日 午前2時25分', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), '今日 午前3時0分', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), '明日 午前2時0分', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), '今日 午前1時0分', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), '昨日 午前2時0分', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
- m = moment().add({
- d: i
- });
- assert.equal(m.calendar(), m.format('dddd [ម៉ោង] LT'), 'Today + ' + i + ' days current time');
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('[来週]dddd LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [ម៉ោង] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[来週]dddd LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [ម៉ោង] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[来週]dddd LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
-
for (i = 2; i < 7; i++) {
- m = moment().subtract({
- d: i
- });
- assert.equal(m.calendar(), m.format('dddd [សប្តាហ៍មុន] [ម៉ោង] LT'), 'Today - ' + i + ' days current time');
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('[前週]dddd LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [សប្តាហ៍មុន] [ម៉ោង] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[前週]dddd LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [សប្តាហ៍មុន] [ម៉ោង] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[前週]dddd LT'), 'Today - ' + i + ' days end of day');
}
});
test('calendar all else', function (assert) {
- var weeksAgo = moment().subtract({
- w: 1
- }),
- weeksFromNow = moment().add({
- w: 1
- });
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
- weeksAgo = moment().subtract({
- w: 2
- });
- weeksFromNow = moment().add({
- w: 2
- });
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
- assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
- assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
- assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
});
- test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2', 'Jan 15 2012 should be week 2');
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('ko');
+ localeModule('jv');
+
test('parse', function (assert) {
- var tests = '1월 1월_2월 2월_3월 3월_4월 4월_5월 5월_6월 6월_7월 7월_8월 8월_9월 9월_10월 10월_11월 11월_12월 12월'.split('_'), i;
+ var tests = 'Januari Jan_Februari Feb_Maret Mar_April Apr_Mei Mei_Juni Jun_Juli Jul_Agustus Ags_September Sep_Oktober Okt_Nopember Nop_Desember Des'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
}
});
- test('parse meridiem', function (assert) {
- var elements = [{
- expression : '1981년 9월 8일 오후 2시 30분',
- inputFormat : 'YYYY[년] M[월] D[일] A h[시] m[분]',
- outputFormat : 'A',
- expected : '오후'
- }, {
- expression : '1981년 9월 8일 오전 2시 30분',
- inputFormat : 'YYYY[년] M[월] D[일] A h[시] m[분]',
- outputFormat : 'A h시',
- expected : '오전 2시'
- }, {
- expression : '14시 30분',
- inputFormat : 'H[시] m[분]',
- outputFormat : 'A',
- expected : '오후'
- }, {
- expression : '오후 4시',
- inputFormat : 'A h[시]',
- outputFormat : 'H',
- expected : '16'
- }], i, l, it, actual;
-
-
- for (i = 0, l = elements.length; i < l; ++i) {
- it = elements[i];
- actual = moment(it.expression, it.inputFormat).format(it.outputFormat);
-
- assert.equal(
- actual,
- it.expected,
- '\'' + it.outputFormat + '\' of \'' + it.expression + '\' must be \'' + it.expected + '\' but was \'' + actual + '\'.'
- );
- }
- });
-
test('format', function (assert) {
var a = [
- ['YYYY년 MMMM Do dddd a h:mm:ss', '2010년 2월 14일 일요일 오후 3:25:50'],
- ['ddd A h', '일 오후 3'],
- ['M Mo MM MMMM MMM', '2 2일 02 2월 2월'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Minggu, Februari 14 2010, 3:25:50 sonten'],
+ ['ddd, hA', 'Min, 3sonten'],
+ ['M Mo MM MMMM MMM', '2 2 02 Februari Feb'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14일 14'],
- ['d do dddd ddd dd', '0 0일 일요일 일 일'],
- ['DDD DDDo DDDD', '45 45일 045'],
- ['w wo ww', '8 8일 08'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 Minggu Min Mg'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '7 7 07'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', '오후 오후'],
- ['일년 중 DDDo째 되는 날', '일년 중 45일째 되는 날'],
- ['LTS', '오후 3시 25분 50초'],
- ['L', '2010.02.14'],
- ['LL', '2010년 2월 14일'],
- ['LLL', '2010년 2월 14일 오후 3시 25분'],
- ['LLLL', '2010년 2월 14일 일요일 오후 3시 25분'],
- ['l', '2010.2.14'],
- ['ll', '2010년 2월 14일'],
- ['lll', '2010년 2월 14일 오후 3시 25분'],
- ['llll', '2010년 2월 14일 일 오후 3시 25분']
+ ['a A', 'sonten sonten'],
+ ['[the] DDDo [day of the year]', 'the 45 day of the year'],
+ ['LTS', '15.25.50'],
+ ['L', '14/02/2010'],
+ ['LL', '14 Februari 2010'],
+ ['LLL', '14 Februari 2010 pukul 15.25'],
+ ['LLLL', 'Minggu, 14 Februari 2010 pukul 15.25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 Feb 2010'],
+ ['lll', '14 Feb 2010 pukul 15.25'],
+ ['llll', 'Min, 14 Feb 2010 pukul 15.25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
- test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1일', '1일');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2일', '2일');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3일', '3일');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4일', '4일');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5일', '5일');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6일', '6일');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7일', '7일');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8일', '8일');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9일', '9일');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10일', '10일');
-
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11일', '11일');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12일', '12일');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13일', '13일');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14일', '14일');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15일', '15일');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16일', '16일');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17일', '17일');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18일', '18일');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19일', '19일');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20일', '20일');
-
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21일', '21일');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22일', '22일');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23일', '23일');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24일', '24일');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25일', '25일');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26일', '26일');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27일', '27일');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28일', '28일');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29일', '29일');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30일', '30일');
-
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31일', '31일');
- });
-
test('format month', function (assert) {
- var expected = '1월 1월_2월 2월_3월 3월_4월 4월_5월 5월_6월 6월_7월 7월_8월 8월_9월 9월_10월 10월_11월 11월_12월 12월'.split('_'), i;
+ var expected = 'Januari Jan_Februari Feb_Maret Mar_April Apr_Mei Mei_Juni Jun_Juli Jul_Agustus Ags_September Sep_Oktober Okt_Nopember Nop_Desember Des'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = '일요일 일 일_월요일 월 월_화요일 화 화_수요일 수 수_목요일 목 목_금요일 금 금_토요일 토 토'.split('_'), i;
+ var expected = 'Minggu Min Mg_Senen Sen Sn_Seloso Sel Sl_Rebu Reb Rb_Kemis Kem Km_Jemuwah Jem Jm_Septu Sep Sp'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), '몇초', '44초 = 몇초');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), '일분', '45초 = 일분');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), '일분', '89초 = 일분');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2분', '90초 = 2분');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44분', '44분 = 44분');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), '한시간', '45분 = 한시간');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), '한시간', '89분 = 한시간');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2시간', '90분 = 2시간');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5시간', '5시간 = 5시간');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21시간', '21시간 = 21시간');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), '하루', '22시간 = 하루');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), '하루', '35시간 = 하루');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2일', '36시간 = 2일');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), '하루', '하루 = 하루');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5일', '5일 = 5일');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25일', '25일 = 25일');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), '한달', '26일 = 한달');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), '한달', '30일 = 한달');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), '한달', '45일 = 한달');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2달', '46일 = 2달');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2달', '75일 = 2달');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3달', '76일 = 3달');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), '한달', '1달 = 한달');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5달', '5달 = 5달');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), '일년', '345일 = 일년');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2년', '548일 = 2년');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), '일년', '일년 = 일년');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5년', '5년 = 5년');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'sawetawis detik', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'setunggal menit', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'setunggal menit', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 menit', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 menit', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'setunggal jam', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'setunggal jam', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 jam', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 jam', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 jam', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'sedinten', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'sedinten', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dinten', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'sedinten', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dinten', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dinten', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'sewulan', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'sewulan', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'sewulan', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 wulan', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 wulan', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 wulan', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'sewulan', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 wulan', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'setaun', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 taun', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'setaun', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 taun', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), '몇초 후', 'prefix');
- assert.equal(moment(0).from(30000), '몇초 전', 'suffix');
+ assert.equal(moment(30000).from(0), 'wonten ing sawetawis detik', 'prefix');
+ assert.equal(moment(0).from(30000), 'sawetawis detik ingkang kepengker', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), '몇초 전', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'sawetawis detik ingkang kepengker', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), '몇초 후', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), '5일 후', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'wonten ing sawetawis detik', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'wonten ing 5 dinten', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), '오늘 오전 2시 0분', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), '오늘 오전 2시 25분', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), '오늘 오전 3시 0분', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), '내일 오전 2시 0분', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), '오늘 오전 1시 0분', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), '어제 오전 2시 0분', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Dinten puniko pukul 02.00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Dinten puniko pukul 02.25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Dinten puniko pukul 03.00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Mbenjang pukul 02.00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Dinten puniko pukul 01.00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Kala wingi pukul 02.00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('지난주 dddd LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [kepengker pukul] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('지난주 dddd LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [kepengker pukul] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('지난주 dddd LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [kepengker pukul] LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
+ // Monday is the first day of the week.
+ // The week that contains Jan 1st is the first week of the year.
+
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
});
- test('weeks year starting sunday format', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1일', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1일', 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2일', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2일', 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3일', 'Jan 15 2012 should be week 3');
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}
});
+ test('meridiem invariant', function (assert) {
+ var h, m, t1, t2;
+ for (h = 0; h < 24; ++h) {
+ for (m = 0; m < 60; m += 15) {
+ t1 = moment.utc([2000, 0, 1, h, m]);
+ t2 = moment(t1.format('A h:mm'), 'A h:mm');
+ assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
+ 'meridiem at ' + t1.format('HH:mm'));
+ }
+ }
+ });
+
test('strict ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('lb');
+ localeModule('ka');
test('parse', function (assert) {
- var tests = 'Januar Jan._Februar Febr._Mäerz Mrz._Abrëll Abr._Mee Mee_Juni Jun._Juli Jul._August Aug._September Sept._Oktober Okt._November Nov._Dezember Dez.'.split('_'), i;
+ var i,
+ tests = 'იანვარი იან_თებერვალი თებ_მარტი მარ_აპრილი აპრ_მაისი მაი_ივნისი ივნ_ივლისი ივლ_აგვისტო აგვ_სექტემბერი სექ_ოქტომბერი ოქტ_ნოემბერი ნოე_დეკემბერი დეკ'.split('_');
function equalTest(input, mmm, i) {
- assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ assert.equal(moment(input, mmm).month(), i, input + ' უნდა იყოს თვე ' + (i + 1));
}
for (i = 0; i < 12; i++) {
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, HH:mm:ss', 'Sonndeg, 14. Februar 2010, 15:25:50'],
- ['ddd, HH:mm', 'So., 15:25'],
- ['M Mo MM MMMM MMM', '2 2. 02 Februar Febr.'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. Sonndeg So. So'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '6 6. 06'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45. day of the year'],
- ['LTS', '15:25:50 Auer'],
- ['L', '14.02.2010'],
- ['LL', '14. Februar 2010'],
- ['LLL', '14. Februar 2010 15:25 Auer'],
- ['LLLL', 'Sonndeg, 14. Februar 2010 15:25 Auer'],
- ['l', '14.2.2010'],
- ['ll', '14. Febr. 2010'],
- ['lll', '14. Febr. 2010 15:25 Auer'],
- ['llll', 'So., 14. Febr. 2010 15:25 Auer']
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'კვირა, თებერვალი მე-14 2010, 3:25:50 pm'],
+ ['ddd, hA', 'კვი, 3PM'],
+ ['M Mo MM MMMM MMM', '2 მე-2 02 თებერვალი თებ'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 მე-14 14'],
+ ['d do dddd ddd dd', '0 0 კვირა კვი კვ'],
+ ['DDD DDDo DDDD', '45 45-ე 045'],
+ ['w wo ww', '7 მე-7 07'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['წლის DDDo დღე', 'წლის 45-ე დღე'],
+ ['LTS', '3:25:50 PM'],
+ ['L', '14/02/2010'],
+ ['LL', '14 თებერვალს 2010'],
+ ['LLL', '14 თებერვალს 2010 3:25 PM'],
+ ['LLLL', 'კვირა, 14 თებერვალს 2010 3:25 PM'],
+ ['l', '14/2/2010'],
+ ['ll', '14 თებ 2010'],
+ ['lll', '14 თებ 2010 3:25 PM'],
+ ['llll', 'კვი, 14 თებ 2010 3:25 PM']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
+
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-ლი', '1-ლი');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), 'მე-2', 'მე-2');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), 'მე-3', 'მე-3');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), 'მე-4', 'მე-4');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), 'მე-5', 'მე-5');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), 'მე-6', 'მე-6');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), 'მე-7', 'მე-7');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), 'მე-8', 'მე-8');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), 'მე-9', 'მე-9');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), 'მე-10', 'მე-10');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), 'მე-11', 'მე-11');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), 'მე-12', 'მე-12');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), 'მე-13', 'მე-13');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), 'მე-14', 'მე-14');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), 'მე-15', 'მე-15');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), 'მე-16', 'მე-16');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), 'მე-17', 'მე-17');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), 'მე-18', 'მე-18');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), 'მე-19', 'მე-19');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), 'მე-20', 'მე-20');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-ე', '21-ე');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-ე', '22-ე');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-ე', '23-ე');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-ე', '24-ე');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-ე', '25-ე');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-ე', '26-ე');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-ე', '27-ე');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-ე', '28-ე');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-ე', '29-ე');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-ე', '30-ე');
+
+ assert.equal(moment('2011 40', 'YYYY DDD').format('DDDo'), 'მე-40', 'მე-40');
+ assert.equal(moment('2011 50', 'YYYY DDD').format('DDDo'), '50-ე', '50-ე');
+ assert.equal(moment('2011 60', 'YYYY DDD').format('DDDo'), 'მე-60', 'მე-60');
+ assert.equal(moment('2011 100', 'YYYY DDD').format('DDDo'), 'მე-100', 'მე-100');
+ assert.equal(moment('2011 101', 'YYYY DDD').format('DDDo'), '101-ე', '101-ე');
+ });
+
test('format month', function (assert) {
- var expected = 'Januar Jan._Februar Febr._Mäerz Mrz._Abrëll Abr._Mee Mee_Juni Jun._Juli Jul._August Aug._September Sept._Oktober Okt._November Nov._Dezember Dez.'.split('_'), i;
+ var i,
+ expected = 'იანვარი იან_თებერვალი თებ_მარტი მარ_აპრილი აპრ_მაისი მაი_ივნისი ივნ_ივლისი ივლ_აგვისტო აგვ_სექტემბერი სექ_ოქტომბერი ოქტ_ნოემბერი ნოე_დეკემბერი დეკ'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'Sonndeg So. So_Méindeg Mé. Mé_Dënschdeg Dë. Dë_Mëttwoch Më. Më_Donneschdeg Do. Do_Freideg Fr. Fr_Samschdeg Sa. Sa'.split('_'), i;
+ var i,
+ expected = 'კვირა კვი კვ_ორშაბათი ორშ ორ_სამშაბათი სამ სა_ოთხშაბათი ოთხ ოთ_ხუთშაბათი ხუთ ხუ_პარასკევი პარ პა_შაბათი შაბ შა'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'e puer Sekonnen', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'eng Minutt', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'eng Minutt', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 Minutten', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 Minutten', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'eng Stonn', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'eng Stonn', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 Stonnen', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 Stonnen', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 Stonnen', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'een Dag', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'een Dag', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 Deeg', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'een Dag', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 Deeg', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 Deeg', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ee Mount', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ee Mount', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ee Mount', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 Méint', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 Méint', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 Méint', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ee Mount', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 Méint', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ee Joer', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 Joer', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ee Joer', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 Joer', '5 years = 5 years');
+
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'რამდენიმე წამი', '44 წამი = რამდენიმე წამი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'წუთი', '45 წამი = წუთი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'წუთი', '89 წამი = წუთი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 წუთი', '90 წამი = 2 წუთი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 წუთი', '44 წამი = 44 წუთი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'საათი', '45 წამი = საათი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'საათი', '89 წამი = საათი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 საათი', '90 წამი = 2 საათი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 საათი', '5 საათი = 5 საათი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 საათი', '21 საათი = 21 საათი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'დღე', '22 საათი = დღე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'დღე', '35 საათი = დღე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 დღე', '36 საათი = 2 დღე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'დღე', '1 დღე = დღე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 დღე', '5 დღე = 5 დღე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 დღე', '25 დღე = 25 დღე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'თვე', '26 დღე = თვე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'თვე', '30 დღე = თვე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'თვე', '45 დღე = თვე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 თვე', '46 დღე = 2 თვე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 თვე', '75 დღე = 2 თვე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 თვე', '76 დღე = 3 თვე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'თვე', '1 თვე = თვე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 თვე', '5 თვე = 5 თვე');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'წელი', '345 დღე = წელი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 წელი', '548 დღე = 2 წელი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'წელი', '1 წელი = წელი');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 წელი', '5 წელი = 5 წელი');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'an e puer Sekonnen', 'prefix');
- assert.equal(moment(0).from(30000), 'virun e puer Sekonnen', 'suffix');
+ assert.equal(moment(30000).from(0), 'რამდენიმე წამში', 'ში სუფიქსი');
+ assert.equal(moment(0).from(30000), 'რამდენიმე წამის წინ', 'წინ სუფიქსი');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'რამდენიმე წამის წინ', 'უნდა აჩვენოს როგორც წარსული');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'an e puer Sekonnen', 'in a few seconds');
- assert.equal(moment().add({d: 1}).fromNow(), 'an engem Dag', 'in one day');
- assert.equal(moment().add({d: 2}).fromNow(), 'an 2 Deeg', 'in 2 days');
- assert.equal(moment().add({d: 3}).fromNow(), 'an 3 Deeg', 'in 3 days');
- assert.equal(moment().add({d: 4}).fromNow(), 'a 4 Deeg', 'in 4 days');
- assert.equal(moment().add({d: 5}).fromNow(), 'a 5 Deeg', 'in 5 days');
- assert.equal(moment().add({d: 6}).fromNow(), 'a 6 Deeg', 'in 6 days');
- assert.equal(moment().add({d: 7}).fromNow(), 'a 7 Deeg', 'in 7 days');
- assert.equal(moment().add({d: 8}).fromNow(), 'an 8 Deeg', 'in 8 days');
- assert.equal(moment().add({d: 9}).fromNow(), 'an 9 Deeg', 'in 9 days');
- assert.equal(moment().add({d: 10}).fromNow(), 'an 10 Deeg', 'in 10 days');
- assert.equal(moment().add({y: 100}).fromNow(), 'an 100 Joer', 'in 100 years');
- assert.equal(moment().add({y: 400}).fromNow(), 'a 400 Joer', 'in 400 years');
+ assert.equal(moment().add({s: 30}).fromNow(), 'რამდენიმე წამში', 'რამდენიმე წამში');
+ assert.equal(moment().add({d: 5}).fromNow(), '5 დღეში', '5 დღეში');
});
- test('calendar last week', function (assert) {
- var i, m, weekday, datestring;
- for (i = 2; i < 7; i++) {
- m = moment().subtract({d: i});
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
- // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday)
- weekday = parseInt(m.format('d'), 10);
- datestring = (weekday === 2 || weekday === 4 ? '[Leschten] dddd [um] LT' : '[Leschte] dddd [um] LT');
+ assert.equal(moment(a).calendar(), 'დღეს 2:00 AM-ზე', 'დღეს ამავე დროს');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'დღეს 2:25 AM-ზე', 'ახლანდელ დროს დამატებული 25 წუთი');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'დღეს 3:00 AM-ზე', 'ახლანდელ დროს დამატებული 1 საათი');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'ხვალ 2:00 AM-ზე', 'ხვალ ამავე დროს');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'დღეს 1:00 AM-ზე', 'ახლანდელ დროს გამოკლებული 1 საათი');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'გუშინ 2:00 AM-ზე', 'გუშინ ამავე დროს');
+ });
- assert.equal(m.calendar(), m.format(datestring), 'Today + ' + i + ' days current time');
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('[შემდეგ] dddd LT[-ზე]'), 'დღეს + ' + i + ' დღე ახლანდელ დროს');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(datestring), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[შემდეგ] dddd LT[-ზე]'), 'დღეს + ' + i + ' დღე დღის დასაწყისში');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(datestring), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[შემდეგ] dddd LT[-ზე]'), 'დღეს + ' + i + ' დღე დღის დასასრულს');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('[წინა] dddd LT[-ზე]'), 'დღეს - ' + i + ' დღე ახლანდელ დროს');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('[წინა] dddd LT[-ზე]'), 'დღეს - ' + i + ' დღე დღის დასაწყისში');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('[წინა] dddd LT[-ზე]'), 'დღეს - ' + i + ' დღე დღის დასასრულს');
}
});
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 კვირის წინ');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '1 კვირაში');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 კვირის წინ');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '2 კვირაში');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'დეკ 26 2011 უნდა იყოს კვირა 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'იან 1 2012 უნდა იყოს კვირა 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'იან 2 2012 უნდა იყოს კვირა 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'იან 8 2012 უნდა იყოს კვირა 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'იან 9 2012 უნდა იყოს კვირა 3');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'იან 1 2007 უნდა იყოს კვირა 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'იან 7 2007 უნდა იყოს კვირა 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'იან 8 2007 უნდა იყოს კვირა 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'იან 14 2007 უნდა იყოს კვირა 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'იან 15 2007 უნდა იყოს კვირა 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'დეკ 31 2007 უნდა იყოს კვირა 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'იან 1 2008 უნდა იყოს კვირა 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'იან 6 2008 უნდა იყოს კვირა 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'იან 7 2008 უნდა იყოს კვირა 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'იან 13 2008 უნდა იყოს კვირა 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'იან 14 2008 უნდა იყოს კვირა 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'დეკ 30 2002 უნდა იყოს კვირა 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'იან 1 2003 უნდა იყოს კვირა 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'იან 5 2003 უნდა იყოს კვირა 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'იან 6 2003 უნდა იყოს კვირა 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'იან 12 2003 უნდა იყოს კვირა 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'იან 13 2003 უნდა იყოს კვირა 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'დეკ 29 2008 უნდა იყოს კვირა 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'იან 1 2009 უნდა იყოს კვირა 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'იან 4 2009 უნდა იყოს კვირა 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'იან 5 2009 უნდა იყოს კვირა 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'იან 11 2009 უნდა იყოს კვირა 2');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'იან 12 2009 უნდა იყოს კვირა 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'დეკ 28 2009 უნდა იყოს კვირა 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'იან 1 2010 უნდა იყოს კვირა 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'იან 3 2010 უნდა იყოს კვირა 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'იან 4 2010 უნდა იყოს კვირა 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'იან 10 2010 უნდა იყოს კვირა 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'იან 11 2010 უნდა იყოს კვირა 3');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'დეკ 27 2010 უნდა იყოს კვირა 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'იან 1 2011 უნდა იყოს კვირა 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'იან 2 2011 უნდა იყოს კვირა 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'იან 3 2011 უნდა იყოს კვირა 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'იან 9 2011 უნდა იყოს კვირა 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'იან 10 2011 უნდა იყოს კვირა 3');
+ });
+
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1-ლი', 'დეკ 26 2011 უნდა იყოს კვირა 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1-ლი', 'იან 1 2012 უნდა იყოს კვირა 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 მე-2', 'იან 2 2012 უნდა იყოს კვირა 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 მე-2', 'იან 8 2012 უნდა იყოს კვირა 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 მე-3', 'იან 9 2012 უნდა იყოს კვირა 3');
+ });
+
test('lenient ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('lt');
+ localeModule('kk');
test('parse', function (assert) {
- var tests = 'sausis sau_vasaris vas_kovas kov_balandis bal_gegužė geg_birželis bir_liepa lie_rugpjūtis rgp_rugsėjis rgs_spalis spa_lapkritis lap_gruodis grd'.split('_'), i;
+ var tests = 'Қаңтар Қаң_Ақпан Ақп_Наурыз Нау_Сәуір Сәу_Мамыр Мам_Маусым Мау_Шілде Шіл_Тамыз Там_Қыркүйек Қыр_Қазан Қаз_Қараша Қар_Желтоқсан Жел'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, h:mm:ss a', 'sekmadienis, 14-oji vasario 2010, 3:25:50 pm'],
- ['ddd, hA', 'Sek, 3PM'],
- ['M Mo MM MMMM MMM', '2 2-oji 02 vasaris vas'],
+ ['dddd, Do MMMM YYYY, HH:mm:ss', 'Жексенбі, 14-ші Ақпан 2010, 15:25:50'],
+ ['ddd, hA', 'Жек, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2-ші 02 Ақпан Ақп'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14-oji 14'],
- ['d do dddd ddd dd', '0 0-oji sekmadienis Sek S'],
- ['DDD DDDo DDDD', '45 45-oji 045'],
- ['w wo ww', '6 6-oji 06'],
+ ['D Do DD', '14 14-ші 14'],
+ ['d do dddd ddd dd', '0 0-ші Жексенбі Жек Жк'],
+ ['DDD DDDo DDDD', '45 45-ші 045'],
+ ['w wo ww', '7 7-ші 07'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['DDDo [metų diena]', '45-oji metų diena'],
+ ['[жылдың] DDDo [күні]', 'жылдың 45-ші күні'],
['LTS', '15:25:50'],
- ['L', '2010-02-14'],
- ['LL', '2010 m. vasaris 14 d.'],
- ['LLL', '2010 m. vasaris 14 d., 15:25 val.'],
- ['LLLL', '2010 m. vasaris 14 d., sekmadienis, 15:25 val.'],
- ['l', '2010-02-14'],
- ['ll', '2010 m. vasaris 14 d.'],
- ['lll', '2010 m. vasaris 14 d., 15:25 val.'],
- ['llll', '2010 m. vasaris 14 d., Sek, 15:25 val.']
+ ['L', '14.02.2010'],
+ ['LL', '14 Ақпан 2010'],
+ ['LLL', '14 Ақпан 2010 15:25'],
+ ['LLLL', 'Жексенбі, 14 Ақпан 2010 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14 Ақп 2010'],
+ ['lll', '14 Ақп 2010 15:25'],
+ ['llll', 'Жек, 14 Ақп 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-oji', '1-oji');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2-oji', '2-oji');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3-oji', '3-oji');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4-oji', '4-oji');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5-oji', '5-oji');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6-oji', '6-oji');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7-oji', '7-oji');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8-oji', '8-oji');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9-oji', '9-oji');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10-oji', '10-oji');
-
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11-oji', '11-oji');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12-oji', '12-oji');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13-oji', '13-oji');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14-oji', '14-oji');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15-oji', '15-oji');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16-oji', '16-oji');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17-oji', '17-oji');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18-oji', '18-oji');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19-oji', '19-oji');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20-oji', '20-oji');
-
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-oji', '21-oji');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-oji', '22-oji');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-oji', '23-oji');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-oji', '24-oji');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-oji', '25-oji');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-oji', '26-oji');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-oji', '27-oji');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-oji', '28-oji');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-oji', '29-oji');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-oji', '30-oji');
-
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31-oji', '31-oji');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-ші', '1st');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2-ші', '2nd');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3-ші', '3rd');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4-ші', '4th');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5-ші', '5th');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6-шы', '6th');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7-ші', '7th');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8-ші', '8th');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9-шы', '9th');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10-шы', '10th');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11-ші', '11th');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12-ші', '12th');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13-ші', '13th');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14-ші', '14th');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15-ші', '15th');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16-шы', '16th');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17-ші', '17th');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18-ші', '18th');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19-шы', '19th');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20-шы', '20th');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-ші', '21st');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-ші', '22nd');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-ші', '23rd');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-ші', '24th');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-ші', '25th');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-шы', '26th');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-ші', '27th');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-ші', '28th');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-шы', '29th');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-шы', '30th');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31-ші', '31st');
});
test('format month', function (assert) {
- var expected = 'sausis sau_vasaris vas_kovas kov_balandis bal_gegužė geg_birželis bir_liepa lie_rugpjūtis rgp_rugsėjis rgs_spalis spa_lapkritis lap_gruodis grd'.split('_'), i;
+ var expected = 'Қаңтар Қаң_Ақпан Ақп_Наурыз Нау_Сәуір Сәу_Мамыр Мам_Маусым Мау_Шілде Шіл_Тамыз Там_Қыркүйек Қыр_Қазан Қаз_Қараша Қар_Желтоқсан Жел'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'sekmadienis Sek S_pirmadienis Pir P_antradienis Ant A_trečiadienis Tre T_ketvirtadienis Ket K_penktadienis Pen Pn_šeštadienis Šeš Š'.split('_'), i;
- for (i = 0; i < expected.length; i++) {
- assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
- }
- });
-
- test('format week on US calendar', function (assert) {
- // Tests, whether the weekday names are correct, even if the week does not start on Monday
- moment.locale('lt', {week: {dow: 0, doy: 6}});
- var expected = 'sekmadienis Sek S_pirmadienis Pir P_antradienis Ant A_trečiadienis Tre T_ketvirtadienis Ket K_penktadienis Pen Pn_šeštadienis Šeš Š'.split('_'), i;
+ var expected = 'Жексенбі Жек Жк_Дүйсенбі Дүй Дй_Сейсенбі Сей Сй_Сәрсенбі Сәр Ср_Бейсенбі Бей Бй_Жұма Жұм Жм_Сенбі Сен Сн'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
- moment.locale('lt', {week: {dow: 1, doy: 4}});
});
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'kelios sekundės', '44 seconds = seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minutė', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minutė', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutės', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 10}), true), '10 minučių', '10 minutes = 10 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 11}), true), '11 minučių', '11 minutes = 11 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 19}), true), '19 minučių', '19 minutes = 19 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 20}), true), '20 minučių', '20 minutes = 20 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutės', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'valanda', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'valanda', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 valandos', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 valandos', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 10}), true), '10 valandų', '10 hours = 10 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 valandos', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'diena', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'diena', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dienos', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'diena', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dienos', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 10}), true), '10 dienų', '10 days = 10 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dienos', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mėnuo', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mėnuo', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mėnuo', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mėnesiai', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mėnesiai', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mėnesiai', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mėnuo', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mėnesiai', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 10}), true), '10 mėnesių', '10 months = 10 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'metai', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 metai', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'metai', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 metai', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'бірнеше секунд', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'бір минут', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'бір минут', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 минут', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 минут', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'бір сағат', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'бір сағат', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 сағат', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 сағат', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 сағат', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'бір күн', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'бір күн', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 күн', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'бір күн', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 күн', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 күн', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'бір ай', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'бір ай', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'бір ай', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 ай', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 ай', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 ай', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'бір ай', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 ай', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'бір жыл', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 жыл', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'бір жыл', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 жыл', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'po kelių sekundžių', 'prefix');
- assert.equal(moment(0).from(30000), 'prieš kelias sekundes', 'suffix');
+ assert.equal(moment(30000).from(0), 'бірнеше секунд ішінде', 'prefix');
+ assert.equal(moment(0).from(30000), 'бірнеше секунд бұрын', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'prieš kelias sekundes', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'бірнеше секунд бұрын', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'po kelių sekundžių', 'in seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'po 5 dienų', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'бірнеше секунд ішінде', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), '5 күн ішінде', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Šiandien 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Šiandien 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Šiandien 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Rytoj 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Šiandien 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Vakar 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Бүгін сағат 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Бүгін сағат 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Бүгін сағат 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Ертең сағат 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Бүгін сағат 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Кеше сағат 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [сағат] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [сағат] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [сағат] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[Praėjusį] dddd LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[Өткен аптаның] dddd [сағат] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[Praėjusį] dddd LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[Өткен аптаның] dddd [сағат] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[Praėjusį] dddd LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[Өткен аптаның] dddd [сағат] LT'), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 25]).week(), 52, 'Dec 25 2011 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52-oji', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1-oji', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1-oji', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2-oji', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2-oji', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1-ші', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2-ші', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2-ші', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3-ші', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3-ші', 'Jan 15 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('lv');
+ localeModule('km');
test('parse', function (assert) {
- var tests = 'janvāris jan_februāris feb_marts mar_aprīlis apr_maijs mai_jūnijs jūn_jūlijs jūl_augusts aug_septembris sep_oktobris okt_novembris nov_decembris dec'.split('_'), i;
+ var tests = 'មករា មករា_កុម្ភៈ កុម្ភៈ_មិនា មិនា_មេសា មេសា_ឧសភា ឧសភា_មិថុនា មិថុនា_កក្កដា កក្កដា_សីហា សីហា_កញ្ញា កញ្ញា_តុលា តុលា_វិច្ឆិកា វិច្ឆិកា_ធ្នូ ធ្នូ'.split('_'),
+ i;
+
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, h:mm:ss a', 'svētdiena, 14. februāris 2010, 3:25:50 pm'],
- ['ddd, hA', 'Sv, 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 februāris feb'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. svētdiena Sv Sv'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '6 6. 06'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45. day of the year'],
- ['LTS', '15:25:50'],
- ['L', '14.02.2010.'],
- ['LL', '2010. gada 14. februāris'],
- ['LLL', '2010. gada 14. februāris, 15:25'],
- ['LLLL', '2010. gada 14. februāris, svētdiena, 15:25'],
- ['l', '14.2.2010.'],
- ['ll', '2010. gada 14. feb'],
- ['lll', '2010. gada 14. feb, 15:25'],
- ['llll', '2010. gada 14. feb, Sv, 15:25']
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'អាទិត្យ, កុម្ភៈ 14 2010, 3:25:50 pm'],
+ ['ddd, hA', 'អាទិត្យ, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2 02 កុម្ភៈ កុម្ភៈ'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 អាទិត្យ អាទិត្យ អាទិត្យ'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '6 6 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45 day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '14/02/2010'],
+ ['LL', '14 កុម្ភៈ 2010'],
+ ['LLL', '14 កុម្ភៈ 2010 15:25'],
+ ['LLLL', 'អាទិត្យ, 14 កុម្ភៈ 2010 15:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 កុម្ភៈ 2010'],
+ ['lll', '14 កុម្ភៈ 2010 15:25'],
+ ['llll', 'អាទិត្យ, 14 កុម្ភៈ 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1st');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2nd');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3rd');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4th');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5th');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6th');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7th');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8th');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9th');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10th');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11th');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12th');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13th');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14th');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15th');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16th');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17th');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18th');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19th');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20th');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21st');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22nd');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23rd');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24th');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25th');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26th');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27th');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28th');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29th');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30th');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31st');
});
test('format month', function (assert) {
- var expected = 'janvāris jan_februāris feb_marts mar_aprīlis apr_maijs mai_jūnijs jūn_jūlijs jūl_augusts aug_septembris sep_oktobris okt_novembris nov_decembris dec'.split('_'), i;
+ var expected = 'មករា មករា_កុម្ភៈ កុម្ភៈ_មិនា មិនា_មេសា មេសា_ឧសភា ឧសភា_មិថុនា មិថុនា_កក្កដា កក្កដា_សីហា សីហា_កញ្ញា កញ្ញា_តុលា តុលា_វិច្ឆិកា វិច្ឆិកា_ធ្នូ ធ្នូ'.split('_'),
+ i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'svētdiena Sv Sv_pirmdiena P P_otrdiena O O_trešdiena T T_ceturtdiena C C_piektdiena Pk Pk_sestdiena S S'.split('_'), i;
+ var expected = 'អាទិត្យ អាទិត្យ អាទិត្យ_ច័ន្ទ ច័ន្ទ ច័ន្ទ_អង្គារ អង្គារ អង្គារ_ពុធ ពុធ ពុធ_ព្រហស្បតិ៍ ព្រហស្បតិ៍ ព្រហស្បតិ៍_សុក្រ សុក្រ សុក្រ_សៅរ៍ សៅរ៍ សៅរ៍'.split('_'),
+ i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
});
- // Includes testing the cases of withoutSuffix = true and false.
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'dažas sekundes', '44 seconds = seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), false), 'pirms dažām sekundēm', '44 seconds with suffix = seconds ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minūte', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), false), 'pirms minūtes', '45 seconds with suffix = a minute ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minūte', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: -89}), false), 'pēc minūtes', '89 seconds with suffix/prefix = in a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minūtes', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), false), 'pirms 2 minūtēm', '90 seconds with suffix = 2 minutes ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minūtes', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), false), 'pirms 44 minūtēm', '44 minutes with suffix = 44 minutes ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'stunda', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), false), 'pirms stundas', '45 minutes with suffix = an hour ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'stunda', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 stundas', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: -90}), false), 'pēc 2 stundām', '90 minutes with suffix = in 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 stundas', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), false), 'pirms 5 stundām', '5 hours with suffix = 5 hours ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 stunda', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), false), 'pirms 21 stundas', '21 hours with suffix = 21 hours ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'diena', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), false), 'pirms dienas', '22 hours with suffix = a day ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'diena', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dienas', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), false), 'pirms 2 dienām', '36 hours with suffix = 2 days ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'diena', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dienas', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), false), 'pirms 5 dienām', '5 days with suffix = 5 days ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dienas', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), false), 'pirms 25 dienām', '25 days with suffix = 25 days ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mēnesis', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), false), 'pirms mēneša', '26 days with suffix = a month ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mēnesis', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mēnesis', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mēneši', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), false), 'pirms 2 mēnešiem', '46 days with suffix = 2 months ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mēneši', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mēneši', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), false), 'pirms 3 mēnešiem', '76 days with suffix = 3 months ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mēnesis', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mēneši', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), false), 'pirms 5 mēnešiem', '5 months with suffix = 5 months ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'gads', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), false), 'pirms gada', '345 days with suffix = a year ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 gadi', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), false), 'pirms 2 gadiem', '548 days with suffix = 2 years ago');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'gads', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 gadi', '5 years = 5 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), false), 'pirms 5 gadiem', '5 years with suffix = 5 years ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'ប៉ុន្មានវិនាទី', '44 seconds = ប៉ុន្មានវិនាទី');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'មួយនាទី', '45 seconds = មួយនាទី');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'មួយនាទី', '89 seconds = មួយនាទី');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 នាទី', '90 seconds = 2 នាទី');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 នាទី', '44 minutes = 44 នាទី');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'មួយម៉ោង', '45 minutes = មួយម៉ោង');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'មួយម៉ោង', '89 minutes = មួយម៉ោង');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ម៉ោង', '90 minutes = 2 ម៉ោង');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ម៉ោង', '5 hours = 5 ម៉ោង');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 ម៉ោង', '21 hours = 21 ម៉ោង');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'មួយថ្ងៃ', '22 hours = មួយថ្ងៃ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'មួយថ្ងៃ', '35 hours = មួយថ្ងៃ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 ថ្ងៃ', '36 hours = 2 ថ្ងៃ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'មួយថ្ងៃ', '1 day = មួយថ្ងៃ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 ថ្ងៃ', '5 days = 5 ថ្ងៃ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 ថ្ងៃ', '25 days = 25 ថ្ងៃ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'មួយខែ', '26 days = មួយខែ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'មួយខែ', '30 days = មួយខែ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'មួយខែ', '43 days = មួយខែ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 ខែ', '46 days = 2 ខែ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 ខែ', '75 days = 2 ខែ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 ខែ', '76 days = 3 ខែ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'មួយខែ', '1 month = មួយខែ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 ខែ', '5 months = 5 ខែ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'មួយឆ្នាំ', '345 days = មួយឆ្នាំ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ឆ្នាំ', '548 days = 2 ឆ្នាំ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'មួយឆ្នាំ', '1 year = មួយឆ្នាំ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ឆ្នាំ', '5 years = 5 ឆ្នាំ');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'pēc dažām sekundēm', 'prefix');
- assert.equal(moment(0).from(30000), 'pirms dažām sekundēm', 'suffix');
+ assert.equal(moment(30000).from(0), 'ប៉ុន្មានវិនាទីទៀត', 'prefix');
+ assert.equal(moment(0).from(30000), 'ប៉ុន្មានវិនាទីមុន', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'pirms dažām sekundēm', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'ប៉ុន្មានវិនាទីមុន', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'pēc dažām sekundēm', 'in seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'pēc 5 dienām', 'in 5 days');
+ assert.equal(moment().add({
+ s: 30
+ }).fromNow(), 'ប៉ុន្មានវិនាទីទៀត', 'in a few seconds');
+ assert.equal(moment().add({
+ d: 5
+ }).fromNow(), '5 ថ្ងៃទៀត', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Šodien pulksten 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Šodien pulksten 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Šodien pulksten 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Rīt pulksten 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Šodien pulksten 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Vakar pulksten 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'ថ្ងៃនេះ ម៉ោង 02:00', 'today at the same time');
+ assert.equal(moment(a).add({
+ m: 25
+ }).calendar(), 'ថ្ងៃនេះ ម៉ោង 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({
+ h: 1
+ }).calendar(), 'ថ្ងៃនេះ ម៉ោង 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({
+ d: 1
+ }).calendar(), 'ស្អែក ម៉ោង 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({
+ h: 1
+ }).calendar(), 'ថ្ងៃនេះ ម៉ោង 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({
+ d: 1
+ }).calendar(), 'ម្សិលមិញ ម៉ោង 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
- m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [pulksten] LT'), 'Today + ' + i + ' days current time');
+ m = moment().add({
+ d: i
+ });
+ assert.equal(m.calendar(), m.format('dddd [ម៉ោង] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [pulksten] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [ម៉ោង] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [pulksten] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [ម៉ោង] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
- m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[Pagājušā] dddd [pulksten] LT'), 'Today - ' + i + ' days current time');
+ m = moment().subtract({
+ d: i
+ });
+ assert.equal(m.calendar(), m.format('dddd [សប្តាហ៍មុន] [ម៉ោង] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[Pagājušā] dddd [pulksten] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [សប្តាហ៍មុន] [ម៉ោង] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[Pagājušā] dddd [pulksten] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [សប្តាហ៍មុន] [ម៉ោង] LT'), 'Today - ' + i + ' days end of day');
}
});
test('calendar all else', function (assert) {
- var weeksAgo = moment().subtract({w: 1}),
- weeksFromNow = moment().add({w: 1});
+ var weeksAgo = moment().subtract({
+ w: 1
+ }),
+ weeksFromNow = moment().add({
+ w: 1
+ });
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
- weeksAgo = moment().subtract({w: 2});
- weeksFromNow = moment().add({w: 2});
+ weeksAgo = moment().subtract({
+ w: 2
+ });
+ weeksFromNow = moment().add({
+ w: 2
+ });
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
- assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
- assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
- assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('me');
+ localeModule('ko');
test('parse', function (assert) {
- var tests = 'januar jan._februar feb._mart mar._april apr._maj maj_jun jun_jul jul_avgust avg._septembar sep._oktobar okt._novembar nov._decembar dec.'.split('_'),
- i;
+ var tests = '1월 1월_2월 2월_3월 3월_4월 4월_5월 5월_6월 6월_7월 7월_8월 8월_9월 9월_10월 10월_11월 11월_12월 12월'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
}
});
+ test('parse meridiem', function (assert) {
+ var elements = [{
+ expression : '1981년 9월 8일 오후 2시 30분',
+ inputFormat : 'YYYY[년] M[월] D[일] A h[시] m[분]',
+ outputFormat : 'A',
+ expected : '오후'
+ }, {
+ expression : '1981년 9월 8일 오전 2시 30분',
+ inputFormat : 'YYYY[년] M[월] D[일] A h[시] m[분]',
+ outputFormat : 'A h시',
+ expected : '오전 2시'
+ }, {
+ expression : '14시 30분',
+ inputFormat : 'H[시] m[분]',
+ outputFormat : 'A',
+ expected : '오후'
+ }, {
+ expression : '오후 4시',
+ inputFormat : 'A h[시]',
+ outputFormat : 'H',
+ expected : '16'
+ }], i, l, it, actual;
+
+
+ for (i = 0, l = elements.length; i < l; ++i) {
+ it = elements[i];
+ actual = moment(it.expression, it.inputFormat).format(it.outputFormat);
+
+ assert.equal(
+ actual,
+ it.expected,
+ '\'' + it.outputFormat + '\' of \'' + it.expression + '\' must be \'' + it.expected + '\' but was \'' + actual + '\'.'
+ );
+ }
+ });
+
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, h:mm:ss a', 'nedjelja, 14. februar 2010, 3:25:50 pm'],
- ['ddd, hA', 'ned., 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 februar feb.'],
+ ['YYYY년 MMMM Do dddd a h:mm:ss', '2010년 2월 14일 일요일 오후 3:25:50'],
+ ['ddd A h', '일 오후 3'],
+ ['M Mo MM MMMM MMM', '2 2일 02 2월 2월'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. nedjelja ned. ne'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '7 7. 07'],
+ ['D Do DD', '14 14일 14'],
+ ['d do dddd ddd dd', '0 0일 일요일 일 일'],
+ ['DDD DDDo DDDD', '45 45일 045'],
+ ['w wo ww', '8 8일 08'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45. day of the year'],
- ['LTS', '15:25:50'],
- ['L', '14. 02. 2010'],
- ['LL', '14. februar 2010'],
- ['LLL', '14. februar 2010 15:25'],
- ['LLLL', 'nedjelja, 14. februar 2010 15:25'],
- ['l', '14. 2. 2010'],
- ['ll', '14. feb. 2010'],
- ['lll', '14. feb. 2010 15:25'],
- ['llll', 'ned., 14. feb. 2010 15:25']
+ ['a A', '오후 오후'],
+ ['일년 중 DDDo째 되는 날', '일년 중 45일째 되는 날'],
+ ['LTS', '오후 3시 25분 50초'],
+ ['L', '2010.02.14'],
+ ['LL', '2010년 2월 14일'],
+ ['LLL', '2010년 2월 14일 오후 3시 25분'],
+ ['LLLL', '2010년 2월 14일 일요일 오후 3시 25분'],
+ ['l', '2010.2.14'],
+ ['ll', '2010년 2월 14일'],
+ ['lll', '2010년 2월 14일 오후 3시 25분'],
+ ['llll', '2010년 2월 14일 일 오후 3시 25분']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1일', '1일');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2일', '2일');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3일', '3일');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4일', '4일');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5일', '5일');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6일', '6일');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7일', '7일');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8일', '8일');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9일', '9일');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10일', '10일');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11일', '11일');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12일', '12일');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13일', '13일');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14일', '14일');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15일', '15일');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16일', '16일');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17일', '17일');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18일', '18일');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19일', '19일');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20일', '20일');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21일', '21일');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22일', '22일');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23일', '23일');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24일', '24일');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25일', '25일');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26일', '26일');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27일', '27일');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28일', '28일');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29일', '29일');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30일', '30일');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31일', '31일');
});
test('format month', function (assert) {
- var expected = 'januar jan._februar feb._mart mar._april apr._maj maj_jun jun_jul jul_avgust avg._septembar sep._oktobar okt._novembar nov._decembar dec.'.split('_'),
- i;
+ var expected = '1월 1월_2월 2월_3월 3월_4월 4월_5월 5월_6월 6월_7월 7월_8월 8월_9월 9월_10월 10월_11월 11월_12월 12월'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'nedjelja ned. ne_ponedjeljak pon. po_utorak uto. ut_srijeda sri. sr_četvrtak čet. če_petak pet. pe_subota sub. su'.split('_'),
- i;
+ var expected = '일요일 일 일_월요일 월 월_화요일 화 화_수요일 수 수_목요일 목 목_금요일 금 금_토요일 토 토'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'nekoliko sekundi', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'jedan minut', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'jedan minut', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuta', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuta', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'jedan sat', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'jedan sat', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 sata', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 sati', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 sati', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'dan', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'dan', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dana', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'dan', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dana', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dana', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mjesec', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mjesec', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mjesec', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mjeseca', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mjeseca', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mjeseca', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mjesec', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mjeseci', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'godinu', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 godine', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'godinu', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 godina', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), '몇초', '44초 = 몇초');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), '일분', '45초 = 일분');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), '일분', '89초 = 일분');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2분', '90초 = 2분');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44분', '44분 = 44분');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), '한시간', '45분 = 한시간');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), '한시간', '89분 = 한시간');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2시간', '90분 = 2시간');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5시간', '5시간 = 5시간');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21시간', '21시간 = 21시간');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), '하루', '22시간 = 하루');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), '하루', '35시간 = 하루');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2일', '36시간 = 2일');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), '하루', '하루 = 하루');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5일', '5일 = 5일');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25일', '25일 = 25일');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), '한달', '26일 = 한달');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), '한달', '30일 = 한달');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), '한달', '45일 = 한달');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2달', '46일 = 2달');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2달', '75일 = 2달');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3달', '76일 = 3달');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), '한달', '1달 = 한달');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5달', '5달 = 5달');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), '일년', '345일 = 일년');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2년', '548일 = 2년');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), '일년', '일년 = 일년');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5년', '5년 = 5년');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'za nekoliko sekundi', 'prefix');
- assert.equal(moment(0).from(30000), 'prije nekoliko sekundi', 'prefix');
+ assert.equal(moment(30000).from(0), '몇초 후', 'prefix');
+ assert.equal(moment(0).from(30000), '몇초 전', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'prije nekoliko sekundi', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), '몇초 전', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'za nekoliko sekundi', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'za 5 dana', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), '몇초 후', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), '5일 후', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'danas u 2:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'danas u 2:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'danas u 3:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'sjutra u 2:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'danas u 1:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'juče u 2:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), '오늘 오전 2시 0분', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), '오늘 오전 2시 25분', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), '오늘 오전 3시 0분', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), '내일 오전 2시 0분', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), '오늘 오전 1시 0분', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), '어제 오전 2시 0분', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
-
- function makeFormat(d) {
- switch (d.day()) {
- case 0:
- return '[u] [nedjelju] [u] LT';
- case 3:
- return '[u] [srijedu] [u] LT';
- case 6:
- return '[u] [subotu] [u] LT';
- case 1:
- case 2:
- case 4:
- case 5:
- return '[u] dddd [u] LT';
- }
- }
-
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
-
- function makeFormat(d) {
- var lastWeekDay = [
- '[prošle] [nedjelje] [u] LT',
- '[prošlog] [ponedjeljka] [u] LT',
- '[prošlog] [utorka] [u] LT',
- '[prošle] [srijede] [u] LT',
- '[prošlog] [četvrtka] [u] LT',
- '[prošlog] [petka] [u] LT',
- '[prošle] [subote] [u] LT'
- ];
-
- return lastWeekDay[d.day()];
- }
-
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('지난주 dddd LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('지난주 dddd LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('지난주 dddd LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- // Monday is the first day of the week.
- // The week that contains Jan 1st is the first week of the year.
-
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
});
- test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1.', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1.', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2.', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2.', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3.', 'Jan 9 2012 should be week 3');
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1일', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1일', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2일', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2일', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3일', 'Jan 15 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('mk');
+ localeModule('lb');
test('parse', function (assert) {
- var tests = 'јануари јан_февруари фев_март мар_април апр_мај мај_јуни јун_јули јул_август авг_септември сеп_октомври окт_ноември ное_декември дек'.split('_'), i;
+ var tests = 'Januar Jan._Februar Febr._Mäerz Mrz._Abrëll Abr._Mee Mee_Juni Jun._Juli Jul._August Aug._September Sept._Oktober Okt._November Nov._Dezember Dez.'.split('_'), i;
+
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
+
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, H:mm:ss', 'недела, февруари 14-ти 2010, 15:25:50'],
- ['ddd, hA', 'нед, 3PM'],
- ['M Mo MM MMMM MMM', '2 2-ри 02 февруари фев'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14-ти 14'],
- ['d do dddd ddd dd', '0 0-ев недела нед нe'],
- ['DDD DDDo DDDD', '45 45-ти 045'],
- ['w wo ww', '7 7-ми 07'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45-ти day of the year'],
- ['LTS', '15:25:50'],
- ['L', '14.02.2010'],
- ['LL', '14 февруари 2010'],
- ['LLL', '14 февруари 2010 15:25'],
- ['LLLL', 'недела, 14 февруари 2010 15:25'],
- ['l', '14.2.2010'],
- ['ll', '14 фев 2010'],
- ['lll', '14 фев 2010 15:25'],
- ['llll', 'нед, 14 фев 2010 15:25']
+ ['dddd, Do MMMM YYYY, HH:mm:ss', 'Sonndeg, 14. Februar 2010, 15:25:50'],
+ ['ddd, HH:mm', 'So., 15:25'],
+ ['M Mo MM MMMM MMM', '2 2. 02 Februar Febr.'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. Sonndeg So. So'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['LTS', '15:25:50 Auer'],
+ ['L', '14.02.2010'],
+ ['LL', '14. Februar 2010'],
+ ['LLL', '14. Februar 2010 15:25 Auer'],
+ ['LLLL', 'Sonndeg, 14. Februar 2010 15:25 Auer'],
+ ['l', '14.2.2010'],
+ ['ll', '14. Febr. 2010'],
+ ['lll', '14. Febr. 2010 15:25 Auer'],
+ ['llll', 'So., 14. Febr. 2010 15:25 Auer']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
- test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-ви', '1-ви');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2-ри', '2-ри');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3-ти', '3-ти');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4-ти', '4-ти');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5-ти', '5-ти');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6-ти', '6-ти');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7-ми', '7-ми');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8-ми', '8-ми');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9-ти', '9-ти');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10-ти', '10-ти');
-
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11-ти', '11-ти');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12-ти', '12-ти');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13-ти', '13-ти');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14-ти', '14-ти');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15-ти', '15-ти');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16-ти', '16-ти');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17-ти', '17-ти');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18-ти', '18-ти');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19-ти', '19-ти');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20-ти', '20-ти');
-
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-ви', '21-ви');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-ри', '22-ри');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-ти', '23-ти');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-ти', '24-ти');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-ти', '25-ти');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-ти', '26-ти');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-ми', '27-ми');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-ми', '28-ми');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-ти', '29-ти');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-ти', '30-ти');
-
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31-ви', '31-ви');
- });
-
test('format month', function (assert) {
- var expected = 'јануари јан_февруари фев_март мар_април апр_мај мај_јуни јун_јули јул_август авг_септември сеп_октомври окт_ноември ное_декември дек'.split('_'), i;
+ var expected = 'Januar Jan._Februar Febr._Mäerz Mrz._Abrëll Abr._Mee Mee_Juni Jun._Juli Jul._August Aug._September Sept._Oktober Okt._November Nov._Dezember Dez.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'недела нед нe_понеделник пон пo_вторник вто вт_среда сре ср_четврток чет че_петок пет пе_сабота саб сa'.split('_'), i;
+ var expected = 'Sonndeg So. So_Méindeg Mé. Mé_Dënschdeg Dë. Dë_Mëttwoch Më. Më_Donneschdeg Do. Do_Freideg Fr. Fr_Samschdeg Sa. Sa'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'неколку секунди', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'минута', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'минута', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 минути', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 минути', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'час', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'час', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 часа', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 часа', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 часа', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ден', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ден', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 дена', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ден', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 дена', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 дена', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'месец', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'месец', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'месец', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 месеци', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 месеци', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 месеци', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'месец', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 месеци', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'година', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 години', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'година', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 години', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'e puer Sekonnen', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'eng Minutt', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'eng Minutt', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 Minutten', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 Minutten', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'eng Stonn', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'eng Stonn', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 Stonnen', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 Stonnen', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 Stonnen', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'een Dag', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'een Dag', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 Deeg', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'een Dag', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 Deeg', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 Deeg', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ee Mount', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ee Mount', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ee Mount', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 Méint', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 Méint', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 Méint', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ee Mount', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 Méint', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ee Joer', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 Joer', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ee Joer', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 Joer', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'после неколку секунди', 'prefix');
- assert.equal(moment(0).from(30000), 'пред неколку секунди', 'suffix');
- });
-
- test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'пред неколку секунди', 'now from now should display as in the past');
+ assert.equal(moment(30000).from(0), 'an e puer Sekonnen', 'prefix');
+ assert.equal(moment(0).from(30000), 'virun e puer Sekonnen', 'suffix');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'после неколку секунди', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'после 5 дена', 'in 5 days');
- });
-
- test('calendar day', function (assert) {
- var a = moment().hours(2).minutes(0).seconds(0);
-
- assert.equal(moment(a).calendar(), 'Денес во 2:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Денес во 2:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Денес во 3:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Утре во 2:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Денес во 1:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Вчера во 2:00', 'yesterday at the same time');
- });
-
- test('calendar next week', function (assert) {
- var i, m;
- for (i = 2; i < 7; i++) {
- m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [во] LT'), 'Today + ' + i + ' days current time');
- m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [во] LT'), 'Today + ' + i + ' days beginning of day');
- m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [во] LT'), 'Today + ' + i + ' days end of day');
- }
+ assert.equal(moment().add({s: 30}).fromNow(), 'an e puer Sekonnen', 'in a few seconds');
+ assert.equal(moment().add({d: 1}).fromNow(), 'an engem Dag', 'in one day');
+ assert.equal(moment().add({d: 2}).fromNow(), 'an 2 Deeg', 'in 2 days');
+ assert.equal(moment().add({d: 3}).fromNow(), 'an 3 Deeg', 'in 3 days');
+ assert.equal(moment().add({d: 4}).fromNow(), 'a 4 Deeg', 'in 4 days');
+ assert.equal(moment().add({d: 5}).fromNow(), 'a 5 Deeg', 'in 5 days');
+ assert.equal(moment().add({d: 6}).fromNow(), 'a 6 Deeg', 'in 6 days');
+ assert.equal(moment().add({d: 7}).fromNow(), 'a 7 Deeg', 'in 7 days');
+ assert.equal(moment().add({d: 8}).fromNow(), 'an 8 Deeg', 'in 8 days');
+ assert.equal(moment().add({d: 9}).fromNow(), 'an 9 Deeg', 'in 9 days');
+ assert.equal(moment().add({d: 10}).fromNow(), 'an 10 Deeg', 'in 10 days');
+ assert.equal(moment().add({y: 100}).fromNow(), 'an 100 Joer', 'in 100 years');
+ assert.equal(moment().add({y: 400}).fromNow(), 'a 400 Joer', 'in 400 years');
});
test('calendar last week', function (assert) {
- var i, m;
-
- function makeFormat(d) {
- switch (d.day()) {
- case 0:
- case 3:
- case 6:
- return '[Во изминатата] dddd [во] LT';
- case 1:
- case 2:
- case 4:
- case 5:
- return '[Во изминатиот] dddd [во] LT';
- }
- }
-
+ var i, m, weekday, datestring;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
+
+ // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday)
+ weekday = parseInt(m.format('d'), 10);
+ datestring = (weekday === 2 || weekday === 4 ? '[Leschten] dddd [um] LT' : '[Leschte] dddd [um] LT');
+
+ assert.equal(m.calendar(), m.format(datestring), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format(datestring), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format(datestring), 'Today + ' + i + ' days end of day');
}
});
- test('calendar all else', function (assert) {
- var weeksAgo = moment().subtract({w: 1}),
- weeksFromNow = moment().add({w: 1});
-
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
-
- weeksAgo = moment().subtract({w: 2});
- weeksFromNow = moment().add({w: 2});
-
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
- });
-
- test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
- });
-
- test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
- });
-
- test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
- assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
- });
-
- test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
- assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
- });
-
- test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
- assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
- });
-
- test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
- });
-
- test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
- });
-
- test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1-ви', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1-ви', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2-ри', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2-ри', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3-ти', 'Jan 9 2012 should be week 3');
- });
-
test('lenient ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('ml');
+ localeModule('lo');
test('parse', function (assert) {
- var tests = 'à´\9cà´¨àµ\81വരി à´\9cà´¨àµ\81._à´«àµ\86à´¬àµ\8dà´°àµ\81വരി à´«àµ\86à´¬àµ\8dà´°àµ\81._മാർà´\9aàµ\8dà´\9aàµ\8d മാർ._à´\8fà´ªàµ\8dരിൽ à´\8fà´ªàµ\8dà´°à´¿._à´®àµ\87à´¯àµ\8d à´®àµ\87à´¯àµ\8d_à´\9càµ\82ൺ à´\9càµ\82ൺ_à´\9càµ\82à´²àµ\88 à´\9càµ\82à´²àµ\88._à´\93à´\97à´¸àµ\8dà´±àµ\8dà´±àµ\8d à´\93à´\97._à´¸àµ\86à´ªàµ\8dà´±àµ\8dà´±à´\82ബർ à´¸àµ\86à´ªàµ\8dà´±àµ\8dà´±._à´\92à´\95àµ\8dà´\9fàµ\8bബർ à´\92à´\95àµ\8dà´\9fàµ\8b._നവà´\82ബർ നവà´\82._à´¡à´¿à´¸à´\82ബർ à´¡à´¿à´¸à´\82.'.split('_'), i;
+ var tests = 'ມັàº\87àº\81àºàº\99 ມັàº\87àº\81àºàº\99_àº\81ຸມàº\9eາ àº\81ຸມàº\9eາ_ມີàº\99າ ມີàº\99າ_à»\80ມສາ à»\80ມສາ_àº\9eຶàº\94ສະàº\9eາ àº\9eຶàº\94ສະàº\9eາ_ມິàº\96ຸàº\99າ ມິàº\96ຸàº\99າ_àº\81à»\8dລະàº\81ົàº\94 àº\81à»\8dລະàº\81ົàº\94_ສິàº\87ຫາ ສິàº\87ຫາ_àº\81ັàº\99àº\8dາ àº\81ັàº\99àº\8dາ_àº\95ຸລາ àº\95ຸລາ_àº\9eະàº\88ິàº\81 àº\9eະàº\88ິàº\81_àº\97ັàº\99ວາ àº\97ັàº\99ວາ'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, a h:mm:ss -നു', 'ഞായറാഴ്ച, 14 ഫെബ്രുവരി 2010, ഉച്ച കഴിഞ്ഞ് 3:25:50 -നു'],
- ['ddd, a h -നു', 'ഞായർ, ഉച്ച കഴിഞ്ഞ് 3 -നു'],
- ['M Mo MM MMMM MMM', '2 2 02 ഫെബ്രുവരി ഫെബ്രു.'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'ອາທິດ, ກຸມພາ ທີ່14 2010, 3:25:50 ຕອນແລງ'],
+ ['ddd, hA', 'ທິດ, 3ຕອນແລງ'],
+ ['M Mo MM MMMM MMM', '2 ທີ່2 02 ກຸມພາ ກຸມພາ'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 ഞായറാഴ്ച ഞായർ ഞാ'],
- ['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '8 8 08'],
+ ['D Do DD', '14 ທີ່14 14'],
+ ['d do dddd ddd dd', '0 ທີ່0 ອາທິດ ທິດ ທ'],
+ ['DDD DDDo DDDD', '45 ທີ່45 045'],
+ ['w wo ww', '8 ທີ່8 08'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'ഉച്ച കഴിഞ്ഞ് ഉച്ച കഴിഞ്ഞ്'],
- ['LTS', 'ഉച്ച കഴിഞ്ഞ് 3:25:50 -നു'],
+ ['a A', 'ຕອນແລງ ຕອນແລງ'],
+ ['[ວັນ]DDDo [ຂອງປີ]', 'ວັນທີ່45 ຂອງປີ'],
+ ['LTS', '15:25:50'],
['L', '14/02/2010'],
- ['LL', '14 à´«àµ\86à´¬àµ\8dà´°àµ\81വരി 2010'],
- ['LLL', '14 à´«àµ\86à´¬àµ\8dà´°àµ\81വരി 2010, à´\89à´\9aàµ\8dà´\9a à´\95à´´à´¿à´\9eàµ\8dà´\9eàµ\8d 3:25 -à´¨àµ\81'],
- ['LLLL', 'à´\9eായറാഴàµ\8dà´\9a, 14 à´«àµ\86à´¬àµ\8dà´°àµ\81വരി 2010, à´\89à´\9aàµ\8dà´\9a à´\95à´´à´¿à´\9eàµ\8dà´\9eàµ\8d 3:25 -à´¨àµ\81'],
+ ['LL', '14 àº\81ຸມàº\9eາ 2010'],
+ ['LLL', '14 àº\81ຸມàº\9eາ 2010 15:25'],
+ ['LLLL', 'ວັàº\99àºàº²àº\97ິàº\94 14 àº\81ຸມàº\9eາ 2010 15:25'],
['l', '14/2/2010'],
- ['ll', '14 à´«àµ\86à´¬àµ\8dà´°àµ\81. 2010'],
- ['lll', '14 à´«àµ\86à´¬àµ\8dà´°àµ\81. 2010, à´\89à´\9aàµ\8dà´\9a à´\95à´´à´¿à´\9eàµ\8dà´\9eàµ\8d 3:25 -à´¨àµ\81'],
- ['llll', 'à´\9eായർ, 14 à´«àµ\86à´¬àµ\8dà´°àµ\81. 2010, à´\89à´\9aàµ\8dà´\9a à´\95à´´à´¿à´\9eàµ\8dà´\9eàµ\8d 3:25 -à´¨àµ\81']
+ ['ll', '14 àº\81ຸມàº\9eາ 2010'],
+ ['lll', '14 àº\81ຸມàº\9eາ 2010 15:25'],
+ ['llll', 'ວັàº\99àº\97ິàº\94 14 àº\81ຸມàº\9eາ 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
-
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
-
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
-
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), 'ທີ່1', 'ທີ່1');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), 'ທີ່2', 'ທີ່2');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), 'ທີ່3', 'ທີ່3');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), 'ທີ່4', 'ທີ່4');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), 'ທີ່5', 'ທີ່5');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), 'ທີ່6', 'ທີ່6');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), 'ທີ່7', 'ທີ່7');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), 'ທີ່8', 'ທີ່8');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), 'ທີ່9', 'ທີ່9');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), 'ທີ່10', 'ທີ່10');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), 'ທີ່11', 'ທີ່11');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), 'ທີ່12', 'ທີ່12');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), 'ທີ່13', 'ທີ່13');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), 'ທີ່14', 'ທີ່14');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), 'ທີ່15', 'ທີ່15');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), 'ທີ່16', 'ທີ່16');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), 'ທີ່17', 'ທີ່17');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), 'ທີ່18', 'ທີ່18');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), 'ທີ່19', 'ທີ່19');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), 'ທີ່20', 'ທີ່20');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), 'ທີ່21', 'ທີ່21');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), 'ທີ່22', 'ທີ່22');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), 'ທີ່23', 'ທີ່23');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), 'ທີ່24', 'ທີ່24');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), 'ທີ່25', 'ທີ່25');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), 'ທີ່26', 'ທີ່26');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), 'ທີ່27', 'ທີ່27');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), 'ທີ່28', 'ທີ່28');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), 'ທີ່29', 'ທີ່29');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), 'ທີ່30', 'ທີ່30');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), 'ທີ່31', 'ທີ່31');
});
test('format month', function (assert) {
- var expected = 'à´\9cà´¨àµ\81വരി à´\9cà´¨àµ\81._à´«àµ\86à´¬àµ\8dà´°àµ\81വരി à´«àµ\86à´¬àµ\8dà´°àµ\81._മാർà´\9aàµ\8dà´\9aàµ\8d മാർ._à´\8fà´ªàµ\8dരിൽ à´\8fà´ªàµ\8dà´°à´¿._à´®àµ\87à´¯àµ\8d à´®àµ\87à´¯àµ\8d_à´\9càµ\82ൺ à´\9càµ\82ൺ_à´\9càµ\82à´²àµ\88 à´\9càµ\82à´²àµ\88._à´\93à´\97à´¸àµ\8dà´±àµ\8dà´±àµ\8d à´\93à´\97._à´¸àµ\86à´ªàµ\8dà´±àµ\8dà´±à´\82ബർ à´¸àµ\86à´ªàµ\8dà´±àµ\8dà´±._à´\92à´\95àµ\8dà´\9fàµ\8bബർ à´\92à´\95àµ\8dà´\9fàµ\8b._നവà´\82ബർ നവà´\82._à´¡à´¿à´¸à´\82ബർ à´¡à´¿à´¸à´\82.'.split('_'), i;
+ var expected = 'ມັàº\87àº\81àºàº\99 ມັàº\87àº\81àºàº\99_àº\81ຸມàº\9eາ àº\81ຸມàº\9eາ_ມີàº\99າ ມີàº\99າ_à»\80ມສາ à»\80ມສາ_àº\9eຶàº\94ສະàº\9eາ àº\9eຶàº\94ສະàº\9eາ_ມິàº\96ຸàº\99າ ມິàº\96ຸàº\99າ_àº\81à»\8dລະàº\81ົàº\94 àº\81à»\8dລະàº\81ົàº\94_ສິàº\87ຫາ ສິàº\87ຫາ_àº\81ັàº\99àº\8dາ àº\81ັàº\99àº\8dາ_àº\95ຸລາ àº\95ຸລາ_àº\9eະàº\88ິàº\81 àº\9eະàº\88ິàº\81_àº\97ັàº\99ວາ àº\97ັàº\99ວາ'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'à´\9eായറാഴàµ\8dà´\9a à´\9eായർ à´\9eà´¾_തിà´\99àµ\8dà´\95ളാഴàµ\8dà´\9a തിà´\99àµ\8dà´\95ൾ തി_à´\9aàµ\8aà´µàµ\8dവാഴàµ\8dà´\9a à´\9aàµ\8aà´µàµ\8dà´µ à´\9aàµ\8a_à´¬àµ\81ധനാഴàµ\8dà´\9a à´¬àµ\81ധൻ à´¬àµ\81_à´µàµ\8dയാഴാഴàµ\8dà´\9a à´µàµ\8dയാഴà´\82 à´µàµ\8dയാ_à´µàµ\86à´³àµ\8dളിയാഴàµ\8dà´\9a à´µàµ\86à´³àµ\8dളി à´µàµ\86_ശനിയാഴàµ\8dà´\9a ശനി à´¶'.split('_'), i;
+ var expected = 'àºàº²àº\97ິàº\94 àº\97ິàº\94 àº\97_àº\88ັàº\99 àº\88ັàº\99 àº\88_àºàº±àº\87àº\84າàº\99 àºàº±àº\87àº\84າàº\99 àºàº\84_àº\9eຸàº\94 àº\9eຸàº\94 àº\9e_àº\9eະຫັàº\94 àº\9eະຫັàº\94 àº\9eຫ_ສຸàº\81 ສຸàº\81 ສàº\81_à»\80ສົາ à»\80ສົາ ສ'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'à´\85ൽപ നിമിഷà´\99àµ\8dà´\99ൾ', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ഒരു മിനിറ്റ്', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ഒരു മിനിറ്റ്', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 മിനിറàµ\8dà´±àµ\8d', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 മിനിറàµ\8dà´±àµ\8d', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ഒരു മണിക്കൂർ', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ഒരു മണിക്കൂർ', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 മണിà´\95àµ\8dà´\95àµ\82ർ', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 മണിà´\95àµ\8dà´\95àµ\82ർ', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 മണിà´\95àµ\8dà´\95àµ\82ർ', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ഒരു ദിവസം', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ഒരു ദിവസം', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 ദിവസà´\82', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ഒരു ദിവസം', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 ദിവസà´\82', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 ദിവസà´\82', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ഒരു മാസം', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ഒരു മാസം', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ഒരു മാസം', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 മാസà´\82', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 മാസà´\82', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 മാസà´\82', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ഒരു മാസം', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 മാസà´\82', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ഒരു വർഷം', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 വർഷà´\82', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ഒരു വർഷം', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 വർഷà´\82', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'àº\9aà»\8dà»\88à»\80àº\97ົà»\88າà»\83àº\94ວິàº\99າàº\97ີ', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), '1 ນາທີ', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), '1 ນາທີ', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 àº\99າàº\97ີ', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 àº\99າàº\97ີ', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), '1 ຊົ່ວໂມງ', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), '1 ຊົ່ວໂມງ', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 àº\8aົà»\88ວà»\82ມàº\87', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 àº\8aົà»\88ວà»\82ມàº\87', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 àº\8aົà»\88ວà»\82ມàº\87', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), '1 ມື້', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), '1 ມື້', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 ມືà»\89', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), '1 ມື້', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 ມືà»\89', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 ມືà»\89', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), '1 ເດືອນ', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), '1 ເດືອນ', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), '1 ເດືອນ', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 à»\80àº\94ືàºàº\99', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 à»\80àº\94ືàºàº\99', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 à»\80àº\94ືàºàº\99', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), '1 ເດືອນ', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 à»\80àº\94ືàºàº\99', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), '1 ປີ', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 àº\9bີ', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), '1 ປີ', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 àº\9bີ', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'à´\85ൽപ നിമിഷà´\99àµ\8dà´\99ൾ à´\95à´´à´¿à´\9eàµ\8dà´\9eàµ\8d', 'prefix');
- assert.equal(moment(0).from(30000), 'à´\85ൽപ നിമിഷà´\99àµ\8dà´\99ൾ à´®àµ\81ൻപàµ\8d', 'suffix');
+ assert.equal(moment(30000).from(0), 'àºàºµàº\81 àº\9aà»\8dà»\88à»\80àº\97ົà»\88າà»\83àº\94ວິàº\99າàº\97ີ', 'prefix');
+ assert.equal(moment(0).from(30000), 'àº\9aà»\8dà»\88à»\80àº\97ົà»\88າà»\83àº\94ວິàº\99າàº\97ີàº\9cà»\88າàº\99ມາ', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'à´\85ൽപ നിമിഷà´\99àµ\8dà´\99ൾ à´®àµ\81ൻപàµ\8d', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'àº\9aà»\8dà»\88à»\80àº\97ົà»\88າà»\83àº\94ວິàº\99າàº\97ີàº\9cà»\88າàº\99ມາ', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'à´\85ൽപ നിമിഷà´\99àµ\8dà´\99ൾ à´\95à´´à´¿à´\9eàµ\8dà´\9eàµ\8d', 'à´\85ൽപ നിമിഷà´\99àµ\8dà´\99ൾ à´\95à´´à´¿à´\9eàµ\8dà´\9eàµ\8d');
- assert.equal(moment().add({d: 5}).fromNow(), '5 ദിവസം കഴിഞ്ഞ്', '5 ദിവസം കഴിഞ്ഞ്');
+ assert.equal(moment().add({s: 30}).fromNow(), 'àºàºµàº\81 àº\9aà»\8dà»\88à»\80àº\97ົà»\88າà»\83àº\94ວິàº\99າàº\97ີ', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'ອີກ 5 ມື້', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'ഇന്ന് രാത്രി 2:00 -നു', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'à´\87à´¨àµ\8dà´¨àµ\8d രാതàµ\8dà´°à´¿ 2:25 -à´¨àµ\81', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 3}).calendar(), 'ഇന്ന് രാവിലെ 5:00 -നു', 'Now plus 3 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'നാളàµ\86 രാതàµ\8dà´°à´¿ 2:00 -à´¨àµ\81', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'à´\87à´¨àµ\8dà´¨àµ\8d രാതàµ\8dà´°à´¿ 1:00 -à´¨àµ\81', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'à´\87à´¨àµ\8dനലàµ\86 രാതàµ\8dà´°à´¿ 2:00 -à´¨àµ\81', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'ມື້ນີ້ເວລາ 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'ມືà»\89àº\99ີà»\89à»\80ວລາ 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'ມື້ນີ້ເວລາ 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'ມືà»\89àºàº·à»\88àº\99à»\80ວລາ 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'ມືà»\89àº\99ີà»\89à»\80ວລາ 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'ມືà»\89ວາàº\99àº\99ີà»\89à»\80ວລາ 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[ວັນ]dddd[ໜ້າເວລາ] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[ວັນ]dddd[ໜ້າເວລາ] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[ວັນ]dddd[ໜ້າເວລາ] LT'), 'Today + ' + i + ' days end of day');
}
});
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[à´\95à´´à´¿à´\9eàµ\8dà´\9e] dddd[,] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[ວັàº\99]dddd[à»\81ລà»\89ວàº\99ີà»\89à»\80ວລາ] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[à´\95à´´à´¿à´\9eàµ\8dà´\9e] dddd[,] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[ວັàº\99]dddd[à»\81ລà»\89ວàº\99ີà»\89à»\80ວລາ] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[à´\95à´´à´¿à´\9eàµ\8dà´\9e] dddd[,] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[ວັàº\99]dddd[à»\81ລà»\89ວàº\99ີà»\89à»\80ວລາ] LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- test('meridiem', function (assert) {
- assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'രാത്രി', 'before dawn');
- assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'രാവിലെ', 'morning');
- assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'ഉച്ച കഴിഞ്ഞ്', 'during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'വൈകുന്നേരം', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'വൈകുന്നേരം', 'late evening');
- assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'രാത്രി', 'night');
-
- assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'രാത്രി', 'before dawn');
- assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'രാവിലെ', 'morning');
- assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'ഉച്ച കഴിഞ്ഞ്', ' during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'വൈകുന്നേരം', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'വൈകുന്നേരം', 'late evening');
- assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'രാത്രി', 'night');
- });
-
test('weeks year starting sunday', function (assert) {
assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
});
- test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1', 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2', 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 should be week 3');
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 ທີ່1', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 ທີ່1', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 ທີ່2', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 ທີ່2', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 ທີ່3', 'Jan 15 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('mr');
+ localeModule('lt');
test('parse', function (assert) {
- var tests = 'जानेवारी जाने._फेब्रुवारी फेब्रु._मार्च मार्च._एप्रिल एप्रि._मे मे._जून जून._जुलै जुलै._ऑगस्ट ऑग._सप्टेंबर सप्टें._ऑक्टोबर ऑक्टो._नोव्हेंबर नोव्हें._डिसेंबर डिसें.'.split('_'), i;
+ var tests = 'sausis sau_vasaris vas_kovas kov_balandis bal_gegužė geg_birželis bir_liepa lie_rugpjūtis rgp_rugsėjis rgs_spalis spa_lapkritis lap_gruodis grd'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, a h:mm:ss वाजता', 'रविवार, १४ फेब्रुवारी २०१०, दुपारी ३:२५:५० वाजता'],
- ['ddd, a h वाजता', 'रवि, दुपारी ३ वाजता'],
- ['M Mo MM MMMM MMM', '२ २ ०२ फेब्रुवारी फेब्रु.'],
- ['YYYY YY', '२०१० १०'],
- ['D Do DD', '१४ १४ १४'],
- ['d do dddd ddd dd', '० ० रविवार रवि र'],
- ['DDD DDDo DDDD', '४५ ४५ ०४५'],
- ['w wo ww', '८ ८ ०८'],
- ['h hh', '३ ०३'],
- ['H HH', '१५ १५'],
- ['m mm', '२५ २५'],
- ['s ss', '५० ५०'],
- ['a A', 'दुपारी दुपारी'],
- ['LTS', 'दुपारी ३:२५:५० वाजता'],
- ['L', '१४/०२/२०१०'],
- ['LL', '१४ फेब्रुवारी २०१०'],
- ['LLL', '१४ फेब्रुवारी २०१०, दुपारी ३:२५ वाजता'],
- ['LLLL', 'रविवार, १४ फेब्रुवारी २०१०, दुपारी ३:२५ वाजता'],
- ['l', '१४/२/२०१०'],
- ['ll', '१४ फेब्रु. २०१०'],
- ['lll', '१४ फेब्रु. २०१०, दुपारी ३:२५ वाजता'],
- ['llll', 'रवि, १४ फेब्रु. २०१०, दुपारी ३:२५ वाजता']
+ ['dddd, Do MMMM YYYY, h:mm:ss a', 'sekmadienis, 14-oji vasario 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Sek, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2-oji 02 vasaris vas'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14-oji 14'],
+ ['d do dddd ddd dd', '0 0-oji sekmadienis Sek S'],
+ ['DDD DDDo DDDD', '45 45-oji 045'],
+ ['w wo ww', '6 6-oji 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['DDDo [metų diena]', '45-oji metų diena'],
+ ['LTS', '15:25:50'],
+ ['L', '2010-02-14'],
+ ['LL', '2010 m. vasaris 14 d.'],
+ ['LLL', '2010 m. vasaris 14 d., 15:25 val.'],
+ ['LLLL', '2010 m. vasaris 14 d., sekmadienis, 15:25 val.'],
+ ['l', '2010-02-14'],
+ ['ll', '2010 m. vasaris 14 d.'],
+ ['lll', '2010 m. vasaris 14 d., 15:25 val.'],
+ ['llll', '2010 m. vasaris 14 d., Sek, 15:25 val.']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '१', '१');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '२', '२');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '३', '३');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '४', '४');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '५', '५');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '६', '६');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '७', '७');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '८', '८');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '९', '९');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '१०', '१०');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-oji', '1-oji');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2-oji', '2-oji');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3-oji', '3-oji');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4-oji', '4-oji');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5-oji', '5-oji');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6-oji', '6-oji');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7-oji', '7-oji');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8-oji', '8-oji');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9-oji', '9-oji');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10-oji', '10-oji');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '११', '११');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '१२', '१२');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '१३', '१३');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '१४', '१४');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '१५', '१५');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '१६', '१६');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '१७', '१७');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '१८', '१८');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '१९', '१९');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '२०', '२०');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11-oji', '11-oji');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12-oji', '12-oji');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13-oji', '13-oji');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14-oji', '14-oji');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15-oji', '15-oji');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16-oji', '16-oji');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17-oji', '17-oji');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18-oji', '18-oji');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19-oji', '19-oji');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20-oji', '20-oji');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '२१', '२१');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '२२', '२२');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '२३', '२३');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '२४', '२४');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '२५', '२५');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '२६', '२६');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '२७', '२७');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '२८', '२८');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '२९', '२९');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '३०', '३०');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-oji', '21-oji');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-oji', '22-oji');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-oji', '23-oji');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-oji', '24-oji');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-oji', '25-oji');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-oji', '26-oji');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-oji', '27-oji');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-oji', '28-oji');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-oji', '29-oji');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-oji', '30-oji');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '३१', '३१');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31-oji', '31-oji');
});
test('format month', function (assert) {
- var expected = 'जानेवारी जाने._फेब्रुवारी फेब्रु._मार्च मार्च._एप्रिल एप्रि._मे मे._जून जून._जुलै जुलै._ऑगस्ट ऑग._सप्टेंबर सप्टें._ऑक्टोबर ऑक्टो._नोव्हेंबर नोव्हें._डिसेंबर डिसें.'.split('_'), i;
+ var expected = 'sausis sau_vasaris vas_kovas kov_balandis bal_gegužė geg_birželis bir_liepa lie_rugpjūtis rgp_rugsėjis rgs_spalis spa_lapkritis lap_gruodis grd'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'रविवार रवि र_सोमवार सोम सो_मंगळवार मंगळ मं_बुधवार बुध बु_गुरूवार गुरू गु_शुक्रवार शुक्र शु_शनिवार शनि श'.split('_'), i;
+ var expected = 'sekmadienis Sek S_pirmadienis Pir P_antradienis Ant A_trečiadienis Tre T_ketvirtadienis Ket K_penktadienis Pen Pn_šeštadienis Šeš Š'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week on US calendar', function (assert) {
+ // Tests, whether the weekday names are correct, even if the week does not start on Monday
+ moment.locale('lt', {week: {dow: 0, doy: 6}});
+ var expected = 'sekmadienis Sek S_pirmadienis Pir P_antradienis Ant A_trečiadienis Tre T_ketvirtadienis Ket K_penktadienis Pen Pn_šeštadienis Šeš Š'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
+ moment.locale('lt', {week: {dow: 1, doy: 4}});
});
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'सेकंद', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'एक मिनिट', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'एक मिनिट', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '२ मिनिटे', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '४४ मिनिटे', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'एक तास', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'एक तास', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '२ तास', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '५ तास', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '२१ तास', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'एक दिवस', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'एक दिवस', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '२ दिवस', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'एक दिवस', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '५ दिवस', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '२५ दिवस', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'एक महिना', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'एक महिना', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'एक महिना', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '२ महिने', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '२ महिने', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '३ महिने', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'एक महिना', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '५ महिने', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'एक वर्ष', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '२ वर्षे', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'एक वर्ष', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '५ वर्षे', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'kelios sekundės', '44 seconds = seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minutė', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minutė', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutės', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 10}), true), '10 minučių', '10 minutes = 10 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 11}), true), '11 minučių', '11 minutes = 11 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 19}), true), '19 minučių', '19 minutes = 19 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 20}), true), '20 minučių', '20 minutes = 20 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutės', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'valanda', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'valanda', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 valandos', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 valandos', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 10}), true), '10 valandų', '10 hours = 10 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 valandos', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'diena', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'diena', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dienos', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'diena', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dienos', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 10}), true), '10 dienų', '10 days = 10 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dienos', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mėnuo', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mėnuo', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mėnuo', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mėnesiai', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mėnesiai', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mėnesiai', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mėnuo', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mėnesiai', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 10}), true), '10 mėnesių', '10 months = 10 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'metai', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 metai', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'metai', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 metai', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'सेकंद नंतर', 'prefix');
- assert.equal(moment(0).from(30000), 'सेकंद पूर्वी', 'suffix');
+ assert.equal(moment(30000).from(0), 'po kelių sekundžių', 'prefix');
+ assert.equal(moment(0).from(30000), 'prieš kelias sekundes', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'सेकंद पूर्वी', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'prieš kelias sekundes', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'सेकंद नंतर', 'सेकंद नंतर');
- assert.equal(moment().add({d: 5}).fromNow(), '५ दिवस नंतर', '५ दिवस नंतर');
+ assert.equal(moment().add({s: 30}).fromNow(), 'po kelių sekundžių', 'in seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'po 5 dienų', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'आज रात्री २:०० वाजता', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'आज रात्री २:२५ वाजता', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 3}).calendar(), 'आज सकाळी ५:०० वाजता', 'Now plus 3 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'उद्या रात्री २:०० वाजता', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'आज रात्री १:०० वाजता', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'काल रात्री २:०० वाजता', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Šiandien 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Šiandien 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Šiandien 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Rytoj 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Šiandien 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Vakar 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
-
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[मागील] dddd[,] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[Praėjusį] dddd LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[मागील] dddd[,] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[Praėjusį] dddd LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[मागील] dddd[,] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[Praėjusį] dddd LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- test('meridiem', function (assert) {
- assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'रात्री', 'before dawn');
- assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'सकाळी', 'morning');
- assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'दुपारी', 'during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'सायंकाळी', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'सायंकाळी', 'late evening');
- assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'रात्री', 'night');
-
- assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'रात्री', 'before dawn');
- assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'सकाळी', 'morning');
- assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'दुपारी', ' during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'सायंकाळी', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'सायंकाळी', 'late evening');
- assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'रात्री', 'night');
- });
-
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '१ ०१ १', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '१ ०१ १', 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '२ ०२ २', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '२ ०२ २', 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '३ ०३ ३', 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52-oji', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1-oji', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1-oji', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2-oji', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2-oji', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}
});
- test('meridiem invariant', function (assert) {
- var h, m, t1, t2;
- for (h = 0; h < 24; ++h) {
- for (m = 0; m < 60; m += 15) {
- t1 = moment.utc([2000, 0, 1, h, m]);
- t2 = moment(t1.format('A h:mm'), 'A h:mm');
- assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
- 'meridiem at ' + t1.format('HH:mm'));
- }
- }
- });
-
test('strict ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('ms-my');
+ localeModule('lv');
test('parse', function (assert) {
- var i,
- tests = 'Januari Jan_Februari Feb_Mac Mac_April Apr_Mei Mei_Jun Jun_Julai Jul_Ogos Ogs_September Sep_Oktober Okt_November Nov_Disember Dis'.split('_');
-
+ var tests = 'janvāris jan_februāris feb_marts mar_aprīlis apr_maijs mai_jūnijs jūn_jūlijs jūl_augusts aug_septembris sep_oktobris okt_novembris nov_decembris dec'.split('_'), i;
function equalTest(input, mmm, i) {
- assert.equal(moment(input, mmm).month(), i, input + ' sepatutnya bulan ' + (i + 1));
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
-
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Ahad, Februari 14 2010, 3:25:50 petang'],
- ['ddd, hA', 'Ahd, 3petang'],
- ['M Mo MM MMMM MMM', '2 2 02 Februari Feb'],
+ ['dddd, Do MMMM YYYY, h:mm:ss a', 'svētdiena, 14. februāris 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Sv, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 februāris feb'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 Ahad Ahd Ah'],
- ['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '7 7 07'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. svētdiena Sv Sv'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'petang petang'],
- ['[hari] [ke] DDDo [tahun] ini', 'hari ke 45 tahun ini'],
- ['LTS', '15.25.50'],
- ['L', '14/02/2010'],
- ['LL', '14 Februari 2010'],
- ['LLL', '14 Februari 2010 pukul 15.25'],
- ['LLLL', 'Ahad, 14 Februari 2010 pukul 15.25'],
- ['l', '14/2/2010'],
- ['ll', '14 Feb 2010'],
- ['lll', '14 Feb 2010 pukul 15.25'],
- ['llll', 'Ahd, 14 Feb 2010 pukul 15.25']
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '14.02.2010.'],
+ ['LL', '2010. gada 14. februāris'],
+ ['LLL', '2010. gada 14. februāris, 15:25'],
+ ['LLLL', '2010. gada 14. februāris, svētdiena, 15:25'],
+ ['l', '14.2.2010.'],
+ ['ll', '2010. gada 14. feb'],
+ ['lll', '2010. gada 14. feb, 15:25'],
+ ['llll', '2010. gada 14. feb, Sv, 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
-
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
});
test('format month', function (assert) {
- var i,
- expected = 'Januari Jan_Februari Feb_Mac Mac_April Apr_Mei Mei_Jun Jun_Julai Jul_Ogos Ogs_September Sep_Oktober Okt_November Nov_Disember Dis'.split('_');
-
+ var expected = 'janvāris jan_februāris feb_marts mar_aprīlis apr_maijs mai_jūnijs jūn_jūlijs jūl_augusts aug_septembris sep_oktobris okt_novembris nov_decembris dec'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var i,
- expected = 'Ahad Ahd Ah_Isnin Isn Is_Selasa Sel Sl_Rabu Rab Rb_Khamis Kha Km_Jumaat Jum Jm_Sabtu Sab Sb'.split('_');
-
+ var expected = 'svētdiena Sv Sv_pirmdiena P P_otrdiena O O_trešdiena T T_ceturtdiena C C_piektdiena Pk Pk_sestdiena S S'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
});
+ // Includes testing the cases of withoutSuffix = true and false.
test('from', function (assert) {
var start = moment([2007, 1, 28]);
-
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'beberapa saat', '44 saat = beberapa saat');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'seminit', '45 saat = seminit');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'seminit', '89 saat = seminit');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minit', '90 saat = 2 minit');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minit', '44 minit = 44 minit');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'sejam', '45 minit = sejam');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'sejam', '89 minit = sejam');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 jam', '90 minit = 2 jam');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 jam', '5 jam = 5 jam');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 jam', '21 jam = 21 jam');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'sehari', '22 jam = sehari');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'sehari', '35 jam = sehari');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 hari', '36 jam = 2 hari');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'sehari', '1 hari = sehari');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 hari', '5 hari = 5 hari');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 hari', '25 hari = 25 hari');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'sebulan', '26 hari = sebulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'sebulan', '30 hari = sebulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'sebulan', '45 hari = sebulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 bulan', '46 hari = 2 bulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 bulan', '75 hari = 2 bulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 bulan', '76 hari = 3 bulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'sebulan', '1 bulan = sebulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 bulan', '5 bulan = 5 bulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'setahun', '345 hari = setahun');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 tahun', '548 hari = 2 tahun');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'setahun', '1 tahun = setahun');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 tahun', '5 tahun = 5 tahun');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'dažas sekundes', '44 seconds = seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), false), 'pirms dažām sekundēm', '44 seconds with suffix = seconds ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minūte', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), false), 'pirms minūtes', '45 seconds with suffix = a minute ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minūte', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: -89}), false), 'pēc minūtes', '89 seconds with suffix/prefix = in a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minūtes', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), false), 'pirms 2 minūtēm', '90 seconds with suffix = 2 minutes ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minūtes', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), false), 'pirms 44 minūtēm', '44 minutes with suffix = 44 minutes ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'stunda', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), false), 'pirms stundas', '45 minutes with suffix = an hour ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'stunda', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 stundas', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: -90}), false), 'pēc 2 stundām', '90 minutes with suffix = in 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 stundas', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), false), 'pirms 5 stundām', '5 hours with suffix = 5 hours ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 stunda', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), false), 'pirms 21 stundas', '21 hours with suffix = 21 hours ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'diena', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), false), 'pirms dienas', '22 hours with suffix = a day ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'diena', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dienas', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), false), 'pirms 2 dienām', '36 hours with suffix = 2 days ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'diena', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dienas', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), false), 'pirms 5 dienām', '5 days with suffix = 5 days ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dienas', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), false), 'pirms 25 dienām', '25 days with suffix = 25 days ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mēnesis', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), false), 'pirms mēneša', '26 days with suffix = a month ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mēnesis', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mēnesis', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mēneši', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), false), 'pirms 2 mēnešiem', '46 days with suffix = 2 months ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mēneši', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mēneši', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), false), 'pirms 3 mēnešiem', '76 days with suffix = 3 months ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mēnesis', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mēneši', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), false), 'pirms 5 mēnešiem', '5 months with suffix = 5 months ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'gads', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), false), 'pirms gada', '345 days with suffix = a year ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 gadi', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), false), 'pirms 2 gadiem', '548 days with suffix = 2 years ago');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'gads', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 gadi', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), false), 'pirms 5 gadiem', '5 years with suffix = 5 years ago');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'dalam beberapa saat', 'prefix');
- assert.equal(moment(0).from(30000), 'beberapa saat yang lepas', 'suffix');
+ assert.equal(moment(30000).from(0), 'pēc dažām sekundēm', 'prefix');
+ assert.equal(moment(0).from(30000), 'pirms dažām sekundēm', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'beberapa saat yang lepas', 'waktu sekarang dari sekarang sepatutnya menunjukkan sebagai telah lepas');
+ assert.equal(moment().fromNow(), 'pirms dažām sekundēm', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'dalam beberapa saat', 'dalam beberapa saat');
- assert.equal(moment().add({d: 5}).fromNow(), 'dalam 5 hari', 'dalam 5 hari');
+ assert.equal(moment().add({s: 30}).fromNow(), 'pēc dažām sekundēm', 'in seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'pēc 5 dienām', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Hari ini pukul 02.00', 'hari ini pada waktu yang sama');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Hari ini pukul 02.25', 'Sekarang tambah 25 minit');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Hari ini pukul 03.00', 'Sekarang tambah 1 jam');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Esok pukul 02.00', 'esok pada waktu yang sama');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hari ini pukul 01.00', 'Sekarang tolak 1 jam');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Kelmarin pukul 02.00', 'kelmarin pada waktu yang sama');
+ assert.equal(moment(a).calendar(), 'Šodien pulksten 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Šodien pulksten 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Šodien pulksten 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Rīt pulksten 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Šodien pulksten 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Vakar pulksten 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari waktu sekarang');
+ assert.equal(m.calendar(), m.format('dddd [pulksten] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari permulaan hari');
+ assert.equal(m.calendar(), m.format('dddd [pulksten] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari tamat hari');
+ assert.equal(m.calendar(), m.format('dddd [pulksten] LT'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari waktu sekarang');
+ assert.equal(m.calendar(), m.format('[Pagājušā] dddd [pulksten] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari permulaan hari');
+ assert.equal(m.calendar(), m.format('[Pagājušā] dddd [pulksten] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari tamat hari');
+ assert.equal(m.calendar(), m.format('[Pagājušā] dddd [pulksten] LT'), 'Today - ' + i + ' days end of day');
}
});
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 minggu lepas');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'dalam 1 minggu');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 minggu lepas');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'dalam 2 minggu');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 sepatutnya minggu 1');
- assert.equal(moment([2012, 0, 7]).week(), 2, 'Jan 7 2012 sepatutnya minggu 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 sepatutnya minggu 2');
- assert.equal(moment([2012, 0, 14]).week(), 3, 'Jan 14 2012 sepatutnya minggu 3');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 sepatutnya minggu 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 53, 'Dec 31 2006 sepatutnya minggu 53');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 sepatutnya minggu 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 sepatutnya minggu 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 sepatutnya minggu 1');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 sepatutnya minggu 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 sepatutnya minggu 2');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 30]).week(), 52, 'Dec 30 2007 sepatutnya minggu 52');
- assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 sepatutnya minggu 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 sepatutnya minggu 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 sepatutnya minggu 1');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 sepatutnya minggu 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 sepatutnya minggu 2');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 52, 'Dec 29 2002 sepatutnya minggu 52');
- assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 sepatutnya minggu 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 sepatutnya minggu 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 sepatutnya minggu 1');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 sepatutnya minggu 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 sepatutnya minggu 2');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 52, 'Dec 28 2008 sepatutnya minggu 52');
- assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 sepatutnya minggu 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 sepatutnya minggu 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 sepatutnya minggu 1');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 sepatutnya minggu 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 sepatutnya minggu 2');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 52, 'Dec 27 2009 sepatutnya minggu 52');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 sepatutnya minggu 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 sepatutnya minggu 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 sepatutnya minggu 1');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 sepatutnya minggu 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 sepatutnya minggu 2');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 52, 'Dec 26 2010 sepatutnya minggu 52');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 sepatutnya minggu 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 sepatutnya minggu 1');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 sepatutnya minggu 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 sepatutnya minggu 2');
- });
-
- test('weeks year starting sunday format', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 sepatutnya minggu 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '2 02 2', 'Jan 7 2012 sepatutnya minggu 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 sepatutnya minggu 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '3 03 3', 'Jan 14 2012 sepatutnya minggu 3');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 sepatutnya minggu 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
- test('lenient ordinal parsing', function (assert) {
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
}
});
- test('meridiem invariant', function (assert) {
- var h, m, t1, t2;
- for (h = 0; h < 24; ++h) {
- for (m = 0; m < 60; m += 15) {
- t1 = moment.utc([2000, 0, 1, h, m]);
- t2 = moment(t1.format('A h:mm'), 'A h:mm');
- assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
- 'meridiem at ' + t1.format('HH:mm'));
- }
- }
- });
-
test('lenient ordinal parsing of number', function (assert) {
var i, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('ms');
+ localeModule('me');
test('parse', function (assert) {
- var i,
- tests = 'Januari Jan_Februari Feb_Mac Mac_April Apr_Mei Mei_Jun Jun_Julai Jul_Ogos Ogs_September Sep_Oktober Okt_November Nov_Disember Dis'.split('_');
-
+ var tests = 'januar jan._februar feb._mart mar._april apr._maj maj_jun jun_jul jul_avgust avg._septembar sep._oktobar okt._novembar nov._decembar dec.'.split('_'),
+ i;
function equalTest(input, mmm, i) {
- assert.equal(moment(input, mmm).month(), i, input + ' sepatutnya bulan ' + (i + 1));
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
-
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Ahad, Februari 14 2010, 3:25:50 petang'],
- ['ddd, hA', 'Ahd, 3petang'],
- ['M Mo MM MMMM MMM', '2 2 02 Februari Feb'],
+ ['dddd, Do MMMM YYYY, h:mm:ss a', 'nedjelja, 14. februar 2010, 3:25:50 pm'],
+ ['ddd, hA', 'ned., 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 februar feb.'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 Ahad Ahd Ah'],
- ['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '7 7 07'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. nedjelja ned. ne'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '7 7. 07'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'petang petang'],
- ['[hari] [ke] DDDo [tahun] ini', 'hari ke 45 tahun ini'],
- ['LTS', '15.25.50'],
- ['L', '14/02/2010'],
- ['LL', '14 Februari 2010'],
- ['LLL', '14 Februari 2010 pukul 15.25'],
- ['LLLL', 'Ahad, 14 Februari 2010 pukul 15.25'],
- ['l', '14/2/2010'],
- ['ll', '14 Feb 2010'],
- ['lll', '14 Feb 2010 pukul 15.25'],
- ['llll', 'Ahd, 14 Feb 2010 pukul 15.25']
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '14. 02. 2010'],
+ ['LL', '14. februar 2010'],
+ ['LLL', '14. februar 2010 15:25'],
+ ['LLLL', 'nedjelja, 14. februar 2010 15:25'],
+ ['l', '14. 2. 2010'],
+ ['ll', '14. feb. 2010'],
+ ['lll', '14. feb. 2010 15:25'],
+ ['llll', 'ned., 14. feb. 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
-
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
});
test('format month', function (assert) {
- var i,
- expected = 'Januari Jan_Februari Feb_Mac Mac_April Apr_Mei Mei_Jun Jun_Julai Jul_Ogos Ogs_September Sep_Oktober Okt_November Nov_Disember Dis'.split('_');
-
+ var expected = 'januar jan._februar feb._mart mar._april apr._maj maj_jun jun_jul jul_avgust avg._septembar sep._oktobar okt._novembar nov._decembar dec.'.split('_'),
+ i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var i,
- expected = 'Ahad Ahd Ah_Isnin Isn Is_Selasa Sel Sl_Rabu Rab Rb_Khamis Kha Km_Jumaat Jum Jm_Sabtu Sab Sb'.split('_');
+ var expected = 'nedjelja ned. ne_ponedjeljak pon. po_utorak uto. ut_srijeda sri. sr_četvrtak čet. če_petak pet. pe_subota sub. su'.split('_'),
+ i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'nekoliko sekundi', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'jedan minut', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'jedan minut', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuta', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuta', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'jedan sat', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'jedan sat', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 sata', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 sati', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 sati', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'dan', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'dan', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dana', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'dan', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dana', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dana', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mjesec', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mjesec', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mjesec', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mjeseca', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mjeseca', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mjeseca', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mjesec', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mjeseci', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'godinu', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 godine', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'godinu', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 godina', '5 years = 5 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'za nekoliko sekundi', 'prefix');
+ assert.equal(moment(0).from(30000), 'prije nekoliko sekundi', 'prefix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'prije nekoliko sekundi', 'now from now should display as in the past');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'za nekoliko sekundi', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'za 5 dana', 'in 5 days');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'danas u 2:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'danas u 2:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'danas u 3:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'sjutra u 2:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'danas u 1:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'juče u 2:00', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+
+ function makeFormat(d) {
+ switch (d.day()) {
+ case 0:
+ return '[u] [nedjelju] [u] LT';
+ case 3:
+ return '[u] [srijedu] [u] LT';
+ case 6:
+ return '[u] [subotu] [u] LT';
+ case 1:
+ case 2:
+ case 4:
+ case 5:
+ return '[u] dddd [u] LT';
+ }
+ }
+
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+
+ function makeFormat(d) {
+ var lastWeekDay = [
+ '[prošle] [nedjelje] [u] LT',
+ '[prošlog] [ponedjeljka] [u] LT',
+ '[prošlog] [utorka] [u] LT',
+ '[prošle] [srijede] [u] LT',
+ '[prošlog] [četvrtka] [u] LT',
+ '[prošlog] [petka] [u] LT',
+ '[prošle] [subote] [u] LT'
+ ];
+
+ return lastWeekDay[d.day()];
+ }
+
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ });
+
+ // Monday is the first day of the week.
+ // The week that contains Jan 1st is the first week of the year.
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ });
+
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1.', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1.', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2.', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2.', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3.', 'Jan 9 2012 should be week 3');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('mk');
+
+ test('parse', function (assert) {
+ var tests = 'јануари јан_февруари фев_март мар_април апр_мај мај_јуни јун_јули јул_август авг_септември сеп_октомври окт_ноември ное_декември дек'.split('_'), i;
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ }
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, MMMM Do YYYY, H:mm:ss', 'недела, февруари 14-ти 2010, 15:25:50'],
+ ['ddd, hA', 'нед, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2-ри 02 февруари фев'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14-ти 14'],
+ ['d do dddd ddd dd', '0 0-ев недела нед нe'],
+ ['DDD DDDo DDDD', '45 45-ти 045'],
+ ['w wo ww', '7 7-ми 07'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45-ти day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '14.02.2010'],
+ ['LL', '14 февруари 2010'],
+ ['LLL', '14 февруари 2010 15:25'],
+ ['LLLL', 'недела, 14 февруари 2010 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14 фев 2010'],
+ ['lll', '14 фев 2010 15:25'],
+ ['llll', 'нед, 14 фев 2010 15:25']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-ви', '1-ви');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2-ри', '2-ри');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3-ти', '3-ти');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4-ти', '4-ти');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5-ти', '5-ти');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6-ти', '6-ти');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7-ми', '7-ми');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8-ми', '8-ми');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9-ти', '9-ти');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10-ти', '10-ти');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11-ти', '11-ти');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12-ти', '12-ти');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13-ти', '13-ти');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14-ти', '14-ти');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15-ти', '15-ти');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16-ти', '16-ти');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17-ти', '17-ти');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18-ти', '18-ти');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19-ти', '19-ти');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20-ти', '20-ти');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-ви', '21-ви');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-ри', '22-ри');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-ти', '23-ти');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-ти', '24-ти');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-ти', '25-ти');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-ти', '26-ти');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-ми', '27-ми');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-ми', '28-ми');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-ти', '29-ти');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-ти', '30-ти');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31-ви', '31-ви');
+ });
+
+ test('format month', function (assert) {
+ var expected = 'јануари јан_февруари фев_март мар_април апр_мај мај_јуни јун_јули јул_август авг_септември сеп_октомври окт_ноември ное_декември дек'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var expected = 'недела нед нe_понеделник пон пo_вторник вто вт_среда сре ср_четврток чет че_петок пет пе_сабота саб сa'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'неколку секунди', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'минута', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'минута', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 минути', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 минути', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'час', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'час', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 часа', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 часа', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 часа', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ден', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ден', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 дена', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ден', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 дена', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 дена', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'месец', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'месец', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'месец', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 месеци', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 месеци', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 месеци', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'месец', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 месеци', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'година', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 години', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'година', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 години', '5 years = 5 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'после неколку секунди', 'prefix');
+ assert.equal(moment(0).from(30000), 'пред неколку секунди', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'пред неколку секунди', 'now from now should display as in the past');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'после неколку секунди', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'после 5 дена', 'in 5 days');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'Денес во 2:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Денес во 2:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Денес во 3:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Утре во 2:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Денес во 1:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Вчера во 2:00', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('[Во] dddd [во] LT'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('[Во] dddd [во] LT'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('[Во] dddd [во] LT'), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+
+ function makeFormat(d) {
+ switch (d.day()) {
+ case 0:
+ case 3:
+ case 6:
+ return '[Изминатата] dddd [во] LT';
+ case 1:
+ case 2:
+ case 4:
+ case 5:
+ return '[Изминатиот] dddd [во] LT';
+ }
+ }
+
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ });
+
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1-ви', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1-ви', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2-ри', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2-ри', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3-ти', 'Jan 9 2012 should be week 3');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('ml');
+
+ test('parse', function (assert) {
+ var tests = 'ജനുവരി ജനു._ഫെബ്രുവരി ഫെബ്രു._മാർച്ച് മാർ._ഏപ്രിൽ ഏപ്രി._മേയ് മേയ്_ജൂൺ ജൂൺ_ജൂലൈ ജൂലൈ._ഓഗസ്റ്റ് ഓഗ._സെപ്റ്റംബർ സെപ്റ്റ._ഒക്ടോബർ ഒക്ടോ._നവംബർ നവം._ഡിസംബർ ഡിസം.'.split('_'), i;
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ }
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, Do MMMM YYYY, a h:mm:ss -നു', 'ഞായറാഴ്ച, 14 ഫെബ്രുവരി 2010, ഉച്ച കഴിഞ്ഞ് 3:25:50 -നു'],
+ ['ddd, a h -നു', 'ഞായർ, ഉച്ച കഴിഞ്ഞ് 3 -നു'],
+ ['M Mo MM MMMM MMM', '2 2 02 ഫെബ്രുവരി ഫെബ്രു.'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 ഞായറാഴ്ച ഞായർ ഞാ'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '8 8 08'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'ഉച്ച കഴിഞ്ഞ് ഉച്ച കഴിഞ്ഞ്'],
+ ['LTS', 'ഉച്ച കഴിഞ്ഞ് 3:25:50 -നു'],
+ ['L', '14/02/2010'],
+ ['LL', '14 ഫെബ്രുവരി 2010'],
+ ['LLL', '14 ഫെബ്രുവരി 2010, ഉച്ച കഴിഞ്ഞ് 3:25 -നു'],
+ ['LLLL', 'ഞായറാഴ്ച, 14 ഫെബ്രുവരി 2010, ഉച്ച കഴിഞ്ഞ് 3:25 -നു'],
+ ['l', '14/2/2010'],
+ ['ll', '14 ഫെബ്രു. 2010'],
+ ['lll', '14 ഫെബ്രു. 2010, ഉച്ച കഴിഞ്ഞ് 3:25 -നു'],
+ ['llll', 'ഞായർ, 14 ഫെബ്രു. 2010, ഉച്ച കഴിഞ്ഞ് 3:25 -നു']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ });
+
+ test('format month', function (assert) {
+ var expected = 'ജനുവരി ജനു._ഫെബ്രുവരി ഫെബ്രു._മാർച്ച് മാർ._ഏപ്രിൽ ഏപ്രി._മേയ് മേയ്_ജൂൺ ജൂൺ_ജൂലൈ ജൂലൈ._ഓഗസ്റ്റ് ഓഗ._സെപ്റ്റംബർ സെപ്റ്റ._ഒക്ടോബർ ഒക്ടോ._നവംബർ നവം._ഡിസംബർ ഡിസം.'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var expected = 'ഞായറാഴ്ച ഞായർ ഞാ_തിങ്കളാഴ്ച തിങ്കൾ തി_ചൊവ്വാഴ്ച ചൊവ്വ ചൊ_ബുധനാഴ്ച ബുധൻ ബു_വ്യാഴാഴ്ച വ്യാഴം വ്യാ_വെള്ളിയാഴ്ച വെള്ളി വെ_ശനിയാഴ്ച ശനി ശ'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'അൽപ നിമിഷങ്ങൾ', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ഒരു മിനിറ്റ്', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ഒരു മിനിറ്റ്', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 മിനിറ്റ്', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 മിനിറ്റ്', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ഒരു മണിക്കൂർ', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ഒരു മണിക്കൂർ', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 മണിക്കൂർ', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 മണിക്കൂർ', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 മണിക്കൂർ', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ഒരു ദിവസം', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ഒരു ദിവസം', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 ദിവസം', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ഒരു ദിവസം', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 ദിവസം', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 ദിവസം', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ഒരു മാസം', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ഒരു മാസം', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ഒരു മാസം', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 മാസം', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 മാസം', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 മാസം', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ഒരു മാസം', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 മാസം', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ഒരു വർഷം', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 വർഷം', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ഒരു വർഷം', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 വർഷം', '5 years = 5 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'അൽപ നിമിഷങ്ങൾ കഴിഞ്ഞ്', 'prefix');
+ assert.equal(moment(0).from(30000), 'അൽപ നിമിഷങ്ങൾ മുൻപ്', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'അൽപ നിമിഷങ്ങൾ മുൻപ്', 'now from now should display as in the past');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'അൽപ നിമിഷങ്ങൾ കഴിഞ്ഞ്', 'അൽപ നിമിഷങ്ങൾ കഴിഞ്ഞ്');
+ assert.equal(moment().add({d: 5}).fromNow(), '5 ദിവസം കഴിഞ്ഞ്', '5 ദിവസം കഴിഞ്ഞ്');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'ഇന്ന് രാത്രി 2:00 -നു', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'ഇന്ന് രാത്രി 2:25 -നു', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 3}).calendar(), 'ഇന്ന് രാവിലെ 5:00 -നു', 'Now plus 3 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'നാളെ രാത്രി 2:00 -നു', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'ഇന്ന് രാത്രി 1:00 -നു', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'ഇന്നലെ രാത്രി 2:00 -നു', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('[കഴിഞ്ഞ] dddd[,] LT'), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('[കഴിഞ്ഞ] dddd[,] LT'), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('[കഴിഞ്ഞ] dddd[,] LT'), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ });
+
+ test('meridiem', function (assert) {
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'രാത്രി', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'രാവിലെ', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'ഉച്ച കഴിഞ്ഞ്', 'during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'വൈകുന്നേരം', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'വൈകുന്നേരം', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'രാത്രി', 'night');
+
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'രാത്രി', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'രാവിലെ', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'ഉച്ച കഴിഞ്ഞ്', ' during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'വൈകുന്നേരം', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'വൈകുന്നേരം', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'രാത്രി', 'night');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ });
+
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 should be week 3');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('mr');
+
+ test('parse', function (assert) {
+ var tests = 'जानेवारी जाने._फेब्रुवारी फेब्रु._मार्च मार्च._एप्रिल एप्रि._मे मे._जून जून._जुलै जुलै._ऑगस्ट ऑग._सप्टेंबर सप्टें._ऑक्टोबर ऑक्टो._नोव्हेंबर नोव्हें._डिसेंबर डिसें.'.split('_'), i;
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ }
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, Do MMMM YYYY, a h:mm:ss वाजता', 'रविवार, १४ फेब्रुवारी २०१०, दुपारी ३:२५:५० वाजता'],
+ ['ddd, a h वाजता', 'रवि, दुपारी ३ वाजता'],
+ ['M Mo MM MMMM MMM', '२ २ ०२ फेब्रुवारी फेब्रु.'],
+ ['YYYY YY', '२०१० १०'],
+ ['D Do DD', '१४ १४ १४'],
+ ['d do dddd ddd dd', '० ० रविवार रवि र'],
+ ['DDD DDDo DDDD', '४५ ४५ ०४५'],
+ ['w wo ww', '८ ८ ०८'],
+ ['h hh', '३ ०३'],
+ ['H HH', '१५ १५'],
+ ['m mm', '२५ २५'],
+ ['s ss', '५० ५०'],
+ ['a A', 'दुपारी दुपारी'],
+ ['LTS', 'दुपारी ३:२५:५० वाजता'],
+ ['L', '१४/०२/२०१०'],
+ ['LL', '१४ फेब्रुवारी २०१०'],
+ ['LLL', '१४ फेब्रुवारी २०१०, दुपारी ३:२५ वाजता'],
+ ['LLLL', 'रविवार, १४ फेब्रुवारी २०१०, दुपारी ३:२५ वाजता'],
+ ['l', '१४/२/२०१०'],
+ ['ll', '१४ फेब्रु. २०१०'],
+ ['lll', '१४ फेब्रु. २०१०, दुपारी ३:२५ वाजता'],
+ ['llll', 'रवि, १४ फेब्रु. २०१०, दुपारी ३:२५ वाजता']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '१', '१');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '२', '२');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '३', '३');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '४', '४');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '५', '५');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '६', '६');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '७', '७');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '८', '८');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '९', '९');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '१०', '१०');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '११', '११');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '१२', '१२');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '१३', '१३');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '१४', '१४');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '१५', '१५');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '१६', '१६');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '१७', '१७');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '१८', '१८');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '१९', '१९');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '२०', '२०');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '२१', '२१');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '२२', '२२');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '२३', '२३');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '२४', '२४');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '२५', '२५');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '२६', '२६');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '२७', '२७');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '२८', '२८');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '२९', '२९');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '३०', '३०');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '३१', '३१');
+ });
+
+ test('format month', function (assert) {
+ var expected = 'जानेवारी जाने._फेब्रुवारी फेब्रु._मार्च मार्च._एप्रिल एप्रि._मे मे._जून जून._जुलै जुलै._ऑगस्ट ऑग._सप्टेंबर सप्टें._ऑक्टोबर ऑक्टो._नोव्हेंबर नोव्हें._डिसेंबर डिसें.'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var expected = 'रविवार रवि र_सोमवार सोम सो_मंगळवार मंगळ मं_बुधवार बुध बु_गुरूवार गुरू गु_शुक्रवार शुक्र शु_शनिवार शनि श'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'काही सेकंद', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'एक मिनिट', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'एक मिनिट', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '२ मिनिटे', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '४४ मिनिटे', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'एक तास', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'एक तास', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '२ तास', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '५ तास', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '२१ तास', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'एक दिवस', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'एक दिवस', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '२ दिवस', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'एक दिवस', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '५ दिवस', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '२५ दिवस', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'एक महिना', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'एक महिना', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'एक महिना', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '२ महिने', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '२ महिने', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '३ महिने', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'एक महिना', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '५ महिने', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'एक वर्ष', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '२ वर्षे', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'एक वर्ष', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '५ वर्षे', '5 years = 5 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'काही सेकंदांमध्ये', 'prefix');
+ assert.equal(moment(0).from(30000), 'काही सेकंदांपूर्वी', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'काही सेकंदांपूर्वी', 'now from now should display as in the past');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'काही सेकंदांमध्ये', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), '५ दिवसांमध्ये', 'in 5 days');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'आज रात्री २:०० वाजता', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'आज रात्री २:२५ वाजता', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 3}).calendar(), 'आज सकाळी ५:०० वाजता', 'Now plus 3 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'उद्या रात्री २:०० वाजता', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'आज रात्री १:०० वाजता', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'काल रात्री २:०० वाजता', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('[मागील] dddd[,] LT'), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('[मागील] dddd[,] LT'), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('[मागील] dddd[,] LT'), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ });
+
+ test('meridiem', function (assert) {
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'रात्री', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'सकाळी', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'दुपारी', 'during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'सायंकाळी', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'सायंकाळी', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'रात्री', 'night');
+
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'रात्री', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'सकाळी', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'दुपारी', ' during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'सायंकाळी', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'सायंकाळी', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'रात्री', 'night');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ });
+
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '१ ०१ १', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '१ ०१ १', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '२ ०२ २', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '२ ०२ २', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '३ ०३ ३', 'Jan 15 2012 should be week 3');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('meridiem invariant', function (assert) {
+ var h, m, t1, t2;
+ for (h = 0; h < 24; ++h) {
+ for (m = 0; m < 60; m += 15) {
+ t1 = moment.utc([2000, 0, 1, h, m]);
+ t2 = moment(t1.format('A h:mm'), 'A h:mm');
+ assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
+ 'meridiem at ' + t1.format('HH:mm'));
+ }
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('ms-my');
+
+ test('parse', function (assert) {
+ var i,
+ tests = 'Januari Jan_Februari Feb_Mac Mac_April Apr_Mei Mei_Jun Jun_Julai Jul_Ogos Ogs_September Sep_Oktober Okt_November Nov_Disember Dis'.split('_');
+
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' sepatutnya bulan ' + (i + 1));
+ }
+
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Ahad, Februari 14 2010, 3:25:50 petang'],
+ ['ddd, hA', 'Ahd, 3petang'],
+ ['M Mo MM MMMM MMM', '2 2 02 Februari Feb'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 Ahad Ahd Ah'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '7 7 07'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'petang petang'],
+ ['[hari] [ke] DDDo [tahun] ini', 'hari ke 45 tahun ini'],
+ ['LTS', '15.25.50'],
+ ['L', '14/02/2010'],
+ ['LL', '14 Februari 2010'],
+ ['LLL', '14 Februari 2010 pukul 15.25'],
+ ['LLLL', 'Ahad, 14 Februari 2010 pukul 15.25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 Feb 2010'],
+ ['lll', '14 Feb 2010 pukul 15.25'],
+ ['llll', 'Ahd, 14 Feb 2010 pukul 15.25']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ });
+
+ test('format month', function (assert) {
+ var i,
+ expected = 'Januari Jan_Februari Feb_Mac Mac_April Apr_Mei Mei_Jun Jun_Julai Jul_Ogos Ogs_September Sep_Oktober Okt_November Nov_Disember Dis'.split('_');
+
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var i,
+ expected = 'Ahad Ahd Ah_Isnin Isn Is_Selasa Sel Sl_Rabu Rab Rb_Khamis Kha Km_Jumaat Jum Jm_Sabtu Sab Sb'.split('_');
+
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'beberapa saat', '44 saat = beberapa saat');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'seminit', '45 saat = seminit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'seminit', '89 saat = seminit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minit', '90 saat = 2 minit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minit', '44 minit = 44 minit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'sejam', '45 minit = sejam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'sejam', '89 minit = sejam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 jam', '90 minit = 2 jam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 jam', '5 jam = 5 jam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 jam', '21 jam = 21 jam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'sehari', '22 jam = sehari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'sehari', '35 jam = sehari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 hari', '36 jam = 2 hari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'sehari', '1 hari = sehari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 hari', '5 hari = 5 hari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 hari', '25 hari = 25 hari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'sebulan', '26 hari = sebulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'sebulan', '30 hari = sebulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'sebulan', '45 hari = sebulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 bulan', '46 hari = 2 bulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 bulan', '75 hari = 2 bulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 bulan', '76 hari = 3 bulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'sebulan', '1 bulan = sebulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 bulan', '5 bulan = 5 bulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'setahun', '345 hari = setahun');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 tahun', '548 hari = 2 tahun');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'setahun', '1 tahun = setahun');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 tahun', '5 tahun = 5 tahun');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'dalam beberapa saat', 'prefix');
+ assert.equal(moment(0).from(30000), 'beberapa saat yang lepas', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'beberapa saat yang lepas', 'waktu sekarang dari sekarang sepatutnya menunjukkan sebagai telah lepas');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'dalam beberapa saat', 'dalam beberapa saat');
+ assert.equal(moment().add({d: 5}).fromNow(), 'dalam 5 hari', 'dalam 5 hari');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'Hari ini pukul 02.00', 'hari ini pada waktu yang sama');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Hari ini pukul 02.25', 'Sekarang tambah 25 minit');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Hari ini pukul 03.00', 'Sekarang tambah 1 jam');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Esok pukul 02.00', 'esok pada waktu yang sama');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hari ini pukul 01.00', 'Sekarang tolak 1 jam');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Kelmarin pukul 02.00', 'kelmarin pada waktu yang sama');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari waktu sekarang');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari permulaan hari');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari tamat hari');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari waktu sekarang');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari permulaan hari');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari tamat hari');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 minggu lepas');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'dalam 1 minggu');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 minggu lepas');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'dalam 2 minggu');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 sepatutnya minggu 1');
+ assert.equal(moment([2012, 0, 7]).week(), 2, 'Jan 7 2012 sepatutnya minggu 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 sepatutnya minggu 2');
+ assert.equal(moment([2012, 0, 14]).week(), 3, 'Jan 14 2012 sepatutnya minggu 3');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 sepatutnya minggu 3');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2006, 11, 31]).week(), 53, 'Dec 31 2006 sepatutnya minggu 53');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 sepatutnya minggu 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 sepatutnya minggu 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 sepatutnya minggu 1');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 sepatutnya minggu 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 30]).week(), 52, 'Dec 30 2007 sepatutnya minggu 52');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 sepatutnya minggu 1');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 sepatutnya minggu 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 sepatutnya minggu 1');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 sepatutnya minggu 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 29]).week(), 52, 'Dec 29 2002 sepatutnya minggu 52');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 sepatutnya minggu 1');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 sepatutnya minggu 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 sepatutnya minggu 1');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 sepatutnya minggu 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 28]).week(), 52, 'Dec 28 2008 sepatutnya minggu 52');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 sepatutnya minggu 1');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 sepatutnya minggu 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 sepatutnya minggu 1');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 sepatutnya minggu 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 27]).week(), 52, 'Dec 27 2009 sepatutnya minggu 52');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 sepatutnya minggu 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 sepatutnya minggu 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 sepatutnya minggu 1');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 sepatutnya minggu 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 26]).week(), 52, 'Dec 26 2010 sepatutnya minggu 52');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 sepatutnya minggu 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 sepatutnya minggu 1');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 sepatutnya minggu 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 sepatutnya minggu 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '2 02 2', 'Jan 7 2012 sepatutnya minggu 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 sepatutnya minggu 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '3 03 3', 'Jan 14 2012 sepatutnya minggu 3');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 sepatutnya minggu 3');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('meridiem invariant', function (assert) {
+ var h, m, t1, t2;
+ for (h = 0; h < 24; ++h) {
+ for (m = 0; m < 60; m += 15) {
+ t1 = moment.utc([2000, 0, 1, h, m]);
+ t2 = moment(t1.format('A h:mm'), 'A h:mm');
+ assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
+ 'meridiem at ' + t1.format('HH:mm'));
+ }
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('ms');
+
+ test('parse', function (assert) {
+ var i,
+ tests = 'Januari Jan_Februari Feb_Mac Mac_April Apr_Mei Mei_Jun Jun_Julai Jul_Ogos Ogs_September Sep_Oktober Okt_November Nov_Disember Dis'.split('_');
+
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' sepatutnya bulan ' + (i + 1));
+ }
+
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Ahad, Februari 14 2010, 3:25:50 petang'],
+ ['ddd, hA', 'Ahd, 3petang'],
+ ['M Mo MM MMMM MMM', '2 2 02 Februari Feb'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 Ahad Ahd Ah'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '7 7 07'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'petang petang'],
+ ['[hari] [ke] DDDo [tahun] ini', 'hari ke 45 tahun ini'],
+ ['LTS', '15.25.50'],
+ ['L', '14/02/2010'],
+ ['LL', '14 Februari 2010'],
+ ['LLL', '14 Februari 2010 pukul 15.25'],
+ ['LLLL', 'Ahad, 14 Februari 2010 pukul 15.25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 Feb 2010'],
+ ['lll', '14 Feb 2010 pukul 15.25'],
+ ['llll', 'Ahd, 14 Feb 2010 pukul 15.25']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ });
+
+ test('format month', function (assert) {
+ var i,
+ expected = 'Januari Jan_Februari Feb_Mac Mac_April Apr_Mei Mei_Jun Jun_Julai Jul_Ogos Ogs_September Sep_Oktober Okt_November Nov_Disember Dis'.split('_');
+
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var i,
+ expected = 'Ahad Ahd Ah_Isnin Isn Is_Selasa Sel Sl_Rabu Rab Rb_Khamis Kha Km_Jumaat Jum Jm_Sabtu Sab Sb'.split('_');
+
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'beberapa saat', '44 saat = beberapa saat');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'seminit', '45 saat = seminit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'seminit', '89 saat = seminit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minit', '90 saat = 2 minit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minit', '44 minit = 44 minit');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'sejam', '45 minit = sejam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'sejam', '89 minit = sejam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 jam', '90 minit = 2 jam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 jam', '5 jam = 5 jam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 jam', '21 jam = 21 jam');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'sehari', '22 jam = sehari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'sehari', '35 jam = sehari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 hari', '36 jam = 2 hari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'sehari', '1 hari = sehari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 hari', '5 hari = 5 hari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 hari', '25 hari = 25 hari');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'sebulan', '26 hari = sebulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'sebulan', '30 hari = sebulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'sebulan', '45 hari = sebulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 bulan', '46 hari = 2 bulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 bulan', '75 hari = 2 bulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 bulan', '76 hari = 3 bulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'sebulan', '1 bulan = sebulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 bulan', '5 bulan = 5 bulan');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'setahun', '345 hari = setahun');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 tahun', '548 hari = 2 tahun');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'setahun', '1 tahun = setahun');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 tahun', '5 tahun = 5 tahun');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'dalam beberapa saat', 'prefix');
+ assert.equal(moment(0).from(30000), 'beberapa saat yang lepas', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'beberapa saat yang lepas', 'waktu sekarang dari sekarang sepatutnya menunjukkan sebagai telah lepas');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'dalam beberapa saat', 'dalam beberapa saat');
+ assert.equal(moment().add({d: 5}).fromNow(), 'dalam 5 hari', 'dalam 5 hari');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'Hari ini pukul 02.00', 'hari ini pada waktu yang sama');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Hari ini pukul 02.25', 'Sekarang tambah 25 minit');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Hari ini pukul 03.00', 'Sekarang tambah 1 jam');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Esok pukul 02.00', 'esok pada waktu yang sama');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hari ini pukul 01.00', 'Sekarang tolak 1 jam');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Kelmarin pukul 02.00', 'kelmarin pada waktu yang sama');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari waktu sekarang');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari permulaan hari');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari tamat hari');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari waktu sekarang');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari permulaan hari');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari tamat hari');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 minggu lepas');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'dalam 1 minggu');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 minggu lepas');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'dalam 2 minggu');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 sepatutnya minggu 1');
+ assert.equal(moment([2012, 0, 7]).week(), 2, 'Jan 7 2012 sepatutnya minggu 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 sepatutnya minggu 2');
+ assert.equal(moment([2012, 0, 14]).week(), 3, 'Jan 14 2012 sepatutnya minggu 3');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 sepatutnya minggu 3');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2006, 11, 31]).week(), 53, 'Dec 31 2006 sepatutnya minggu 53');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 sepatutnya minggu 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 sepatutnya minggu 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 sepatutnya minggu 1');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 sepatutnya minggu 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 30]).week(), 52, 'Dec 30 2007 sepatutnya minggu 52');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 sepatutnya minggu 1');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 sepatutnya minggu 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 sepatutnya minggu 1');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 sepatutnya minggu 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 29]).week(), 52, 'Dec 29 2002 sepatutnya minggu 52');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 sepatutnya minggu 1');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 sepatutnya minggu 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 sepatutnya minggu 1');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 sepatutnya minggu 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 28]).week(), 52, 'Dec 28 2008 sepatutnya minggu 52');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 sepatutnya minggu 1');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 sepatutnya minggu 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 sepatutnya minggu 1');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 sepatutnya minggu 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 27]).week(), 52, 'Dec 27 2009 sepatutnya minggu 52');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 sepatutnya minggu 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 sepatutnya minggu 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 sepatutnya minggu 1');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 sepatutnya minggu 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 26]).week(), 52, 'Dec 26 2010 sepatutnya minggu 52');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 sepatutnya minggu 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 sepatutnya minggu 1');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 sepatutnya minggu 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 sepatutnya minggu 2');
+ });
+
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 sepatutnya minggu 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '2 02 2', 'Jan 7 2012 sepatutnya minggu 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 sepatutnya minggu 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '3 03 3', 'Jan 14 2012 sepatutnya minggu 3');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 sepatutnya minggu 3');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('meridiem invariant', function (assert) {
+ var h, m, t1, t2;
+ for (h = 0; h < 24; ++h) {
+ for (m = 0; m < 60; m += 15) {
+ t1 = moment.utc([2000, 0, 1, h, m]);
+ t2 = moment(t1.format('A h:mm'), 'A h:mm');
+ assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
+ 'meridiem at ' + t1.format('HH:mm'));
+ }
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('my');
+
+ test('parse', function (assert) {
+ var tests = 'ဇန်နဝါရီ ဇန်_ဖေဖော်ဝါရီ ဖေ_မတ် မတ်_ဧပြီ ပြီ_မေ မေ_ဇွန် ဇွန်_ဇူလိုင် လိုင်_သြဂုတ် သြ_စက်တင်ဘာ စက်_အောက်တိုဘာ အောက်_နိုဝင်ဘာ နို_ဒီဇင်ဘာ ဒီ'.split('_'),
+ i;
+
+ function equalTest (input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ }
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'တနင်္ဂနွေ, ဖေဖော်ဝါရီ ၁၄ ၂၀၁၀, ၃:၂၅:၅၀ pm'],
+ ['ddd, hA', 'နွေ, ၃PM'],
+ ['M Mo MM MMMM MMM', '၂ ၂ ၀၂ ဖေဖော်ဝါရီ ဖေ'],
+ ['YYYY YY', '၂၀၁၀ ၁၀'],
+ ['D Do DD', '၁၄ ၁၄ ၁၄'],
+ ['d do dddd ddd dd', '၀ ၀ တနင်္ဂနွေ နွေ နွေ'],
+ ['DDD DDDo DDDD', '၄၅ ၄၅ ၀၄၅'],
+ ['w wo ww', '၆ ၆ ၀၆'],
+ ['h hh', '၃ ၀၃'],
+ ['H HH', '၁၅ ၁၅'],
+ ['m mm', '၂၅ ၂၅'],
+ ['s ss', '၅၀ ၅၀'],
+ ['a A', 'pm PM'],
+ ['[နှစ်၏] DDDo [ရက်မြောက်]', 'နှစ်၏ ၄၅ ရက်မြောက်'],
+ ['LTS', '၁၅:၂၅:၅၀'],
+ ['L', '၁၄/၀၂/၂၀၁၀'],
+ ['LL', '၁၄ ဖေဖော်ဝါရီ ၂၀၁၀'],
+ ['LLL', '၁၄ ဖေဖော်ဝါရီ ၂၀၁၀ ၁၅:၂၅'],
+ ['LLLL', 'တနင်္ဂနွေ ၁၄ ဖေဖော်ဝါရီ ၂၀၁၀ ၁၅:၂၅'],
+ ['l', '၁၄/၂/၂၀၁၀'],
+ ['ll', '၁၄ ဖေ ၂၀၁၀'],
+ ['lll', '၁၄ ဖေ ၂၀၁၀ ၁၅:၂၅'],
+ ['llll', 'နွေ ၁၄ ဖေ ၂၀၁၀ ၁၅:၂၅']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '၁', '၁');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '၂', '၂');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '၃', '၃');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '၄', '၄');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '၅', '၅');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '၆', '၆');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '၇', '၇');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '၈', '၈');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '၉', '၉');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '၁၀', '၁၀');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '၁၁', '၁၁');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '၁၂', '၁၂');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '၁၃', '၁၃');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '၁၄', '၁၄');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '၁၅', '၁၅');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '၁၆', '၁၆');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '၁၇', '၁၇');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '၁၈', '၁၈');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '၁၉', '၁၉');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '၂၀', '၂၀');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '၂၁', '၂၁');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '၂၂', '၂၂');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '၂၃', '၂၃');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '၂၄', '၂၄');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '၂၅', '၂၅');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '၂၆', '၂၆');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '၂၇', '၂၇');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '၂၈', '၂၈');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '၂၉', '၂၉');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '၃၀', '၃၀');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '၃၁', '၃၁');
+ });
+
+ test('format month', function (assert) {
+ var expected = 'ဇန်နဝါရီ ဇန်_ဖေဖော်ဝါရီ ဖေ_မတ် မတ်_ဧပြီ ပြီ_မေ မေ_ဇွန် ဇွန်_ဇူလိုင် လိုင်_သြဂုတ် သြ_စက်တင်ဘာ စက်_အောက်တိုဘာ အောက်_နိုဝင်ဘာ နို_ဒီဇင်ဘာ ဒီ'.split('_'),
+ i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var expected = 'တနင်္ဂနွေ နွေ နွေ_တနင်္လာ လာ လာ_အင်္ဂါ ဂါ ဂါ_ဗုဒ္ဓဟူး ဟူး ဟူး_ကြာသပတေး ကြာ ကြာ_သောကြာ သော သော_စနေ နေ နေ'.split('_'),
+ i;
+
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ s: 44
+ }), true), 'စက္ကန်.အနည်းငယ်', '၄၄ စက္ကန်. = စက္ကန်.အနည်းငယ်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ s: 45
+ }), true), 'တစ်မိနစ်', '၄၅ စက္ကန်. = တစ်မိနစ်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ s: 89
+ }), true), 'တစ်မိနစ်', '၈၉ စက္ကန်. = တစ်မိနစ်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ s: 90
+ }), true), '၂ မိနစ်', '၉၀ စက္ကန်. = ၂ မိနစ်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ m: 44
+ }), true), '၄၄ မိနစ်', '၄၄ မိနစ် = ၄၄ မိနစ်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ m: 45
+ }), true), 'တစ်နာရီ', '၄၅ မိနစ် = ၁ နာရီ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ m: 89
+ }), true), 'တစ်နာရီ', '၈၉ မိနစ် = တစ်နာရီ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ m: 90
+ }), true), '၂ နာရီ', 'မိနစ် ၉၀= ၂ နာရီ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ h: 5
+ }), true), '၅ နာရီ', '၅ နာရီ= ၅ နာရီ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ h: 21
+ }), true), '၂၁ နာရီ', '၂၁ နာရီ =၂၁ နာရီ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ h: 22
+ }), true), 'တစ်ရက်', '၂၂ နာရီ =တစ်ရက်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ h: 35
+ }), true), 'တစ်ရက်', '၃၅ နာရီ =တစ်ရက်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ h: 36
+ }), true), '၂ ရက်', '၃၆ နာရီ = ၂ ရက်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 1
+ }), true), 'တစ်ရက်', '၁ ရက်= တစ်ရက်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 5
+ }), true), '၅ ရက်', '၅ ရက် = ၅ ရက်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 25
+ }), true), '၂၅ ရက်', '၂၅ ရက်= ၂၅ ရက်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 26
+ }), true), 'တစ်လ', '၂၆ ရက် = တစ်လ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 30
+ }), true), 'တစ်လ', 'ရက် ၃၀ = တစ်လ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 43
+ }), true), 'တစ်လ', '၄၃ ရက် = တစ်လ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 46
+ }), true), '၂ လ', '၄၆ ရက် = ၂ လ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 74
+ }), true), '၂ လ', '၇၅ ရက်= ၂ လ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 76
+ }), true), '၃ လ', '၇၆ ရက် = ၃ လ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ M: 1
+ }), true), 'တစ်လ', '၁ လ = တစ်လ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ M: 5
+ }), true), '၅ လ', '၅ လ = ၅ လ');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 345
+ }), true), 'တစ်နှစ်', '၃၄၅ ရက် = တစ်နှစ်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ d: 548
+ }), true), '၂ နှစ်', '၅၄၈ ရက် = ၂ နှစ်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ y: 1
+ }), true), 'တစ်နှစ်', '၁ နှစ် = တစ်နှစ်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({
+ y: 5
+ }), true), '၅ နှစ်', '၅ နှစ် = ၅ နှစ်');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'လာမည့် စက္ကန်.အနည်းငယ် မှာ', 'prefix');
+ assert.equal(moment(0).from(30000), 'လွန်ခဲ့သော စက္ကန်.အနည်းငယ် က', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'လွန်ခဲ့သော စက္ကန်.အနည်းငယ် က', 'ယခုမှစပြီး အတိတ်တွင်ဖော်ပြသလိုဖော်ပြမည်');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({
+ s: 30
+ }).fromNow(), 'လာမည့် စက္ကန်.အနည်းငယ် မှာ', 'လာမည့် စက္ကန်.အနည်းငယ် မှာ');
+ assert.equal(moment().add({
+ d: 5
+ }).fromNow(), 'လာမည့် ၅ ရက် မှာ', 'လာမည့် ၅ ရက် မှာ');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'ယနေ. ၀၂:၀၀ မှာ', 'ယနေ. ဒီအချိန်');
+ assert.equal(moment(a).add({
+ m: 25
+ }).calendar(), 'ယနေ. ၀၂:၂၅ မှာ', 'ယခုမှ ၂၅ မိနစ်ပေါင်းထည့်');
+ assert.equal(moment(a).add({
+ h: 1
+ }).calendar(), 'ယနေ. ၀၃:၀၀ မှာ', 'ယခုမှ ၁ နာရီပေါင်းထည့်');
+ assert.equal(moment(a).add({
+ d: 1
+ }).calendar(), 'မနက်ဖြန် ၀၂:၀၀ မှာ', 'မနက်ဖြန် ဒီအချိန်');
+ assert.equal(moment(a).subtract({
+ h: 1
+ }).calendar(), 'ယနေ. ၀၁:၀၀ မှာ', 'ယခုမှ ၁ နာရီနှုတ်');
+ assert.equal(moment(a).subtract({
+ d: 1
+ }).calendar(), 'မနေ.က ၀၂:၀၀ မှာ', 'မနေ.က ဒီအချိန်');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({
+ d: i
+ });
+ assert.equal(m.calendar(), m.format('dddd LT [မှာ]'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd LT [မှာ]'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd LT [မှာ]'), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({
+ d: i
+ });
+ assert.equal(m.calendar(), m.format('[ပြီးခဲ့သော] dddd LT [မှာ]'), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('[ပြီးခဲ့သော] dddd LT [မှာ]'), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('[ပြီးခဲ့သော] dddd LT [မှာ]'), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({
+ w: 1
+ }),
+ weeksFromNow = moment().add({
+ w: 1
+ });
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), 'လွန်ခဲ့သော ၁ ပတ်က');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '၁ ပတ်အတွင်း');
+
+ weeksAgo = moment().subtract({
+ w: 2
+ });
+ weeksFromNow = moment().add({
+ w: 2
+ });
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '၂ ပတ် အရင်က');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '၂ ပတ် အတွင်း');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ });
+
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '၅၂ ၅၂ ၅၂', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '၁ ၀၁ ၁', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '၁ ၀၁ ၁', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '၂ ၀၂ ၂', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '၂ ၀၂ ၂', 'Jan 15 2012 should be week 2');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('nb');
+
+ test('parse', function (assert) {
+ var tests = 'januar jan._februar feb._mars mars_april april_mai mai_juni juni_juli juli_august aug._september sep._oktober okt._november nov._desember des.'.split('_'),
+ i;
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ }
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'søndag, februar 14. 2010, 3:25:50 pm'],
+ ['ddd, hA', 'sø., 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 februar feb.'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. søndag sø. sø'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[den] DDDo [dagen i året]', 'den 45. dagen i året'],
+ ['LTS', '15:25:50'],
+ ['L', '14.02.2010'],
+ ['LL', '14. februar 2010'],
+ ['LLL', '14. februar 2010 kl. 15:25'],
+ ['LLLL', 'søndag 14. februar 2010 kl. 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14. feb. 2010'],
+ ['lll', '14. feb. 2010 kl. 15:25'],
+ ['llll', 'sø. 14. feb. 2010 kl. 15:25']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ });
+
+ test('format month', function (assert) {
+ var expected = 'januar jan._februar feb._mars mars_april april_mai mai_juni juni_juli juli_august aug._september sep._oktober okt._november nov._desember des.'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+ test('format week', function (assert) {
+ var expected = 'søndag sø. sø_mandag ma. ma_tirsdag ti. ti_onsdag on. on_torsdag to. to_fredag fr. fr_lørdag lø. lø'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
-
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'beberapa saat', '44 saat = beberapa saat');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'seminit', '45 saat = seminit');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'seminit', '89 saat = seminit');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minit', '90 saat = 2 minit');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minit', '44 minit = 44 minit');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'sejam', '45 minit = sejam');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'sejam', '89 minit = sejam');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 jam', '90 minit = 2 jam');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 jam', '5 jam = 5 jam');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 jam', '21 jam = 21 jam');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'sehari', '22 jam = sehari');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'sehari', '35 jam = sehari');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 hari', '36 jam = 2 hari');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'sehari', '1 hari = sehari');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 hari', '5 hari = 5 hari');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 hari', '25 hari = 25 hari');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'sebulan', '26 hari = sebulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'sebulan', '30 hari = sebulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'sebulan', '45 hari = sebulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 bulan', '46 hari = 2 bulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 bulan', '75 hari = 2 bulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 bulan', '76 hari = 3 bulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'sebulan', '1 bulan = sebulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 bulan', '5 bulan = 5 bulan');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'setahun', '345 hari = setahun');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 tahun', '548 hari = 2 tahun');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'setahun', '1 tahun = setahun');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 tahun', '5 tahun = 5 tahun');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'noen sekunder', '44 sekunder = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ett minutt', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ett minutt', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutter', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutter', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'en time', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'en time', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 timer', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 timer', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 timer', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'en dag', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'en dag', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dager', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'en dag', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dager', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dager', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'en måned', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'en måned', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'en måned', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 måneder', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 måneder', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 måneder', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'en måned', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 måneder', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ett år', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 år', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ett år', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 år', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'dalam beberapa saat', 'prefix');
- assert.equal(moment(0).from(30000), 'beberapa saat yang lepas', 'suffix');
+ assert.equal(moment(30000).from(0), 'om noen sekunder', 'prefix');
+ assert.equal(moment(0).from(30000), 'for noen sekunder siden', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'beberapa saat yang lepas', 'waktu sekarang dari sekarang sepatutnya menunjukkan sebagai telah lepas');
+ assert.equal(moment().fromNow(), 'for noen sekunder siden', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'dalam beberapa saat', 'dalam beberapa saat');
- assert.equal(moment().add({d: 5}).fromNow(), 'dalam 5 hari', 'dalam 5 hari');
+ assert.equal(moment().add({s: 30}).fromNow(), 'om noen sekunder', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'om 5 dager', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Hari ini pukul 02.00', 'hari ini pada waktu yang sama');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Hari ini pukul 02.25', 'Sekarang tambah 25 minit');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Hari ini pukul 03.00', 'Sekarang tambah 1 jam');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Esok pukul 02.00', 'esok pada waktu yang sama');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hari ini pukul 01.00', 'Sekarang tolak 1 jam');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Kelmarin pukul 02.00', 'kelmarin pada waktu yang sama');
+ assert.equal(moment(a).calendar(), 'i dag kl. 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'i dag kl. 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'i dag kl. 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'i morgen kl. 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'i dag kl. 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'i går kl. 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari waktu sekarang');
+ assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari permulaan hari');
+ assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [pukul] LT'), 'Hari ini + ' + i + ' hari tamat hari');
+ assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari waktu sekarang');
+ assert.equal(m.calendar(), m.format('[forrige] dddd [kl.] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari permulaan hari');
+ assert.equal(m.calendar(), m.format('[forrige] dddd [kl.] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [lepas] [pukul] LT'), 'Hari ini - ' + i + ' hari tamat hari');
+ assert.equal(m.calendar(), m.format('[forrige] dddd [kl.] LT'), 'Today - ' + i + ' days end of day');
}
});
var weeksAgo = moment().subtract({w: 1}),
weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 minggu lepas');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'dalam 1 minggu');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
weeksAgo = moment().subtract({w: 2});
weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 minggu lepas');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'dalam 2 minggu');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 sepatutnya minggu 1');
- assert.equal(moment([2012, 0, 7]).week(), 2, 'Jan 7 2012 sepatutnya minggu 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 sepatutnya minggu 2');
- assert.equal(moment([2012, 0, 14]).week(), 3, 'Jan 14 2012 sepatutnya minggu 3');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 sepatutnya minggu 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 53, 'Dec 31 2006 sepatutnya minggu 53');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 sepatutnya minggu 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 sepatutnya minggu 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 sepatutnya minggu 1');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 sepatutnya minggu 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 sepatutnya minggu 2');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 30]).week(), 52, 'Dec 30 2007 sepatutnya minggu 52');
- assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 sepatutnya minggu 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 sepatutnya minggu 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 sepatutnya minggu 1');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 sepatutnya minggu 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 sepatutnya minggu 2');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 52, 'Dec 29 2002 sepatutnya minggu 52');
- assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 sepatutnya minggu 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 sepatutnya minggu 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 sepatutnya minggu 1');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 sepatutnya minggu 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 sepatutnya minggu 2');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 52, 'Dec 28 2008 sepatutnya minggu 52');
- assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 sepatutnya minggu 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 sepatutnya minggu 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 sepatutnya minggu 1');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 sepatutnya minggu 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 sepatutnya minggu 2');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 52, 'Dec 27 2009 sepatutnya minggu 52');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 sepatutnya minggu 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 sepatutnya minggu 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 sepatutnya minggu 1');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 sepatutnya minggu 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 sepatutnya minggu 2');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 52, 'Dec 26 2010 sepatutnya minggu 52');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 sepatutnya minggu 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 sepatutnya minggu 1');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 sepatutnya minggu 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 sepatutnya minggu 2');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
- test('weeks year starting sunday format', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 sepatutnya minggu 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '2 02 2', 'Jan 7 2012 sepatutnya minggu 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 sepatutnya minggu 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '3 03 3', 'Jan 14 2012 sepatutnya minggu 3');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3', 'Jan 15 2012 sepatutnya minggu 3');
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}
});
- test('meridiem invariant', function (assert) {
- var h, m, t1, t2;
- for (h = 0; h < 24; ++h) {
- for (m = 0; m < 60; m += 15) {
- t1 = moment.utc([2000, 0, 1, h, m]);
- t2 = moment(t1.format('A h:mm'), 'A h:mm');
- assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
- 'meridiem at ' + t1.format('HH:mm'));
- }
- }
- });
-
test('lenient ordinal parsing of number', function (assert) {
var i, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('my');
+ localeModule('ne');
test('parse', function (assert) {
- var tests = 'ဇန်နဝါရီ ဇန်_ဖေဖော်ဝါရီ ဖေ_မတ် မတ်_ဧပြီ ပြီ_မေ မေ_ဇွန် ဇွန်_ဇူလိုင် လိုင်_သြဂုတ် သြ_စက်တင်ဘာ စက်_အောက်တိုဘာ အောက်_နိုဝင်ဘာ နို_ဒီဇင်ဘာ ဒီ'.split('_'),
- i;
-
- function equalTest (input, mmm, i) {
+ var tests = 'जनवरी जन._फेब्रुवरी फेब्रु._मार्च मार्च_अप्रिल अप्रि._मई मई_जुन जुन_जुलाई जुलाई._अगष्ट अग._सेप्टेम्बर सेप्ट._अक्टोबर अक्टो._नोभेम्बर नोभे._डिसेम्बर डिसे.'.split('_'), i;
+ function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
for (i = 0; i < 12; i++) {
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'တနင်္ဂနွေ, ဖေဖော်ဝါရီ ၁၄ ၂၀၁၀, ၃:၂၅:၅၀ pm'],
- ['ddd, hA', 'နွေ, ၃PM'],
- ['M Mo MM MMMM MMM', '၂ ၂ ၀၂ ဖေဖော်ဝါရီ ဖေ'],
- ['YYYY YY', '၂၀၁၀ ၁၀'],
- ['D Do DD', '၁၄ ၁၄ ၁၄'],
- ['d do dddd ddd dd', '၀ ၀ တနင်္ဂနွေ နွေ နွေ'],
- ['DDD DDDo DDDD', '၄၅ ၄၅ ၀၄၅'],
- ['w wo ww', '၆ ၆ ၀၆'],
- ['h hh', '၃ ၀၃'],
- ['H HH', '၁၅ ၁၅'],
- ['m mm', '၂၅ ၂၅'],
- ['s ss', '၅၀ ၅၀'],
- ['a A', 'pm PM'],
- ['[နှစ်၏] DDDo [ရက်မြောက်]', 'နှစ်၏ ၄၅ ရက်မြောက်'],
- ['LTS', '၁၅:၂၅:၅၀'],
- ['L', '၁၄/၀၂/၂၀၁၀'],
- ['LL', '၁၄ ဖေဖော်ဝါရီ ၂၀၁၀'],
- ['LLL', '၁၄ ဖေဖော်ဝါရီ ၂၀၁၀ ၁၅:၂၅'],
- ['LLLL', 'တနင်္ဂနွေ ၁၄ ဖေဖော်ဝါရီ ၂၀၁၀ ၁၅:၂၅'],
- ['l', '၁၄/၂/၂၀၁၀'],
- ['ll', '၁၄ ဖေ ၂၀၁၀'],
- ['lll', '၁၄ ဖေ ၂၀၁၀ ၁၅:၂၅'],
- ['llll', 'နွေ ၁၄ ဖေ ၂၀၁၀ ၁၅:၂၅']
+ ['dddd, Do MMMM YYYY, aको h:mm:ss बजे', 'आइतबार, १४ फेब्रुवरी २०१०, दिउँसोको ३:२५:५० बजे'],
+ ['ddd, aको h बजे', 'आइत., दिउँसोको ३ बजे'],
+ ['M Mo MM MMMM MMM', '२ २ ०२ फेब्रुवरी फेब्रु.'],
+ ['YYYY YY', '२०१० १०'],
+ ['D Do DD', '१४ १४ १४'],
+ ['d do dddd ddd dd', '० ० आइतबार आइत. आ.'],
+ ['DDD DDDo DDDD', '४५ ४५ ०४५'],
+ ['w wo ww', '८ ८ ०८'],
+ ['h hh', '३ ०३'],
+ ['H HH', '१५ १५'],
+ ['m mm', '२५ २५'],
+ ['s ss', '५० ५०'],
+ ['a A', 'दिउँसो दिउँसो'],
+ ['LTS', 'दिउँसोको ३:२५:५० बजे'],
+ ['L', '१४/०२/२०१०'],
+ ['LL', '१४ फेब्रुवरी २०१०'],
+ ['LLL', '१४ फेब्रुवरी २०१०, दिउँसोको ३:२५ बजे'],
+ ['LLLL', 'आइतबार, १४ फेब्रुवरी २०१०, दिउँसोको ३:२५ बजे'],
+ ['l', '१४/२/२०१०'],
+ ['ll', '१४ फेब्रु. २०१०'],
+ ['lll', '१४ फेब्रु. २०१०, दिउँसोको ३:२५ बजे'],
+ ['llll', 'आइत., १४ फेब्रु. २०१०, दिउँसोको ३:२५ बजे']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '၁', '၁');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '၂', '၂');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '၃', '၃');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '၄', '၄');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '၅', '၅');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '၆', '၆');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '၇', '၇');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '၈', '၈');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '၉', '၉');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '၁၀', '၁၀');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '१', '१');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '२', '२');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '३', '३');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '४', '४');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '५', '५');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '६', '६');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '७', '७');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '८', '८');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '९', '९');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '१०', '१०');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '၁၁', '၁၁');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '၁၂', '၁၂');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '၁၃', '၁၃');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '၁၄', '၁၄');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '၁၅', '၁၅');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '၁၆', '၁၆');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '၁၇', '၁၇');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '၁၈', '၁၈');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '၁၉', '၁၉');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '၂၀', '၂၀');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '११', '११');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '१२', '१२');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '१३', '१३');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '१४', '१४');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '१५', '१५');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '१६', '१६');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '१७', '१७');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '१८', '१८');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '१९', '१९');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '२०', '२०');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '၂၁', '၂၁');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '၂၂', '၂၂');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '၂၃', '၂၃');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '၂၄', '၂၄');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '၂၅', '၂၅');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '၂၆', '၂၆');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '၂၇', '၂၇');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '၂၈', '၂၈');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '၂၉', '၂၉');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '၃၀', '၃၀');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '२१', '२१');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '२२', '२२');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '२३', '२३');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '२४', '२४');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '२५', '२५');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '२६', '२६');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '२७', '२७');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '२८', '२८');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '२९', '२९');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '३०', '३०');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '၃၁', '၃၁');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '३१', '३१');
});
test('format month', function (assert) {
- var expected = 'ဇန်နဝါရီ ဇန်_ဖေဖော်ဝါရီ ဖေ_မတ် မတ်_ဧပြီ ပြီ_မေ မေ_ဇွန် ဇွန်_ဇူလိုင် လိုင်_သြဂုတ် သြ_စက်တင်ဘာ စက်_အောက်တိုဘာ အောက်_နိုဝင်ဘာ နို_ဒီဇင်ဘာ ဒီ'.split('_'),
- i;
+ var expected = 'जनवरी जन._फेब्रुवरी फेब्रु._मार्च मार्च_अप्रिल अप्रि._मई मई_जुन जुन_जुलाई जुलाई._अगष्ट अग._सेप्टेम्बर सेप्ट._अक्टोबर अक्टो._नोभेम्बर नोभे._डिसेम्बर डिसे.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'တနင်္ဂနွေ နွေ နွေ_တနင်္လာ လာ လာ_အင်္ဂါ ဂါ ဂါ_ဗုဒ္ဓဟူး ဟူး ဟူး_ကြာသပတေး ကြာ ကြာ_သောကြာ သော သော_စနေ နေ နေ'.split('_'),
- i;
-
+ var expected = 'आइतबार आइत. आ._सोमबार सोम. सो._मङ्गलबार मङ्गल. मं._बुधबार बुध. बु._बिहिबार बिहि. बि._शुक्रबार शुक्र. शु._शनिबार शनि. श.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({
- s: 44
- }), true), 'စက္ကန်.အနည်းငယ်', '၄၄ စက္ကန်. = စက္ကန်.အနည်းငယ်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- s: 45
- }), true), 'တစ်မိနစ်', '၄၅ စက္ကန်. = တစ်မိနစ်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- s: 89
- }), true), 'တစ်မိနစ်', '၈၉ စက္ကန်. = တစ်မိနစ်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- s: 90
- }), true), '၂ မိနစ်', '၉၀ စက္ကန်. = ၂ မိနစ်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- m: 44
- }), true), '၄၄ မိနစ်', '၄၄ မိနစ် = ၄၄ မိနစ်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- m: 45
- }), true), 'တစ်နာရီ', '၄၅ မိနစ် = ၁ နာရီ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- m: 89
- }), true), 'တစ်နာရီ', '၈၉ မိနစ် = တစ်နာရီ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- m: 90
- }), true), '၂ နာရီ', 'မိနစ် ၉၀= ၂ နာရီ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- h: 5
- }), true), '၅ နာရီ', '၅ နာရီ= ၅ နာရီ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- h: 21
- }), true), '၂၁ နာရီ', '၂၁ နာရီ =၂၁ နာရီ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- h: 22
- }), true), 'တစ်ရက်', '၂၂ နာရီ =တစ်ရက်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- h: 35
- }), true), 'တစ်ရက်', '၃၅ နာရီ =တစ်ရက်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- h: 36
- }), true), '၂ ရက်', '၃၆ နာရီ = ၂ ရက်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 1
- }), true), 'တစ်ရက်', '၁ ရက်= တစ်ရက်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 5
- }), true), '၅ ရက်', '၅ ရက် = ၅ ရက်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 25
- }), true), '၂၅ ရက်', '၂၅ ရက်= ၂၅ ရက်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 26
- }), true), 'တစ်လ', '၂၆ ရက် = တစ်လ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 30
- }), true), 'တစ်လ', 'ရက် ၃၀ = တစ်လ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 43
- }), true), 'တစ်လ', '၄၃ ရက် = တစ်လ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 46
- }), true), '၂ လ', '၄၆ ရက် = ၂ လ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 74
- }), true), '၂ လ', '၇၅ ရက်= ၂ လ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 76
- }), true), '၃ လ', '၇၆ ရက် = ၃ လ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- M: 1
- }), true), 'တစ်လ', '၁ လ = တစ်လ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- M: 5
- }), true), '၅ လ', '၅ လ = ၅ လ');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 345
- }), true), 'တစ်နှစ်', '၃၄၅ ရက် = တစ်နှစ်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- d: 548
- }), true), '၂ နှစ်', '၅၄၈ ရက် = ၂ နှစ်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- y: 1
- }), true), 'တစ်နှစ်', '၁ နှစ် = တစ်နှစ်');
- assert.equal(start.from(moment([2007, 1, 28]).add({
- y: 5
- }), true), '၅ နှစ်', '၅ နှစ် = ၅ နှစ်');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'केही क्षण', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'एक मिनेट', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'एक मिनेट', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '२ मिनेट', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '४४ मिनेट', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'एक घण्टा', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'एक घण्टा', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '२ घण्टा', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '५ घण्टा', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '२१ घण्टा', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'एक दिन', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'एक दिन', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '२ दिन', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'एक दिन', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '५ दिन', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '२५ दिन', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'एक महिना', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'एक महिना', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'एक महिना', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '२ महिना', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '२ महिना', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '३ महिना', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'एक महिना', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '५ महिना', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'एक बर्ष', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '२ बर्ष', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'एक बर्ष', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '५ बर्ष', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'လာမည့် စက္ကန်.အနည်းငယ် မှာ', 'prefix');
- assert.equal(moment(0).from(30000), 'လွန်ခဲ့သော စက္ကန်.အနည်းငယ် က', 'suffix');
+ assert.equal(moment(30000).from(0), 'केही क्षणमा', 'prefix');
+ assert.equal(moment(0).from(30000), 'केही क्षण अगाडि', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'လွန်ခဲ့သော စက္ကန်.အနည်းငယ် က', 'ယခုမှစပြီး အတိတ်တွင်ဖော်ပြသလိုဖော်ပြမည်');
+ assert.equal(moment().fromNow(), 'केही क्षण अगाडि', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({
- s: 30
- }).fromNow(), 'လာမည့် စက္ကန်.အနည်းငယ် မှာ', 'လာမည့် စက္ကန်.အနည်းငယ် မှာ');
- assert.equal(moment().add({
- d: 5
- }).fromNow(), 'လာမည့် ၅ ရက် မှာ', 'လာမည့် ၅ ရက် မှာ');
+ assert.equal(moment().add({s: 30}).fromNow(), 'केही क्षणमा', 'केही क्षणमा');
+ assert.equal(moment().add({d: 5}).fromNow(), '५ दिनमा', '५ दिनमा');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'ယနေ. ၀၂:၀၀ မှာ', 'ယနေ. ဒီအချိန်');
- assert.equal(moment(a).add({
- m: 25
- }).calendar(), 'ယနေ. ၀၂:၂၅ မှာ', 'ယခုမှ ၂၅ မိနစ်ပေါင်းထည့်');
- assert.equal(moment(a).add({
- h: 1
- }).calendar(), 'ယနေ. ၀၃:၀၀ မှာ', 'ယခုမှ ၁ နာရီပေါင်းထည့်');
- assert.equal(moment(a).add({
- d: 1
- }).calendar(), 'မနက်ဖြန် ၀၂:၀၀ မှာ', 'မနက်ဖြန် ဒီအချိန်');
- assert.equal(moment(a).subtract({
- h: 1
- }).calendar(), 'ယနေ. ၀၁:၀၀ မှာ', 'ယခုမှ ၁ နာရီနှုတ်');
- assert.equal(moment(a).subtract({
- d: 1
- }).calendar(), 'မနေ.က ၀၂:၀၀ မှာ', 'မနေ.က ဒီအချိန်');
+ assert.equal(moment(a).calendar(), 'आज रातिको २:०० बजे', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'आज रातिको २:२५ बजे', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'आज बिहानको ३:०० बजे', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'भोलि रातिको २:०० बजे', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'आज रातिको १:०० बजे', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'हिजो रातिको २:०० बजे', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
- m = moment().add({
- d: i
- });
- assert.equal(m.calendar(), m.format('dddd LT [မှာ]'), 'Today + ' + i + ' days current time');
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('[आउँदो] dddd[,] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd LT [မှာ]'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[आउँदो] dddd[,] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd LT [မှာ]'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[आउँदो] dddd[,] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
-
for (i = 2; i < 7; i++) {
- m = moment().subtract({
- d: i
- });
- assert.equal(m.calendar(), m.format('[ပြီးခဲ့သော] dddd LT [မှာ]'), 'Today - ' + i + ' days current time');
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('[गएको] dddd[,] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[ပြီးခဲ့သော] dddd LT [မှာ]'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[गएको] dddd[,] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[ပြီးခဲ့သော] dddd LT [မှာ]'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[गएको] dddd[,] LT'), 'Today - ' + i + ' days end of day');
}
});
test('calendar all else', function (assert) {
- var weeksAgo = moment().subtract({
- w: 1
- }),
- weeksFromNow = moment().add({
- w: 1
- });
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), 'လွန်ခဲ့သော ၁ ပတ်က');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '၁ ပတ်အတွင်း');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
- weeksAgo = moment().subtract({
- w: 2
- });
- weeksFromNow = moment().add({
- w: 2
- });
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '၂ ပတ် အရင်က');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), '၂ ပတ် အတွင်း');
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ });
+
+ test('meridiem', function (assert) {
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'राति', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'बिहान', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'दिउँसो', 'during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'साँझ', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'साँझ', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'राति', 'night');
+
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'राति', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'बिहान', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'दिउँसो', 'during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'साँझ', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'साँझ', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'राति', 'night');
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
- assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
- assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
- assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
});
+
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '၅၂ ၅၂ ၅၂', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '၁ ၀၁ ၁', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '၁ ၀၁ ၁', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '၂ ၀၂ ၂', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '၂ ၀၂ ၂', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '५३ ५३ ५३', 'Dec 26 2011 should be week 53');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '१ ०१ १', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '१ ०१ १', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '२ ०२ २', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '२ ०२ २', 'Jan 9 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}
});
+ test('meridiem invariant', function (assert) {
+ var h, m, t1, t2;
+ for (h = 0; h < 24; ++h) {
+ for (m = 0; m < 60; m += 15) {
+ t1 = moment.utc([2000, 0, 1, h, m]);
+ t2 = moment(t1.format('A h:mm'), 'A h:mm');
+ assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
+ 'meridiem at ' + t1.format('HH:mm'));
+ }
+ }
+ });
+
test('strict ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('nb');
+ localeModule('nl');
test('parse', function (assert) {
- var tests = 'januar jan_februar feb_mars mar_april apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'),
- i;
+ var tests = 'januari jan._februari feb._maart mrt._april apr._mei mei._juni jun._juli jul._augustus aug._september sep._oktober okt._november nov._december dec.'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'søndag, februar 14. 2010, 3:25:50 pm'],
- ['ddd, hA', 'søn, 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 februar feb'],
+ ['dddd, MMMM Do YYYY, HH:mm:ss', 'zondag, februari 14de 2010, 15:25:50'],
+ ['ddd, HH', 'zo., 15'],
+ ['M Mo MM MMMM MMM', '2 2de 02 februari feb.'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. søndag søn sø'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '6 6. 06'],
+ ['D Do DD', '14 14de 14'],
+ ['d do dddd ddd dd', '0 0de zondag zo. Zo'],
+ ['DDD DDDo DDDD', '45 45ste 045'],
+ ['w wo ww', '6 6de 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[den] DDDo [dagen i året]', 'den 45. dagen i året'],
- ['LTS', '15.25.50'],
- ['L', '14.02.2010'],
- ['LL', '14. februar 2010'],
- ['LLL', '14. februar 2010 kl. 15.25'],
- ['LLLL', 'søndag 14. februar 2010 kl. 15.25'],
- ['l', '14.2.2010'],
- ['ll', '14. feb 2010'],
- ['lll', '14. feb 2010 kl. 15.25'],
- ['llll', 'søn 14. feb 2010 kl. 15.25']
+ ['[the] DDDo [day of the year]', 'the 45ste day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '14-02-2010'],
+ ['LL', '14 februari 2010'],
+ ['LLL', '14 februari 2010 15:25'],
+ ['LLLL', 'zondag 14 februari 2010 15:25'],
+ ['l', '14-2-2010'],
+ ['ll', '14 feb. 2010'],
+ ['lll', '14 feb. 2010 15:25'],
+ ['llll', 'zo. 14 feb. 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1ste', '1ste');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2de', '2de');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3de', '3de');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4de', '4de');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5de', '5de');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6de', '6de');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7de', '7de');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8ste', '8ste');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9de', '9de');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10de', '10de');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11de', '11de');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12de', '12de');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13de', '13de');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14de', '14de');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15de', '15de');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16de', '16de');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17de', '17de');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18de', '18de');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19de', '19de');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20ste', '20ste');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21ste', '21ste');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22ste', '22ste');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23ste', '23ste');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24ste', '24ste');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25ste', '25ste');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26ste', '26ste');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27ste', '27ste');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28ste', '28ste');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29ste', '29ste');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30ste', '30ste');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31ste', '31ste');
});
test('format month', function (assert) {
- var expected = 'januar jan_februar feb_mars mar_april apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'), i;
+ var expected = 'januari jan._februari feb._maart mrt._april apr._mei mei_juni jun._juli jul._augustus aug._september sep._oktober okt._november nov._december dec.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'søndag søn sø_mandag man ma_tirsdag tirs ti_onsdag ons on_torsdag tors to_fredag fre fr_lørdag lør lø'.split('_'), i;
+ var expected = 'zondag zo. Zo_maandag ma. Ma_dinsdag di. Di_woensdag wo. Wo_donderdag do. Do_vrijdag vr. Vr_zaterdag za. Za'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'noen sekunder', '44 sekunder = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ett minutt', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ett minutt', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutter', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutter', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'en time', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'en time', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 timer', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 timer', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 timer', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'en dag', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'en dag', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dager', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'en dag', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dager', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dager', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'en måned', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'en måned', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'en måned', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 måneder', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 måneder', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 måneder', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'en måned', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 måneder', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ett år', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 år', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ett år', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 år', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'een paar seconden', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'één minuut', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'één minuut', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuten', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuten', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'één uur', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'één uur', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 uur', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 uur', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 uur', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'één dag', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'één dag', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagen', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'één dag', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagen', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagen', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'één maand', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'één maand', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'één maand', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 maanden', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 maanden', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 maanden', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'één maand', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 maanden', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'één jaar', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 jaar', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'één jaar', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 jaar', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'om noen sekunder', 'prefix');
- assert.equal(moment(0).from(30000), 'for noen sekunder siden', 'suffix');
+ assert.equal(moment(30000).from(0), 'over een paar seconden', 'prefix');
+ assert.equal(moment(0).from(30000), 'een paar seconden geleden', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'for noen sekunder siden', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'een paar seconden geleden', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'om noen sekunder', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'om 5 dager', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'over een paar seconden', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'over 5 dagen', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'i dag kl. 2.00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'i dag kl. 2.25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'i dag kl. 3.00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'i morgen kl. 2.00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'i dag kl. 1.00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'i går kl. 2.00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'vandaag om 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'vandaag om 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'vandaag om 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'morgen om 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'vandaag om 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'gisteren om 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [kl.] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[forrige] dddd [kl.] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[afgelopen] dddd [om] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[forrige] dddd [kl.] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[afgelopen] dddd [om] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[forrige] dddd [kl.] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[afgelopen] dddd [om] LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
+ test('month abbreviation', function (assert) {
+ assert.equal(moment([2012, 5, 23]).format('D-MMM-YYYY'), '23-jun-2012', 'format month abbreviation surrounded by dashes should not include a dot');
+ assert.equal(moment([2012, 5, 23]).format('D MMM YYYY'), '23 jun. 2012', 'format month abbreviation not surrounded by dashes should include a dot');
+ });
+
test('weeks year starting sunday', function (assert) {
assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52ste', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1ste', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1ste', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2de', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2de', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('ne');
+ localeModule('nn');
test('parse', function (assert) {
- var tests = 'जनवरी जन._फेब्रुवरी फेब्रु._मार्च मार्च_अप्रिल अप्रि._मई मई_जुन जुन_जुलाई जुलाई._अगष्ट अग._सेप्टेम्बर सेप्ट._अक्टोबर अक्टो._नोभेम्बर नोभे._डिसेम्बर डिसे.'.split('_'), i;
+ var tests = 'januar jan_februar feb_mars mar_april apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, aको h:mm:ss बजे', 'आइतबार, १४ फेब्रुवरी २०१०, बेलुकाको ३:२५:५० बजे'],
- ['ddd, aको h बजे', 'आइत., बेलुकाको ३ बजे'],
- ['M Mo MM MMMM MMM', '२ २ ०२ फेब्रुवरी फेब्रु.'],
- ['YYYY YY', '२०१० १०'],
- ['D Do DD', '१४ १४ १४'],
- ['d do dddd ddd dd', '० ० आइतबार आइत. आइ.'],
- ['DDD DDDo DDDD', '४५ ४५ ०४५'],
- ['w wo ww', '७ ७ ०७'],
- ['h hh', '३ ०३'],
- ['H HH', '१५ १५'],
- ['m mm', '२५ २५'],
- ['s ss', '५० ५०'],
- ['a A', 'बेलुका बेलुका'],
- ['LTS', 'बेलुकाको ३:२५:५० बजे'],
- ['L', '१४/०२/२०१०'],
- ['LL', '१४ फेब्रुवरी २०१०'],
- ['LLL', '१४ फेब्रुवरी २०१०, बेलुकाको ३:२५ बजे'],
- ['LLLL', 'आइतबार, १४ फेब्रुवरी २०१०, बेलुकाको ३:२५ बजे'],
- ['l', '१४/२/२०१०'],
- ['ll', '१४ फेब्रु. २०१०'],
- ['lll', '१४ फेब्रु. २०१०, बेलुकाको ३:२५ बजे'],
- ['llll', 'आइत., १४ फेब्रु. २०१०, बेलुकाको ३:२५ बजे']
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'sundag, februar 14. 2010, 3:25:50 pm'],
+ ['ddd, hA', 'sun, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 februar feb'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. sundag sun su'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['LTS', '15:25:50'],
+ ['L', '14.02.2010'],
+ ['LL', '14. februar 2010'],
+ ['LLL', '14. februar 2010 kl. 15:25'],
+ ['LLLL', 'sundag 14. februar 2010 kl. 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14. feb 2010'],
+ ['lll', '14. feb 2010 kl. 15:25'],
+ ['llll', 'sun 14. feb 2010 kl. 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '१', '१');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '२', '२');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '३', '३');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '४', '४');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '५', '५');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '६', '६');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '७', '७');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '८', '८');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '९', '९');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '१०', '१०');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '११', '११');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '१२', '१२');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '१३', '१३');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '१४', '१४');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '१५', '१५');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '१६', '१६');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '१७', '१७');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '१८', '१८');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '१९', '१९');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '२०', '२०');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '२१', '२१');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '२२', '२२');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '२३', '२३');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '२४', '२४');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '२५', '२५');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '२६', '२६');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '२७', '२७');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '२८', '२८');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '२९', '२९');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '३०', '३०');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '३१', '३१');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
});
test('format month', function (assert) {
- var expected = 'जनवरी जन._फेब्रुवरी फेब्रु._मार्च मार्च_अप्रिल अप्रि._मई मई_जुन जुन_जुलाई जुलाई._अगष्ट अग._सेप्टेम्बर सेप्ट._अक्टोबर अक्टो._नोभेम्बर नोभे._डिसेम्बर डिसे.'.split('_'), i;
+ var expected = 'januar jan_februar feb_mars mar_april apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'आइतबार आइत. आइ._सोमबार सोम. सो._मङ्गलबार मङ्गल. मङ्_बुधबार बुध. बु._बिहिबार बिहि. बि._शुक्रबार शुक्र. शु._शनिबार शनि. श.'.split('_'), i;
+ var expected = 'sundag sun su_måndag mån må_tysdag tys ty_onsdag ons on_torsdag tor to_fredag fre fr_laurdag lau lø'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'केही समय', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'एक मिनेट', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'एक मिनेट', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '२ मिनेट', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '४४ मिनेट', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'एक घण्टा', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'एक घण्टा', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '२ घण्टा', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '५ घण्टा', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '२१ घण्टा', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'एक दिन', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'एक दिन', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '२ दिन', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'एक दिन', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '५ दिन', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '२५ दिन', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'एक महिना', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'एक महिना', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'एक महिना', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '२ महिना', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '२ महिना', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '३ महिना', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'एक महिना', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '५ महिना', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'एक बर्ष', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '२ बर्ष', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'एक बर्ष', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '५ बर्ष', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'nokre sekund', '44 sekunder = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'eit minutt', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'eit minutt', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutt', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutt', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ein time', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ein time', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 timar', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 timar', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 timar', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ein dag', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ein dag', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagar', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ein dag', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagar', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagar', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ein månad', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ein månad', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ein månad', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 månader', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 månader', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 månader', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ein månad', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 månader', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'eit år', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 år', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'eit år', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 år', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'केही समयमा', 'prefix');
- assert.equal(moment(0).from(30000), 'केही समय अगाडी', 'suffix');
+ assert.equal(moment(30000).from(0), 'om nokre sekund', 'prefix');
+ assert.equal(moment(0).from(30000), 'for nokre sekund sidan', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'केही समय अगाडी', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'for nokre sekund sidan', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'केही समयमा', 'केही समयमा');
- assert.equal(moment().add({d: 5}).fromNow(), '५ दिनमा', '५ दिनमा');
+ assert.equal(moment().add({s: 30}).fromNow(), 'om nokre sekund', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'om 5 dagar', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'आज रातीको २:०० बजे', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'आज रातीको २:२५ बजे', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'आज बिहानको ३:०० बजे', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'भोली रातीको २:०० बजे', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'आज रातीको १:०० बजे', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'हिजो रातीको २:०० बजे', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'I dag klokka 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'I dag klokka 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'I dag klokka 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'I morgon klokka 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'I dag klokka 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'I går klokka 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('[आउँदो] dddd[,] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [klokka] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[आउँदो] dddd[,] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [klokka] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[आउँदो] dddd[,] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [klokka] LT'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[गएको] dddd[,] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[Føregåande] dddd [klokka] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[गएको] dddd[,] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[Føregåande] dddd [klokka] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[गएको] dddd[,] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[Føregåande] dddd [klokka] LT'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- test('meridiem', function (assert) {
- assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'राती', 'before dawn');
- assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'बिहान', 'morning');
- assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'दिउँसो', 'during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'बेलुका', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'साँझ', 'late evening');
- assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'राती', 'night');
-
- assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'राती', 'before dawn');
- assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'बिहान', 'morning');
- assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'दिउँसो', 'during day');
- assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'बेलुका', 'evening');
- assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'साँझ', 'late evening');
- assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'राती', 'night');
- });
-
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '१ ०१ १', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '१ ०१ १', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '२ ०२ २', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '२ ०२ २', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '३ ०३ ३', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}
});
- test('meridiem invariant', function (assert) {
- var h, m, t1, t2;
- for (h = 0; h < 24; ++h) {
- for (m = 0; m < 60; m += 15) {
- t1 = moment.utc([2000, 0, 1, h, m]);
- t2 = moment(t1.format('A h:mm'), 'A h:mm');
- assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
- 'meridiem at ' + t1.format('HH:mm'));
- }
- }
- });
-
test('strict ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('nl');
+ localeModule('pl');
test('parse', function (assert) {
- var tests = 'januari jan._februari feb._maart mrt._april apr._mei mei._juni jun._juli jul._augustus aug._september sep._oktober okt._november nov._december dec.'.split('_'), i;
+ var tests = 'styczeń stycznia sty_luty lutego lut_marzec marca mar_kwiecień kwietnia kwi_maj maja maj_czerwiec czerwca cze_lipiec lipca lip_sierpień sierpnia sie_wrzesień września wrz_październik października paź_listopad listopada lis_grudzień grudnia gru'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][2], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][2], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][2].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][2].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('parse strict', function (assert) {
+ var tests = 'styczeń stycznia sty_luty lutego lut_marzec marca mar_kwiecień kwietnia kwi_maj maja maj_czerwiec czerwca cze_lipiec lipca lip_sierpień sierpnia sie_wrzesień września wrz_październik października paź_listopad listopada lis_grudzień grudnia gru'.split('_'), i;
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm, true).month(), i, input + ' should be month ' + (i + 1));
+ }
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMMM', i);
equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][2], 'MMM', i);
equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][2].toLocaleLowerCase(), 'MMM', i);
equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][2].toLocaleUpperCase(), 'MMM', i);
}
});
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, HH:mm:ss', 'zondag, februari 14de 2010, 15:25:50'],
- ['ddd, HH', 'zo., 15'],
- ['M Mo MM MMMM MMM', '2 2de 02 februari feb.'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'niedziela, luty 14. 2010, 3:25:50 pm'],
+ ['ddd, hA', 'nie, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 luty lut'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14de 14'],
- ['d do dddd ddd dd', '0 0de zondag zo. Zo'],
- ['DDD DDDo DDDD', '45 45ste 045'],
- ['w wo ww', '6 6de 06'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. niedziela nie Nd'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45ste day of the year'],
+ ['[the] DDDo [day of the year]', 'the 45. day of the year'],
['LTS', '15:25:50'],
- ['L', '14-02-2010'],
- ['LL', '14 februari 2010'],
- ['LLL', '14 februari 2010 15:25'],
- ['LLLL', 'zondag 14 februari 2010 15:25'],
- ['l', '14-2-2010'],
- ['ll', '14 feb. 2010'],
- ['lll', '14 feb. 2010 15:25'],
- ['llll', 'zo. 14 feb. 2010 15:25']
+ ['L', '14.02.2010'],
+ ['LL', '14 lutego 2010'],
+ ['LLL', '14 lutego 2010 15:25'],
+ ['LLLL', 'niedziela, 14 lutego 2010 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14 lut 2010'],
+ ['lll', '14 lut 2010 15:25'],
+ ['llll', 'nie, 14 lut 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1ste', '1ste');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2de', '2de');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3de', '3de');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4de', '4de');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5de', '5de');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6de', '6de');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7de', '7de');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8ste', '8ste');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9de', '9de');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10de', '10de');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11de', '11de');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12de', '12de');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13de', '13de');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14de', '14de');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15de', '15de');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16de', '16de');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17de', '17de');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18de', '18de');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19de', '19de');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20ste', '20ste');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21ste', '21ste');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22ste', '22ste');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23ste', '23ste');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24ste', '24ste');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25ste', '25ste');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26ste', '26ste');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27ste', '27ste');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28ste', '28ste');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29ste', '29ste');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30ste', '30ste');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31ste', '31ste');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
});
test('format month', function (assert) {
- var expected = 'januari jan._februari feb._maart mrt._april apr._mei mei_juni jun._juli jul._augustus aug._september sep._oktober okt._november nov._december dec.'.split('_'), i;
+ var expected = 'styczeń sty_luty lut_marzec mar_kwiecień kwi_maj maj_czerwiec cze_lipiec lip_sierpień sie_wrzesień wrz_październik paź_listopad lis_grudzień gru'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'zondag zo. Zo_maandag ma. Ma_dinsdag di. Di_woensdag wo. Wo_donderdag do. Do_vrijdag vr. Vr_zaterdag za. Za'.split('_'), i;
+ var expected = 'niedziela nie Nd_poniedziałek pon Pn_wtorek wt Wt_środa śr Śr_czwartek czw Cz_piątek pt Pt_sobota sb So'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'een paar seconden', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'één minuut', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'één minuut', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuten', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuten', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'één uur', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'één uur', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 uur', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 uur', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 uur', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'één dag', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'één dag', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagen', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'één dag', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagen', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagen', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'één maand', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'één maand', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'één maand', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 maanden', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 maanden', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 maanden', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'één maand', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 maanden', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'één jaar', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 jaar', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'één jaar', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 jaar', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'kilka sekund', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minuta', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minuta', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuty', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuty', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'godzina', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'godzina', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 godziny', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 godzin', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 godzin', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), '1 dzień', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), '1 dzień', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dni', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), '1 dzień', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dni', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dni', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'miesiąc', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'miesiąc', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'miesiąc', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 miesiące', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 miesiące', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 miesiące', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'miesiąc', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 miesięcy', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'rok', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 lata', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'rok', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 lat', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 112}), true), '112 lat', '112 years = 112 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 122}), true), '122 lata', '122 years = 122 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 213}), true), '213 lat', '213 years = 213 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 223}), true), '223 lata', '223 years = 223 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'over een paar seconden', 'prefix');
- assert.equal(moment(0).from(30000), 'een paar seconden geleden', 'suffix');
+ assert.equal(moment(30000).from(0), 'za kilka sekund', 'prefix');
+ assert.equal(moment(0).from(30000), 'kilka sekund temu', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'een paar seconden geleden', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'kilka sekund temu', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'over een paar seconden', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'over 5 dagen', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'za kilka sekund', 'in a few seconds');
+ assert.equal(moment().add({h: 1}).fromNow(), 'za godzinę', 'in an hour');
+ assert.equal(moment().add({d: 5}).fromNow(), 'za 5 dni', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'vandaag om 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'vandaag om 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'vandaag om 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'morgen om 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'vandaag om 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'gisteren om 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Dziś o 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Dziś o 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Dziś o 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Jutro o 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Dziś o 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Wczoraj o 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[W] dddd [o] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[W] dddd [o] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [om] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[W] dddd [o] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
+
+ function makeFormat(d) {
+ switch (d.day()) {
+ case 0:
+ return '[W zeszłą niedzielę o] LT';
+ case 3:
+ return '[W zeszłą środę o] LT';
+ case 6:
+ return '[W zeszłą sobotę o] LT';
+ default:
+ return '[W zeszły] dddd [o] LT';
+ }
+ }
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[afgelopen] dddd [om] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
+
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[afgelopen] dddd [om] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
+
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[afgelopen] dddd [om] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- test('month abbreviation', function (assert) {
- assert.equal(moment([2012, 5, 23]).format('D-MMM-YYYY'), '23-jun-2012', 'format month abbreviation surrounded by dashes should not include a dot');
- assert.equal(moment([2012, 5, 23]).format('D MMM YYYY'), '23 jun. 2012', 'format month abbreviation not surrounded by dashes should include a dot');
- });
-
test('weeks year starting sunday', function (assert) {
assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52ste', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1ste', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1ste', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2de', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2de', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('nn');
+ localeModule('pt-br');
test('parse', function (assert) {
- var tests = 'januar jan_februar feb_mars mar_april apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'), i;
+ var tests = 'janeiro jan_fevereiro fev_março mar_abril abr_maio mai_junho jun_julho jul_agosto ago_setembro set_outubro out_novembro nov_dezembro dez'.split('_'), i;
+
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
+
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'sundag, februar 14. 2010, 3:25:50 pm'],
- ['ddd, hA', 'sun, 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 februar feb'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Domingo, Fevereiro 14º 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Dom, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2º 02 Fevereiro Fev'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. sundag sun su'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '6 6. 06'],
+ ['D Do DD', '14 14º 14'],
+ ['d do dddd ddd', '0 0º Domingo Dom'],
+ ['DDD DDDo DDDD', '45 45º 045'],
+ ['w wo ww', '8 8º 08'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['[the] DDDo [day of the year]', 'the 45º day of the year'],
['LTS', '15:25:50'],
- ['L', '14.02.2010'],
- ['LL', '14 februar 2010'],
- ['LLL', '14 februar 2010 15:25'],
- ['LLLL', 'sundag 14 februar 2010 15:25'],
- ['l', '14.2.2010'],
- ['ll', '14 feb 2010'],
- ['lll', '14 feb 2010 15:25'],
- ['llll', 'sun 14 feb 2010 15:25']
+ ['L', '14/02/2010'],
+ ['LL', '14 de Fevereiro de 2010'],
+ ['LLL', '14 de Fevereiro de 2010 às 15:25'],
+ ['LLLL', 'Domingo, 14 de Fevereiro de 2010 às 15:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 de Fev de 2010'],
+ ['lll', '14 de Fev de 2010 às 15:25'],
+ ['llll', 'Dom, 14 de Fev de 2010 às 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
});
test('format month', function (assert) {
- var expected = 'januar jan_februar feb_mars mar_april apr_mai mai_juni jun_juli jul_august aug_september sep_oktober okt_november nov_desember des'.split('_'), i;
+ var expected = 'Janeiro Jan_Fevereiro Fev_Março Mar_Abril Abr_Maio Mai_Junho Jun_Julho Jul_Agosto Ago_Setembro Set_Outubro Out_Novembro Nov_Dezembro Dez'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'sundag sun su_måndag mån må_tysdag tys ty_onsdag ons on_torsdag tor to_fredag fre fr_laurdag lau lø'.split('_'), i;
+ var expected = 'Domingo Dom_Segunda-Feira Seg_Terça-Feira Ter_Quarta-Feira Qua_Quinta-Feira Qui_Sexta-Feira Sex_Sábado Sáb'.split('_'), i;
for (i = 0; i < expected.length; i++) {
- assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd'), expected[i], expected[i]);
}
});
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'nokre sekund', '44 sekunder = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'eit minutt', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'eit minutt', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutt', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutt', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ein time', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ein time', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 timar', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 timar', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 timar', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ein dag', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ein dag', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dagar', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ein dag', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dagar', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dagar', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ein månad', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ein månad', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ein månad', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 månader', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 månader', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 månader', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ein månad', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 månader', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'eit år', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 år', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'eit år', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 år', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'poucos segundos', '44 seconds = seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'um minuto', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'um minuto', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutos', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutos', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'uma hora', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'uma hora', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horas', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horas', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horas', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'um dia', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'um dia', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dias', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'um dia', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dias', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dias', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'um mês', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'um mês', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'um mês', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 meses', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 meses', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 meses', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'um mês', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 meses', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'um ano', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 anos', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'um ano', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 anos', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'om nokre sekund', 'prefix');
- assert.equal(moment(0).from(30000), 'for nokre sekund sidan', 'suffix');
- });
-
- test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'for nokre sekund sidan', 'now from now should display as in the past');
+ assert.equal(moment(30000).from(0), 'em poucos segundos', 'prefix');
+ assert.equal(moment(0).from(30000), 'poucos segundos atrás', 'suffix');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'om nokre sekund', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'om 5 dagar', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'em poucos segundos', 'in seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'em 5 dias', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'I dag klokka 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'I dag klokka 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'I dag klokka 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'I morgon klokka 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'I dag klokka 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'I går klokka 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Hoje às 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Hoje às 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Hoje às 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Amanhã às 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hoje às 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Ontem às 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [klokka] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [klokka] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [klokka] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[Føregåande] dddd [klokka] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[Føregåande] dddd [klokka] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[Føregåande] dddd [klokka] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
});
- test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1º', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1º', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2º', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2º', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3º', 'Jan 15 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('pl');
+ localeModule('pt');
test('parse', function (assert) {
- var tests = 'styczeń stycznia sty_luty lutego lut_marzec marca mar_kwiecień kwietnia kwi_maj maja maj_czerwiec czerwca cze_lipiec lipca lip_sierpień sierpnia sie_wrzesień września wrz_październik października paź_listopad listopada lis_grudzień grudnia gru'.split('_'), i;
+ var tests = 'Janeiro Jan_Fevereiro Fev_Março Mar_Abril Abr_Maio Mai_Junho Jun_Julho Jul_Agosto Ago_Setembro Set_Outubro Out_Novembro Nov_Dezembro Dez'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
equalTest(tests[i][1], 'MMM', i);
- equalTest(tests[i][2], 'MMM', i);
- equalTest(tests[i][0], 'MMMM', i);
- equalTest(tests[i][1], 'MMMM', i);
- equalTest(tests[i][2], 'MMMM', i);
- equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
- equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
- equalTest(tests[i][2].toLocaleLowerCase(), 'MMMM', i);
- equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
- equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
- equalTest(tests[i][2].toLocaleUpperCase(), 'MMMM', i);
- }
- });
-
- test('parse strict', function (assert) {
- var tests = 'styczeń stycznia sty_luty lutego lut_marzec marca mar_kwiecień kwietnia kwi_maj maja maj_czerwiec czerwca cze_lipiec lipca lip_sierpień sierpnia sie_wrzesień września wrz_październik października paź_listopad listopada lis_grudzień grudnia gru'.split('_'), i;
- function equalTest(input, mmm, i) {
- assert.equal(moment(input, mmm, true).month(), i, input + ' should be month ' + (i + 1));
- }
- for (i = 0; i < 12; i++) {
- tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMMM', i);
equalTest(tests[i][1], 'MMMM', i);
- equalTest(tests[i][2], 'MMM', i);
equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
- equalTest(tests[i][2].toLocaleLowerCase(), 'MMM', i);
equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
- equalTest(tests[i][2].toLocaleUpperCase(), 'MMM', i);
}
});
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'niedziela, luty 14. 2010, 3:25:50 pm'],
- ['ddd, hA', 'nie, 3PM'],
- ['M Mo MM MMMM MMM', '2 2. 02 luty lut'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Domingo, Fevereiro 14º 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Dom, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2º 02 Fevereiro Fev'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14. 14'],
- ['d do dddd ddd dd', '0 0. niedziela nie N'],
- ['DDD DDDo DDDD', '45 45. 045'],
- ['w wo ww', '6 6. 06'],
+ ['D Do DD', '14 14º 14'],
+ ['d do dddd ddd', '0 0º Domingo Dom'],
+ ['DDD DDDo DDDD', '45 45º 045'],
+ ['w wo ww', '6 6º 06'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45. day of the year'],
+ ['[the] DDDo [day of the year]', 'the 45º day of the year'],
['LTS', '15:25:50'],
- ['L', '14.02.2010'],
- ['LL', '14 lutego 2010'],
- ['LLL', '14 lutego 2010 15:25'],
- ['LLLL', 'niedziela, 14 lutego 2010 15:25'],
- ['l', '14.2.2010'],
- ['ll', '14 lut 2010'],
- ['lll', '14 lut 2010 15:25'],
- ['llll', 'nie, 14 lut 2010 15:25']
+ ['L', '14/02/2010'],
+ ['LL', '14 de Fevereiro de 2010'],
+ ['LLL', '14 de Fevereiro de 2010 15:25'],
+ ['LLLL', 'Domingo, 14 de Fevereiro de 2010 15:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 de Fev de 2010'],
+ ['lll', '14 de Fev de 2010 15:25'],
+ ['llll', 'Dom, 14 de Fev de 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
});
test('format month', function (assert) {
- var expected = 'styczeń sty_luty lut_marzec mar_kwiecień kwi_maj maj_czerwiec cze_lipiec lip_sierpień sie_wrzesień wrz_październik paź_listopad lis_grudzień gru'.split('_'), i;
+ var expected = 'Janeiro Jan_Fevereiro Fev_Março Mar_Abril Abr_Maio Mai_Junho Jun_Julho Jul_Agosto Ago_Setembro Set_Outubro Out_Novembro Nov_Dezembro Dez'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'niedziela nie N_poniedziałek pon Pn_wtorek wt Wt_środa śr Śr_czwartek czw Cz_piątek pt Pt_sobota sb So'.split('_'), i;
+ var expected = 'Domingo Dom Dom_Segunda-Feira Seg 2ª_Terça-Feira Ter 3ª_Quarta-Feira Qua 4ª_Quinta-Feira Qui 5ª_Sexta-Feira Sex 6ª_Sábado Sáb Sáb'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'kilka sekund', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'minuta', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'minuta', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuty', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuty', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'godzina', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'godzina', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 godziny', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 godzin', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 godzin', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), '1 dzień', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), '1 dzień', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dni', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), '1 dzień', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dni', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dni', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'miesiąc', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'miesiąc', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'miesiąc', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 miesiące', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 miesiące', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 miesiące', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'miesiąc', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 miesięcy', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'rok', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 lata', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'rok', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 lat', '5 years = 5 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 112}), true), '112 lat', '112 years = 112 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 122}), true), '122 lata', '122 years = 122 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 213}), true), '213 lat', '213 years = 213 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 223}), true), '223 lata', '223 years = 223 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'segundos', '44 seconds = seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'um minuto', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'um minuto', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutos', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutos', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'uma hora', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'uma hora', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horas', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horas', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horas', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'um dia', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'um dia', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dias', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'um dia', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dias', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dias', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'um mês', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'um mês', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'um mês', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 meses', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 meses', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 meses', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'um mês', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 meses', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'um ano', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 anos', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'um ano', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 anos', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'za kilka sekund', 'prefix');
- assert.equal(moment(0).from(30000), 'kilka sekund temu', 'suffix');
- });
-
- test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'kilka sekund temu', 'now from now should display as in the past');
+ assert.equal(moment(30000).from(0), 'em segundos', 'prefix');
+ assert.equal(moment(0).from(30000), 'há segundos', 'suffix');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'za kilka sekund', 'in a few seconds');
- assert.equal(moment().add({h: 1}).fromNow(), 'za godzinę', 'in an hour');
- assert.equal(moment().add({d: 5}).fromNow(), 'za 5 dni', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'em segundos', 'in seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'em 5 dias', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Dziś o 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Dziś o 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Dziś o 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Jutro o 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Dziś o 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Wczoraj o 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Hoje às 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Hoje às 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Hoje às 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Amanhã às 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hoje às 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Ontem às 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('[W] dddd [o] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[W] dddd [o] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[W] dddd [o] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
-
- function makeFormat(d) {
- switch (d.day()) {
- case 0:
- return '[W zeszłą niedzielę o] LT';
- case 3:
- return '[W zeszłą środę o] LT';
- case 6:
- return '[W zeszłą sobotę o] LT';
- default:
- return '[W zeszły] dddd [o] LT';
- }
- }
-
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days current time');
-
+ assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days beginning of day');
-
+ assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52º', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1º', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1º', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2º', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2º', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('pt-br');
+ localeModule('ro');
test('parse', function (assert) {
- var tests = 'janeiro jan_fevereiro fev_março mar_abril abr_maio mai_junho jun_julho jul_agosto ago_setembro set_outubro out_novembro nov_dezembro dez'.split('_'), i;
-
+ var tests = 'ianuarie ian._februarie febr._martie mart._aprilie apr._mai mai_iunie iun._iulie iul._august aug._septembrie sept._octombrie oct._noiembrie nov._decembrie dec.'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
-
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Domingo, Fevereiro 14º 2010, 3:25:50 pm'],
- ['ddd, hA', 'Dom, 3PM'],
- ['M Mo MM MMMM MMM', '2 2º 02 Fevereiro Fev'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14º 14'],
- ['d do dddd ddd', '0 0º Domingo Dom'],
- ['DDD DDDo DDDD', '45 45º 045'],
- ['w wo ww', '8 8º 08'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45º day of the year'],
- ['LTS', '15:25:50'],
- ['L', '14/02/2010'],
- ['LL', '14 de Fevereiro de 2010'],
- ['LLL', '14 de Fevereiro de 2010 às 15:25'],
- ['LLLL', 'Domingo, 14 de Fevereiro de 2010 às 15:25'],
- ['l', '14/2/2010'],
- ['ll', '14 de Fev de 2010'],
- ['lll', '14 de Fev de 2010 às 15:25'],
- ['llll', 'Dom, 14 de Fev de 2010 às 15:25']
+ ['dddd, MMMM Do YYYY, h:mm:ss A', 'duminică, februarie 14 2010, 3:25:50 PM'],
+ ['ddd, hA', 'Dum, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2 02 februarie febr.'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 duminică Dum Du'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '7 7 07'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[a] DDDo[a zi a anului]', 'a 45a zi a anului'],
+ ['LTS', '15:25:50'],
+ ['L', '14.02.2010'],
+ ['LL', '14 februarie 2010'],
+ ['LLL', '14 februarie 2010 15:25'],
+ ['LLLL', 'duminică, 14 februarie 2010 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14 febr. 2010'],
+ ['lll', '14 febr. 2010 15:25'],
+ ['llll', 'Dum, 14 febr. 2010 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
});
test('format month', function (assert) {
- var expected = 'Janeiro Jan_Fevereiro Fev_Março Mar_Abril Abr_Maio Mai_Junho Jun_Julho Jul_Agosto Ago_Setembro Set_Outubro Out_Novembro Nov_Dezembro Dez'.split('_'), i;
+ var expected = 'ianuarie ian._februarie febr._martie mart._aprilie apr._mai mai_iunie iun._iulie iul._august aug._septembrie sept._octombrie oct._noiembrie nov._decembrie dec.'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'Domingo Dom_Segunda-Feira Seg_Terça-Feira Ter_Quarta-Feira Qua_Quinta-Feira Qui_Sexta-Feira Sex_Sábado Sáb'.split('_'), i;
+ var expected = 'duminică Dum Du_luni Lun Lu_marți Mar Ma_miercuri Mie Mi_joi Joi Jo_vineri Vin Vi_sâmbătă Sâm Sâ'.split('_'), i;
for (i = 0; i < expected.length; i++) {
- assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd'), expected[i], expected[i]);
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
});
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'poucos segundos', '44 seconds = seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'um minuto', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'um minuto', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutos', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutos', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'uma hora', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'uma hora', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horas', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horas', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horas', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'um dia', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'um dia', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dias', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'um dia', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dias', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dias', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'um mês', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'um mês', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'um mês', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 meses', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 meses', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 meses', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'um mês', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 meses', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'um ano', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 anos', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'um ano', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 anos', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'câteva secunde', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'un minut', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'un minut', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minute', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 de minute', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'o oră', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'o oră', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ore', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ore', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 de ore', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'o zi', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'o zi', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 zile', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'o zi', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 zile', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 de zile', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'o lună', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'o lună', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'o lună', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 luni', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 luni', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 luni', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'o lună', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 luni', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un an', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ani', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un an', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ani', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 19}), true), '19 ani', '19 years = 19 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 20}), true), '20 de ani', '20 years = 20 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 100}), true), '100 de ani', '100 years = 100 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 101}), true), '101 ani', '101 years = 101 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 119}), true), '119 ani', '119 years = 119 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 120}), true), '120 de ani', '120 years = 120 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 219}), true), '219 ani', '219 years = 219 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 220}), true), '220 de ani', '220 years = 220 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'em poucos segundos', 'prefix');
- assert.equal(moment(0).from(30000), 'poucos segundos atrás', 'suffix');
+ assert.equal(moment(30000).from(0), 'peste câteva secunde', 'prefix');
+ assert.equal(moment(0).from(30000), 'câteva secunde în urmă', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'câteva secunde în urmă', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'em poucos segundos', 'in seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'em 5 dias', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'peste câteva secunde', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'peste 5 zile', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Hoje às 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Hoje às 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Hoje às 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Amanhã às 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hoje às 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Ontem às 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'azi la 2:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'azi la 2:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'azi la 3:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'mâine la 2:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'azi la 1:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'ieri la 2:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [la] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [la] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [la] LT'), 'Today + ' + i + ' days end of day');
}
});
var i, m;
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[fosta] dddd [la] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[fosta] dddd [la] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[fosta] dddd [la] LT'), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
- assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
- assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
});
test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
- assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
});
test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
- assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
});
test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
- assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
- assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
- assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
});
- test('weeks year starting sunday format', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1º', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1º', 'Jan 7 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2º', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2º', 'Jan 14 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3º', 'Jan 15 2012 should be week 3');
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('pt');
+ localeModule('ru');
test('parse', function (assert) {
- var tests = 'Janeiro Jan_Fevereiro Fev_Março Mar_Abril Abr_Maio Mai_Junho Jun_Julho Jul_Agosto Ago_Setembro Set_Outubro Out_Novembro Nov_Dezembro Dez'.split('_'), i;
+ var tests = 'Январь янв_Февраль фев_Март март_Апрель апр_Май май_Июнь июнь_Июль июль_Август авг_Сентябрь сен_Октябрь окт_Ноябрь ноя_Декабрь дек'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
+ function equalTestStrict(input, mmm, monthIndex) {
+ assert.equal(moment(input, mmm, true).month(), monthIndex, input + ' ' + mmm + ' should be strict month ' + (monthIndex + 1));
+ }
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+
+ equalTestStrict(tests[i][1], 'MMM', i);
+ equalTestStrict(tests[i][0], 'MMMM', i);
+ equalTestStrict(tests[i][1].toLocaleLowerCase(), 'MMM', i);
+ equalTestStrict(tests[i][1].toLocaleUpperCase(), 'MMM', i);
+ equalTestStrict(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTestStrict(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
}
});
+ test('parse exceptional case', function (assert) {
+ assert.equal(moment('11 Мая 1989', ['DD MMMM YYYY']).format('DD-MM-YYYY'), '11-05-1989');
+ });
+
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'Domingo, Fevereiro 14º 2010, 3:25:50 pm'],
- ['ddd, hA', 'Dom, 3PM'],
- ['M Mo MM MMMM MMM', '2 2º 02 Fevereiro Fev'],
+ ['dddd, Do MMMM YYYY, HH:mm:ss', 'Воскресенье, 14-го Февраля 2010, 15:25:50'],
+ ['ddd, h A', 'Вс, 3 дня'],
+ ['M Mo MM MMMM MMM', '2 2-й 02 Февраль фев'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14º 14'],
- ['d do dddd ddd', '0 0º Domingo Dom'],
- ['DDD DDDo DDDD', '45 45º 045'],
- ['w wo ww', '6 6º 06'],
+ ['D Do DD', '14 14-го 14'],
+ ['d do dddd ddd dd', '0 0-й Воскресенье Вс Вс'],
+ ['DDD DDDo DDDD', '45 45-й 045'],
+ ['w wo ww', '7 7-я 07'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[the] DDDo [day of the year]', 'the 45º day of the year'],
+ ['a A', 'дня дня'],
+ ['DDDo [день года]', '45-й день года'],
['LTS', '15:25:50'],
- ['L', '14/02/2010'],
- ['LL', '14 de Fevereiro de 2010'],
- ['LLL', '14 de Fevereiro de 2010 15:25'],
- ['LLLL', 'Domingo, 14 de Fevereiro de 2010 15:25'],
- ['l', '14/2/2010'],
- ['ll', '14 de Fev de 2010'],
- ['lll', '14 de Fev de 2010 15:25'],
- ['llll', 'Dom, 14 de Fev de 2010 15:25']
+ ['L', '14.02.2010'],
+ ['LL', '14 Февраля 2010 г.'],
+ ['LLL', '14 Февраля 2010 г., 15:25'],
+ ['LLLL', 'Воскресенье, 14 Февраля 2010 г., 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14 фев 2010 г.'],
+ ['lll', '14 фев 2010 г., 15:25'],
+ ['llll', 'Вс, 14 фев 2010 г., 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
+ test('format meridiem', function (assert) {
+ assert.equal(moment([2012, 11, 28, 0, 0]).format('A'), 'ночи', 'night');
+ assert.equal(moment([2012, 11, 28, 3, 59]).format('A'), 'ночи', 'night');
+ assert.equal(moment([2012, 11, 28, 4, 0]).format('A'), 'утра', 'morning');
+ assert.equal(moment([2012, 11, 28, 11, 59]).format('A'), 'утра', 'morning');
+ assert.equal(moment([2012, 11, 28, 12, 0]).format('A'), 'дня', 'afternoon');
+ assert.equal(moment([2012, 11, 28, 16, 59]).format('A'), 'дня', 'afternoon');
+ assert.equal(moment([2012, 11, 28, 17, 0]).format('A'), 'вечера', 'evening');
+ assert.equal(moment([2012, 11, 28, 23, 59]).format('A'), 'вечера', 'evening');
+ });
+
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1º', '1º');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2º', '2º');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3º', '3º');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4º', '4º');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5º', '5º');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6º', '6º');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7º', '7º');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8º', '8º');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9º', '9º');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10º', '10º');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-й', '1-й');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2-й', '2-й');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3-й', '3-й');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4-й', '4-й');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5-й', '5-й');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6-й', '6-й');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7-й', '7-й');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8-й', '8-й');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9-й', '9-й');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10-й', '10-й');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11º', '11º');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12º', '12º');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13º', '13º');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14º', '14º');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15º', '15º');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16º', '16º');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17º', '17º');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18º', '18º');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19º', '19º');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20º', '20º');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11-й', '11-й');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12-й', '12-й');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13-й', '13-й');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14-й', '14-й');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15-й', '15-й');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16-й', '16-й');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17-й', '17-й');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18-й', '18-й');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19-й', '19-й');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20-й', '20-й');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21º', '21º');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22º', '22º');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23º', '23º');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24º', '24º');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25º', '25º');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26º', '26º');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27º', '27º');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28º', '28º');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29º', '29º');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30º', '30º');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-й', '21-й');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-й', '22-й');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-й', '23-й');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-й', '24-й');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-й', '25-й');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-й', '26-й');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-й', '27-й');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-й', '28-й');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-й', '29-й');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-й', '30-й');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31º', '31º');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31-й', '31-й');
});
test('format month', function (assert) {
- var expected = 'Janeiro Jan_Fevereiro Fev_Março Mar_Abril Abr_Maio Mai_Junho Jun_Julho Jul_Agosto Ago_Setembro Set_Outubro Out_Novembro Nov_Dezembro Dez'.split('_'), i;
+ var expected = 'Январь янв_Февраль фев_Март март_Апрель апр_Май май_Июнь июнь_Июль июль_Август авг_Сентябрь сен_Октябрь окт_Ноябрь ноя_Декабрь дек'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
+ test('format month case', function (assert) {
+ var months = {
+ 'nominative': 'Январь_Февраль_Март_Апрель_Май_Июнь_Июль_Август_Сентябрь_Октябрь_Ноябрь_Декабрь'.split('_'),
+ 'accusative': 'Января_Февраля_Марта_Апреля_Мая_Июня_Июля_Августа_Сентября_Октября_Ноября_Декабря'.split('_')
+ }, i;
+ for (i = 0; i < 12; i++) {
+ assert.equal(moment([2011, i, 1]).format('D MMMM'), '1 ' + months.accusative[i], '1 ' + months.accusative[i]);
+ assert.equal(moment([2011, i, 1]).format('MMMM'), months.nominative[i], '1 ' + months.nominative[i]);
+ }
+ });
+
+ test('format month short case', function (assert) {
+ var monthsShort = {
+ 'nominative': 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'),
+ 'accusative': 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_')
+ }, i;
+ for (i = 0; i < 12; i++) {
+ assert.equal(moment([2011, i, 1]).format('D MMM'), '1 ' + monthsShort.accusative[i], '1 ' + monthsShort.accusative[i]);
+ assert.equal(moment([2011, i, 1]).format('MMM'), monthsShort.nominative[i], '1 ' + monthsShort.nominative[i]);
+ }
+ });
+
+ test('format month case with escaped symbols', function (assert) {
+ var months = {
+ 'nominative': 'Январь_Февраль_Март_Апрель_Май_Июнь_Июль_Август_Сентябрь_Октябрь_Ноябрь_Декабрь'.split('_'),
+ 'accusative': 'Января_Февраля_Марта_Апреля_Мая_Июня_Июля_Августа_Сентября_Октября_Ноября_Декабря'.split('_')
+ }, i;
+ for (i = 0; i < 12; i++) {
+ assert.equal(moment([2013, i, 1]).format('D[] MMMM'), '1 ' + months.accusative[i], '1 ' + months.accusative[i]);
+ assert.equal(moment([2013, i, 1]).format('[<i>]D[</i>] [<b>]MMMM[</b>]'), '<i>1</i> <b>' + months.accusative[i] + '</b>', '1 <b>' + months.accusative[i] + '</b>');
+ assert.equal(moment([2013, i, 1]).format('D[-й день] MMMM'), '1-й день ' + months.accusative[i], '1-й день ' + months.accusative[i]);
+ assert.equal(moment([2013, i, 1]).format('D, MMMM'), '1, ' + months.nominative[i], '1, ' + months.nominative[i]);
+ }
+ });
+
+ test('format month short case with escaped symbols', function (assert) {
+ var monthsShort = {
+ 'nominative': 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'),
+ 'accusative': 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_')
+ }, i;
+ for (i = 0; i < 12; i++) {
+ assert.equal(moment([2013, i, 1]).format('D[] MMM'), '1 ' + monthsShort.accusative[i], '1 ' + monthsShort.accusative[i]);
+ assert.equal(moment([2013, i, 1]).format('[<i>]D[</i>] [<b>]MMM[</b>]'), '<i>1</i> <b>' + monthsShort.accusative[i] + '</b>', '1 <b>' + monthsShort.accusative[i] + '</b>');
+ assert.equal(moment([2013, i, 1]).format('D[-й день] MMM'), '1-й день ' + monthsShort.accusative[i], '1-й день ' + monthsShort.accusative[i]);
+ assert.equal(moment([2013, i, 1]).format('D, MMM'), '1, ' + monthsShort.nominative[i], '1, ' + monthsShort.nominative[i]);
+ }
+ });
+
test('format week', function (assert) {
- var expected = 'Domingo Dom Dom_Segunda-Feira Seg 2ª_Terça-Feira Ter 3ª_Quarta-Feira Qua 4ª_Quinta-Feira Qui 5ª_Sexta-Feira Sex 6ª_Sábado Sáb Sáb'.split('_'), i;
+ var expected = 'Воскресенье Вс Вс_Понедельник Пн Пн_Вторник Вт Вт_Среда Ср Ср_Четверг Чт Чт_Пятница Пт Пт_Суббота Сб Сб'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'segundos', '44 seconds = seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'um minuto', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'um minuto', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minutos', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minutos', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'uma hora', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'uma hora', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 horas', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 horas', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 horas', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'um dia', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'um dia', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 dias', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'um dia', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 dias', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 dias', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'um mês', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'um mês', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'um mês', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 meses', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 meses', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 meses', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'um mês', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 meses', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'um ano', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 anos', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'um ano', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 anos', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'несколько секунд', '44 seconds = seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'минута', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'минута', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 минуты', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 31}), true), '31 минута', '31 minutes = 31 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 минуты', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'час', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'час', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 часа', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 часов', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 час', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'день', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'день', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 дня', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'день', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 дней', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 11}), true), '11 дней', '11 days = 11 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 21}), true), '21 день', '21 days = 21 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 дней', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'месяц', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'месяц', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'месяц', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 месяца', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 месяца', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 месяца', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'месяц', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 месяцев', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'год', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 года', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'год', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 лет', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'em segundos', 'prefix');
- assert.equal(moment(0).from(30000), 'há segundos', 'suffix');
+ assert.equal(moment(30000).from(0), 'через несколько секунд', 'prefix');
+ assert.equal(moment(0).from(30000), 'несколько секунд назад', 'suffix');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'em segundos', 'in seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'em 5 dias', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'через несколько секунд', 'in seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'через 5 дней', 'in 5 days');
+ assert.equal(moment().add({m: 31}).fromNow(), 'через 31 минуту', 'in 31 minutes = in 31 minutes');
+ assert.equal(moment().subtract({m: 31}).fromNow(), '31 минуту назад', '31 minutes ago = 31 minutes ago');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Hoje às 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Hoje às 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Hoje às 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Amanhã às 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Hoje às 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Ontem às 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'Сегодня в 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'Сегодня в 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'Сегодня в 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'Завтра в 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'Сегодня в 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'Вчера в 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
- var i, m;
+ var i, m, now;
+
+ function makeFormatNext(d) {
+ switch (d.day()) {
+ case 0:
+ return '[В следующее] dddd [в] LT';
+ case 1:
+ case 2:
+ case 4:
+ return '[В следующий] dddd [в] LT';
+ case 3:
+ case 5:
+ case 6:
+ return '[В следующую] dddd [в] LT';
+ }
+ }
+
+ function makeFormatThis(d) {
+ if (d.day() === 2) {
+ return '[Во] dddd [в] LT';
+ }
+ else {
+ return '[В] dddd [в] LT';
+ }
+ }
+
+ now = moment().startOf('week');
for (i = 2; i < 7; i++) {
- m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days current time');
+ m = moment(now).add({d: i});
+ assert.equal(m.calendar(now), m.format(makeFormatThis(m)), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(now), m.format(makeFormatThis(m)), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [às] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(now), m.format(makeFormatThis(m)), 'Today + ' + i + ' days end of day');
+ }
+
+ now = moment().endOf('week');
+ for (i = 2; i < 7; i++) {
+ m = moment(now).add({d: i});
+ assert.equal(m.calendar(now), m.format(makeFormatNext(m)), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(now), m.format(makeFormatNext(m)), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(now), m.format(makeFormatNext(m)), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
- var i, m;
+ var i, m, now;
+
+ function makeFormatLast(d) {
+ switch (d.day()) {
+ case 0:
+ return '[В прошлое] dddd [в] LT';
+ case 1:
+ case 2:
+ case 4:
+ return '[В прошлый] dddd [в] LT';
+ case 3:
+ case 5:
+ case 6:
+ return '[В прошлую] dddd [в] LT';
+ }
+ }
+
+ function makeFormatThis(d) {
+ if (d.day() === 2) {
+ return '[Во] dddd [в] LT';
+ }
+ else {
+ return '[В] dddd [в] LT';
+ }
+ }
+
+ now = moment().startOf('week');
for (i = 2; i < 7; i++) {
- m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days current time');
+ m = moment(now).subtract({d: i});
+ assert.equal(m.calendar(now), m.format(makeFormatLast(m)), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(now), m.format(makeFormatLast(m)), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format((m.day() === 0 || m.day() === 6) ? '[Último] dddd [às] LT' : '[Última] dddd [às] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(now), m.format(makeFormatLast(m)), 'Today - ' + i + ' days end of day');
+ }
+
+ now = moment().endOf('week');
+ for (i = 2; i < 7; i++) {
+ m = moment(now).subtract({d: i});
+ assert.equal(m.calendar(now), m.format(makeFormatThis(m)), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(now), m.format(makeFormatThis(m)), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(now), m.format(makeFormatThis(m)), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
- assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
- assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
- assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
- assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
- assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
- assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
- assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
- assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
- assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
- assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52º', 'Jan 1 2012 should be week 52');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1º', 'Jan 2 2012 should be week 1');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1º', 'Jan 8 2012 should be week 1');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2º', 'Jan 9 2012 should be week 2');
- assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2º', 'Jan 15 2012 should be week 2');
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1-я', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1-я', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2-я', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2-я', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3-я', 'Jan 9 2012 should be week 3');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('ro');
+ localeModule('se');
test('parse', function (assert) {
- var tests = 'ianuarie ian._februarie febr._martie mart._aprilie apr._mai mai_iunie iun._iulie iul._august aug._septembrie sept._octombrie oct._noiembrie nov._decembrie dec.'.split('_'), i;
+ var i,
+ tests = 'ođđajagemánnu ođđj_guovvamánnu guov_njukčamánnu njuk_cuoŋománnu cuo_miessemánnu mies_geassemánnu geas_suoidnemánnu suoi_borgemánnu borg_čakčamánnu čakč_golggotmánnu golg_skábmamánnu skáb_juovlamánnu juov'.split('_');
+
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
+
for (i = 0; i < 12; i++) {
tests[i] = tests[i].split(' ');
equalTest(tests[i][0], 'MMM', i);
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss A', 'duminică, februarie 14 2010, 3:25:50 PM'],
- ['ddd, hA', 'Dum, 3PM'],
- ['M Mo MM MMMM MMM', '2 2 02 februarie febr.'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 14'],
- ['d do dddd ddd dd', '0 0 duminică Dum Du'],
- ['DDD DDDo DDDD', '45 45 045'],
- ['w wo ww', '7 7 07'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'pm PM'],
- ['[a] DDDo[a zi a anului]', 'a 45a zi a anului'],
- ['LTS', '15:25:50'],
- ['L', '14.02.2010'],
- ['LL', '14 februarie 2010'],
- ['LLL', '14 februarie 2010 15:25'],
- ['LLLL', 'duminică, 14 februarie 2010 15:25'],
- ['l', '14.2.2010'],
- ['ll', '14 febr. 2010'],
- ['lll', '14 febr. 2010 15:25'],
- ['llll', 'Dum, 14 febr. 2010 15:25']
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'sotnabeaivi, guovvamánnu 14. 2010, 3:25:50 pm'],
+ ['ddd, hA', 'sotn, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 guovvamánnu guov'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. sotnabeaivi sotn s'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[jagi] DDDo [beaivi]', 'jagi 45. beaivi'],
+ ['LTS', '15:25:50'],
+ ['L', '14.02.2010'],
+ ['LL', 'guovvamánnu 14. b. 2010'],
+ ['LLL', 'guovvamánnu 14. b. 2010 ti. 15:25'],
+ ['LLLL', 'sotnabeaivi, guovvamánnu 14. b. 2010 ti. 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', 'guov 14. b. 2010'],
+ ['lll', 'guov 14. b. 2010 ti. 15:25'],
+ ['llll', 'sotn, guov 14. b. 2010 ti. 15:25']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
+
for (i = 0; i < a.length; i++) {
assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
}
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
-
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
});
test('format month', function (assert) {
- var expected = 'ianuarie ian._februarie febr._martie mart._aprilie apr._mai mai_iunie iun._iulie iul._august aug._septembrie sept._octombrie oct._noiembrie nov._decembrie dec.'.split('_'), i;
+ var i,
+ expected = 'ođđajagemánnu ođđj_guovvamánnu guov_njukčamánnu njuk_cuoŋománnu cuo_miessemánnu mies_geassemánnu geas_suoidnemánnu suoi_borgemánnu borg_čakčamánnu čakč_golggotmánnu golg_skábmamánnu skáb_juovlamánnu juov'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
test('format week', function (assert) {
- var expected = 'duminică Dum Du_luni Lun Lu_marți Mar Ma_miercuri Mie Mi_joi Joi Jo_vineri Vin Vi_sâmbătă Sâm Sâ'.split('_'), i;
+ var i,
+ expected = 'sotnabeaivi sotn s_vuossárga vuos v_maŋŋebárga maŋ m_gaskavahkku gask g_duorastat duor d_bearjadat bear b_lávvardat láv L'.split('_');
+
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'câteva secunde', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'un minut', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'un minut', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minute', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 de minute', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'o oră', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'o oră', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 ore', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 ore', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 de ore', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'o zi', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'o zi', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 zile', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'o zi', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 zile', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 de zile', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'o lună', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'o lună', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'o lună', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 luni', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 luni', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 luni', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'o lună', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 luni', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'un an', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ani', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'un an', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ani', '5 years = 5 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 19}), true), '19 ani', '19 years = 19 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 20}), true), '20 de ani', '20 years = 20 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 100}), true), '100 de ani', '100 years = 100 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 101}), true), '101 ani', '101 years = 101 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 119}), true), '119 ani', '119 years = 119 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 120}), true), '120 de ani', '120 years = 120 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 219}), true), '219 ani', '219 years = 219 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 220}), true), '220 de ani', '220 years = 220 years');
+
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'moadde sekunddat', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'okta minuhta', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'okta minuhta', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 minuhtat', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 minuhtat', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'okta diimmu', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'okta diimmu', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 diimmut', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 diimmut', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 diimmut', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'okta beaivi', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'okta beaivi', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 beaivvit', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'okta beaivi', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 beaivvit', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 beaivvit', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'okta mánnu', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'okta mánnu', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'okta mánnu', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 mánut', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 mánut', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 mánut', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'okta mánnu', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 mánut', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'okta jahki', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 jagit', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'okta jahki', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 jagit', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'peste câteva secunde', 'prefix');
- assert.equal(moment(0).from(30000), 'câteva secunde în urmă', 'suffix');
+ assert.equal(moment(30000).from(0), 'moadde sekunddat geažes', 'prefix');
+ assert.equal(moment(0).from(30000), 'maŋit moadde sekunddat', 'suffix');
});
test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'câteva secunde în urmă', 'now from now should display as in the past');
+ assert.equal(moment().fromNow(), 'maŋit moadde sekunddat', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'peste câteva secunde', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'peste 5 zile', 'in 5 days');
+ assert.equal(moment().add({s: 30}).fromNow(), 'moadde sekunddat geažes', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), '5 beaivvit geažes', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'azi la 2:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'azi la 2:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'azi la 3:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'mâine la 2:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'azi la 1:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'ieri la 2:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'otne ti 02:00', 'Today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'otne ti 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'otne ti 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'ihttin ti 02:00', 'Tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'otne ti 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'ikte ti 02:00', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd [la] LT'), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd [ti] LT'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd [la] LT'), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd [ti] LT'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd [la] LT'), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd [ti] LT'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
var i, m;
+
for (i = 2; i < 7; i++) {
m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[fosta] dddd [la] LT'), 'Today - ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('[ovddit] dddd [ti] LT'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[fosta] dddd [la] LT'), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[ovddit] dddd [ti] LT'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[fosta] dddd [la] LT'), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[ovddit] dddd [ti] LT'), 'Today - ' + i + ' days end of day');
}
});
});
test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
});
test('weeks year starting monday', function (assert) {
assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
});
test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
});
test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
});
test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3', 'Jan 9 2012 should be week 3');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
});
test('lenient ordinal parsing', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- localeModule('ru');
+ localeModule('si');
+ /*jshint -W100*/
test('parse', function (assert) {
- var tests = 'январь янв_февраль фев_март март_апрель апр_май май_июнь июнь_июль июль_август авг_сентябрь сен_октябрь окт_ноябрь ноя_декабрь дек'.split('_'), i;
+ var tests = 'ජනවාරි ජන_පෙබරවාරි පෙබ_මාර්තු මාර්_අප්රේල් අප්_මැයි මැයි_ජූනි ජූනි_ජූලි ජූලි_අගෝස්තු අගෝ_සැප්තැම්බර් සැප්_ඔක්තෝබර් ඔක්_නොවැම්බර් නොවැ_දෙසැම්බර් දෙසැ'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
}
});
- test('parse exceptional case', function (assert) {
- assert.equal(moment('11 мая 1989', ['DD MMMM YYYY']).format('DD-MM-YYYY'), '11-05-1989');
- });
-
test('format', function (assert) {
var a = [
- ['dddd, Do MMMM YYYY, HH:mm:ss', 'воскресенье, 14-го февраля 2010, 15:25:50'],
- ['ddd, h A', 'вс, 3 дня'],
- ['M Mo MM MMMM MMM', '2 2-й 02 февраль фев'],
+ ['YYYY MMMM Do dddd, a h:mm:ss', '2010 පෙබරවාරි 14 වැනි ඉරිදා, ප.ව. 3:25:50'],
+ ['YYYY MMMM Do dddd, a h:mm:ss', '2010 පෙබරවාරි 14 වැනි ඉරිදා, ප.ව. 3:25:50'],
+ ['ddd, A h', 'ඉරි, පස් වරු 3'],
+ ['M Mo MM MMMM MMM', '2 2 වැනි 02 පෙබරවාරි පෙබ'],
['YYYY YY', '2010 10'],
- ['D Do DD', '14 14-го 14'],
- ['d do dddd ddd dd', '0 0-й воскресенье вс вс'],
- ['DDD DDDo DDDD', '45 45-й 045'],
- ['w wo ww', '7 7-я 07'],
+ ['D Do DD', '14 14 වැනි 14'],
+ ['d do dddd ddd dd', '0 0 වැනි ඉරිදා ඉරි ඉ'],
+ ['DDD DDDo DDDD', '45 45 වැනි 045'],
['h hh', '3 03'],
['H HH', '15 15'],
['m mm', '25 25'],
['s ss', '50 50'],
- ['a A', 'дня дня'],
- ['DDDo [день года]', '45-й день года'],
- ['LTS', '15:25:50'],
- ['L', '14.02.2010'],
- ['LL', '14 февраля 2010 г.'],
- ['LLL', '14 февраля 2010 г., 15:25'],
- ['LLLL', 'воскресенье, 14 февраля 2010 г., 15:25'],
- ['l', '14.2.2010'],
- ['ll', '14 фев 2010 г.'],
- ['lll', '14 фев 2010 г., 15:25'],
- ['llll', 'вс, 14 фев 2010 г., 15:25']
+ ['a A', 'ප.ව. පස් වරු'],
+ ['[වසරේ] DDDo [දිනය]', 'වසරේ 45 වැනි දිනය'],
+ ['LTS', 'ප.ව. 3:25:50'],
+ ['LT', 'ප.ව. 3:25'],
+ ['L', '2010/02/14'],
+ ['LL', '2010 පෙබරවාරි 14'],
+ ['LLL', '2010 පෙබරවාරි 14, ප.ව. 3:25'],
+ ['LLLL', '2010 පෙබරවාරි 14 වැනි ඉරිදා, ප.ව. 3:25:50'],
+ ['l', '2010/2/14'],
+ ['ll', '2010 පෙබ 14'],
+ ['lll', '2010 පෙබ 14, ප.ව. 3:25'],
+ ['llll', '2010 පෙබ 14 වැනි ඉරි, ප.ව. 3:25:50']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
}
});
- test('format meridiem', function (assert) {
- assert.equal(moment([2012, 11, 28, 0, 0]).format('A'), 'ночи', 'night');
- assert.equal(moment([2012, 11, 28, 3, 59]).format('A'), 'ночи', 'night');
- assert.equal(moment([2012, 11, 28, 4, 0]).format('A'), 'утра', 'morning');
- assert.equal(moment([2012, 11, 28, 11, 59]).format('A'), 'утра', 'morning');
- assert.equal(moment([2012, 11, 28, 12, 0]).format('A'), 'дня', 'afternoon');
- assert.equal(moment([2012, 11, 28, 16, 59]).format('A'), 'дня', 'afternoon');
- assert.equal(moment([2012, 11, 28, 17, 0]).format('A'), 'вечера', 'evening');
- assert.equal(moment([2012, 11, 28, 23, 59]).format('A'), 'вечера', 'evening');
- });
-
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1-й', '1-й');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2-й', '2-й');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3-й', '3-й');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4-й', '4-й');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5-й', '5-й');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6-й', '6-й');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7-й', '7-й');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8-й', '8-й');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9-й', '9-й');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10-й', '10-й');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1 වැනි', '1 වැනි');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2 වැනි', '2 වැනි');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3 වැනි', '3 වැනි');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4 වැනි', '4 වැනි');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5 වැනි', '5 වැනි');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6 වැනි', '6 වැනි');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7 වැනි', '7 වැනි');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8 වැනි', '8 වැනි');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9 වැනි', '9 වැනි');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10 වැනි', '10 වැනි');
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11-й', '11-й');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12-й', '12-й');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13-й', '13-й');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14-й', '14-й');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15-й', '15-й');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16-й', '16-й');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17-й', '17-й');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18-й', '18-й');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19-й', '19-й');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20-й', '20-й');
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11 වැනි', '11 වැනි');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12 වැනි', '12 වැනි');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13 වැනි', '13 වැනි');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14 වැනි', '14 වැනි');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15 වැනි', '15 වැනි');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16 වැනි', '16 වැනි');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17 වැනි', '17 වැනි');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18 වැනි', '18 වැනි');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19 වැනි', '19 වැනි');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20 වැනි', '20 වැනි');
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21-й', '21-й');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22-й', '22-й');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23-й', '23-й');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24-й', '24-й');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25-й', '25-й');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26-й', '26-й');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27-й', '27-й');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28-й', '28-й');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29-й', '29-й');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30-й', '30-й');
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21 වැනි', '21 වැනි');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22 වැනි', '22 වැනි');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23 වැනි', '23 වැනි');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24 වැනි', '24 වැනි');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25 වැනි', '25 වැනි');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26 වැනි', '26 වැනි');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27 වැනි', '27 වැනි');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28 වැනි', '28 වැනි');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29 වැනි', '29 වැනි');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30 වැනි', '30 වැනි');
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31-й', '31-й');
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31 වැනි', '31 වැනි');
});
test('format month', function (assert) {
- var expected = 'январь янв_февраль фев_март март_апрель апр_май май_июнь июнь_июль июль_август авг_сентябрь сен_октябрь окт_ноябрь ноя_декабрь дек'.split('_'), i;
+ var expected = 'ජනවාරි ජන_පෙබරවාරි පෙබ_මාර්තු මාර්_අප්රේල් අප්_මැයි මැයි_ජූනි ජූනි_ජූලි ජූලි_අගෝස්තු අගෝ_සැප්තැම්බර් සැප්_ඔක්තෝබර් ඔක්_නොවැම්බර් නොවැ_දෙසැම්බර් දෙසැ'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
});
- test('format month case', function (assert) {
- var months = {
- 'nominative': 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_'),
- 'accusative': 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split('_')
- }, i;
- for (i = 0; i < 12; i++) {
- assert.equal(moment([2011, i, 1]).format('D MMMM'), '1 ' + months.accusative[i], '1 ' + months.accusative[i]);
- assert.equal(moment([2011, i, 1]).format('MMMM'), months.nominative[i], '1 ' + months.nominative[i]);
- }
- });
-
- test('format month short case', function (assert) {
- var monthsShort = {
- 'nominative': 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'),
- 'accusative': 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_')
- }, i;
- for (i = 0; i < 12; i++) {
- assert.equal(moment([2011, i, 1]).format('D MMM'), '1 ' + monthsShort.accusative[i], '1 ' + monthsShort.accusative[i]);
- assert.equal(moment([2011, i, 1]).format('MMM'), monthsShort.nominative[i], '1 ' + monthsShort.nominative[i]);
- }
- });
-
- test('format month case with escaped symbols', function (assert) {
- var months = {
- 'nominative': 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_'),
- 'accusative': 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split('_')
- }, i;
- for (i = 0; i < 12; i++) {
- assert.equal(moment([2013, i, 1]).format('D[] MMMM'), '1 ' + months.accusative[i], '1 ' + months.accusative[i]);
- assert.equal(moment([2013, i, 1]).format('[<i>]D[</i>] [<b>]MMMM[</b>]'), '<i>1</i> <b>' + months.accusative[i] + '</b>', '1 <b>' + months.accusative[i] + '</b>');
- assert.equal(moment([2013, i, 1]).format('D[-й день] MMMM'), '1-й день ' + months.accusative[i], '1-й день ' + months.accusative[i]);
- assert.equal(moment([2013, i, 1]).format('D, MMMM'), '1, ' + months.nominative[i], '1, ' + months.nominative[i]);
- }
- });
-
- test('format month short case with escaped symbols', function (assert) {
- var monthsShort = {
- 'nominative': 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'),
- 'accusative': 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_')
- }, i;
- for (i = 0; i < 12; i++) {
- assert.equal(moment([2013, i, 1]).format('D[] MMM'), '1 ' + monthsShort.accusative[i], '1 ' + monthsShort.accusative[i]);
- assert.equal(moment([2013, i, 1]).format('[<i>]D[</i>] [<b>]MMM[</b>]'), '<i>1</i> <b>' + monthsShort.accusative[i] + '</b>', '1 <b>' + monthsShort.accusative[i] + '</b>');
- assert.equal(moment([2013, i, 1]).format('D[-й день] MMM'), '1-й день ' + monthsShort.accusative[i], '1-й день ' + monthsShort.accusative[i]);
- assert.equal(moment([2013, i, 1]).format('D, MMM'), '1, ' + monthsShort.nominative[i], '1, ' + monthsShort.nominative[i]);
- }
- });
-
test('format week', function (assert) {
- var expected = 'воскресенье вс вс_понедельник пн пн_вторник вт вт_среда ср ср_четверг чт чт_пятница пт пт_суббота сб сб'.split('_'), i;
+ var expected = 'ඉරිදා ඉරි ඉ_සඳුදා සඳු ස_අඟහරුවාදා අඟ අ_බදාදා බදා බ_බ්රහස්පතින්දා බ්රහ බ්ර_සිකුරාදා සිකු සි_සෙනසුරාදා සෙන සෙ'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
}
test('from', function (assert) {
var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'несколько секунд', '44 seconds = seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'минута', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'минута', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 минуты', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 31}), true), '31 минута', '31 minutes = 31 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 минуты', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'час', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'час', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 часа', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 часов', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 час', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'день', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'день', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 дня', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'день', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 дней', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 11}), true), '11 дней', '11 days = 11 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 21}), true), '21 день', '21 days = 21 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 дней', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'месяц', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'месяц', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'месяц', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 месяца', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 месяца', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 месяца', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'месяц', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 месяцев', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'год', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 года', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'год', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 лет', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'තත්පර කිහිපය', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'මිනිත්තුව', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'මිනිත්තුව', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), 'මිනිත්තු 2', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), 'මිනිත්තු 44', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'පැය', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'පැය', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), 'පැය 2', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), 'පැය 5', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), 'පැය 21', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'දිනය', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'දිනය', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), 'දින 2', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'දිනය', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), 'දින 5', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), 'දින 25', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'මාසය', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'මාසය', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'මාසය', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), 'මාස 2', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), 'මාස 2', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), 'මාස 3', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'මාසය', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), 'මාස 5', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'වසර', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), 'වසර 2', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'වසර', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), 'වසර 5', '5 years = 5 years');
});
test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'через несколько секунд', 'prefix');
- assert.equal(moment(0).from(30000), 'несколько секунд назад', 'suffix');
+ assert.equal(moment(30000).from(0), 'තත්පර කිහිපයකින්', 'prefix');
+ assert.equal(moment(0).from(30000), 'තත්පර කිහිපයකට පෙර', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'තත්පර කිහිපයකට පෙර', 'now from now should display as in the past');
});
test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'через несколько секунд', 'in seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'через 5 дней', 'in 5 days');
- assert.equal(moment().add({m: 31}).fromNow(), 'через 31 минуту', 'in 31 minutes = in 31 minutes');
- assert.equal(moment().subtract({m: 31}).fromNow(), '31 минуту назад', '31 minutes ago = 31 minutes ago');
+ assert.equal(moment().add({s: 30}).fromNow(), 'තත්පර කිහිපයකින්', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'දින 5කින්', 'in 5 days');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Сегодня в 02:00', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'Сегодня в 02:25', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'Сегодня в 03:00', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'Завтра в 02:00', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'Сегодня в 01:00', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'Вчера в 02:00', 'yesterday at the same time');
+ assert.equal(moment(a).calendar(), 'අද පෙ.ව. 2:00ට', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'අද පෙ.ව. 2:25ට', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'අද පෙ.ව. 3:00ට', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'හෙට පෙ.ව. 2:00ට', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'අද පෙ.ව. 1:00ට', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'ඊයේ පෙ.ව. 2:00ට', 'yesterday at the same time');
});
test('calendar next week', function (assert) {
var i, m;
- function makeFormat(d) {
- return d.day() === 2 ? '[Во] dddd [в] LT' : '[В] dddd [в] LT';
- }
-
for (i = 2; i < 7; i++) {
m = moment().add({d: i});
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days current time');
+ assert.equal(m.calendar(), m.format('dddd LT[ට]'), 'Today + ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('dddd LT[ට]'), 'Today + ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format(makeFormat(m)), 'Today + ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('dddd LT[ට]'), 'Today + ' + i + ' days end of day');
}
});
test('calendar last week', function (assert) {
- var i, m, now;
-
- function makeFormatLast(d) {
- switch (d.day()) {
- case 0:
- return '[В прошлое] dddd [в] LT';
- case 1:
- case 2:
- case 4:
- return '[В прошлый] dddd [в] LT';
- case 3:
- case 5:
- case 6:
- return '[В прошлую] dddd [в] LT';
- }
- }
-
- function makeFormatThis(d) {
- switch (d.day()) {
- case 2:
- return '[Во] dddd [в] LT';
- case 0:
- case 1:
- case 3:
- case 4:
- case 5:
- case 6:
- return '[В] dddd [в] LT';
- }
- }
-
- now = moment().startOf('week');
- for (i = 2; i < 7; i++) {
- m = moment(now).subtract({d: i});
- assert.equal(m.calendar(now), m.format(makeFormatLast(m)), 'Today - ' + i + ' days current time');
- m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(now), m.format(makeFormatLast(m)), 'Today - ' + i + ' days beginning of day');
- m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(now), m.format(makeFormatLast(m)), 'Today - ' + i + ' days end of day');
- }
+ var i, m;
- now = moment().endOf('week');
for (i = 2; i < 7; i++) {
- m = moment(now).subtract({d: i});
- assert.equal(m.calendar(now), m.format(makeFormatThis(m)), 'Today - ' + i + ' days current time');
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('[පසුගිය] dddd LT[ට]'), 'Today - ' + i + ' days current time');
m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(now), m.format(makeFormatThis(m)), 'Today - ' + i + ' days beginning of day');
+ assert.equal(m.calendar(), m.format('[පසුගිය] dddd LT[ට]'), 'Today - ' + i + ' days beginning of day');
m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(now), m.format(makeFormatThis(m)), 'Today - ' + i + ' days end of day');
+ assert.equal(m.calendar(), m.format('[පසුගිය] dddd LT[ට]'), 'Today - ' + i + ' days end of day');
}
});
assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
});
- test('weeks year starting sunday', function (assert) {
- assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
- });
-
- test('weeks year starting monday', function (assert) {
- assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
- assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
- assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
- assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
- assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
- });
-
- test('weeks year starting tuesday', function (assert) {
- assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
- assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
- assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
- assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
- assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
- assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
- });
-
- test('weeks year starting wednesday', function (assert) {
- assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
- assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
- assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
- assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
- assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
- assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
- });
-
- test('weeks year starting thursday', function (assert) {
- assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
- assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
- assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
- assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
- assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
- assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
- });
-
- test('weeks year starting friday', function (assert) {
- assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
- assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
- assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
- assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
- assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
- assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
- });
-
- test('weeks year starting saturday', function (assert) {
- assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
- assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
- assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
- assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
- assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
- assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
- });
-
- test('weeks year starting sunday formatted', function (assert) {
- assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1-я', 'Dec 26 2011 should be week 1');
- assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1-я', 'Jan 1 2012 should be week 1');
- assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2-я', 'Jan 2 2012 should be week 2');
- assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2-я', 'Jan 8 2012 should be week 2');
- assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3-я', 'Jan 9 2012 should be week 3');
- });
-
test('lenient ordinal parsing', function (assert) {
var i, ordinalStr, testMoment;
for (i = 1; i <= 31; ++i) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
- function module (name, lifecycle) {
- QUnit.module(name, {
- setup : function () {
- moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
- };
- if (lifecycle && lifecycle.setup) {
- lifecycle.setup();
- }
- },
- teardown : function () {
- if (lifecycle && lifecycle.teardown) {
- lifecycle.teardown();
- }
- }
- });
- }
-
- function localeModule (name, lifecycle) {
- QUnit.module('locale:' + name, {
- setup : function () {
- moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
- };
- if (lifecycle && lifecycle.setup) {
- lifecycle.setup();
- }
- },
- teardown : function () {
- moment.locale('en');
- if (lifecycle && lifecycle.teardown) {
- lifecycle.teardown();
- }
- }
- });
- }
-
- localeModule('si');
-
- /*jshint -W100*/
- test('parse', function (assert) {
- var tests = 'ජනවාරි ජන_පෙබරවාරි පෙබ_මාර්තු මාර්_අප්රේල් අප්_මැයි මැයි_ජූනි ජූනි_ජූලි ජූලි_අගෝස්තු අගෝ_සැප්තැම්බර් සැප්_ඔක්තෝබර් ඔක්_නොවැම්බර් නොවැ_දෙසැම්බර් දෙසැ'.split('_'), i;
- function equalTest(input, mmm, i) {
- assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
- }
- for (i = 0; i < 12; i++) {
- tests[i] = tests[i].split(' ');
- equalTest(tests[i][0], 'MMM', i);
- equalTest(tests[i][1], 'MMM', i);
- equalTest(tests[i][0], 'MMMM', i);
- equalTest(tests[i][1], 'MMMM', i);
- equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
- equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
- equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
- equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
- }
- });
-
- test('format', function (assert) {
- var a = [
- ['YYYY MMMM Do dddd, a h:mm:ss', '2010 පෙබරවාරි 14 වැනි ඉරිදා, ප.ව. 3:25:50'],
- ['YYYY MMMM Do dddd, a h:mm:ss', '2010 පෙබරවාරි 14 වැනි ඉරිදා, ප.ව. 3:25:50'],
- ['ddd, A h', 'ඉරි, පස් වරු 3'],
- ['M Mo MM MMMM MMM', '2 2 වැනි 02 පෙබරවාරි පෙබ'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14 වැනි 14'],
- ['d do dddd ddd dd', '0 0 වැනි ඉරිදා ඉරි ඉ'],
- ['DDD DDDo DDDD', '45 45 වැනි 045'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
- ['a A', 'ප.ව. පස් වරු'],
- ['[වසරේ] DDDo [දිනය]', 'වසරේ 45 වැනි දිනය'],
- ['LTS', 'ප.ව. 3:25:50'],
- ['LT', 'ප.ව. 3:25'],
- ['L', '2010/02/14'],
- ['LL', '2010 පෙබරවාරි 14'],
- ['LLL', '2010 පෙබරවාරි 14, ප.ව. 3:25'],
- ['LLLL', '2010 පෙබරවාරි 14 වැනි ඉරිදා, ප.ව. 3:25:50'],
- ['l', '2010/2/14'],
- ['ll', '2010 පෙබ 14'],
- ['lll', '2010 පෙබ 14, ප.ව. 3:25'],
- ['llll', '2010 පෙබ 14 වැනි ඉරි, ප.ව. 3:25:50']
- ],
- b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
- i;
- for (i = 0; i < a.length; i++) {
- assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
- }
- });
-
- test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1 වැනි', '1 වැනි');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2 වැනි', '2 වැනි');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3 වැනි', '3 වැනි');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4 වැනි', '4 වැනි');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5 වැනි', '5 වැනි');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6 වැනි', '6 වැනි');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7 වැනි', '7 වැනි');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8 වැනි', '8 වැනි');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9 වැනි', '9 වැනි');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10 වැනි', '10 වැනි');
-
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11 වැනි', '11 වැනි');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12 වැනි', '12 වැනි');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13 වැනි', '13 වැනි');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14 වැනි', '14 වැනි');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15 වැනි', '15 වැනි');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16 වැනි', '16 වැනි');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17 වැනි', '17 වැනි');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18 වැනි', '18 වැනි');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19 වැනි', '19 වැනි');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20 වැනි', '20 වැනි');
-
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21 වැනි', '21 වැනි');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22 වැනි', '22 වැනි');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23 වැනි', '23 වැනි');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24 වැනි', '24 වැනි');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25 වැනි', '25 වැනි');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26 වැනි', '26 වැනි');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27 වැනි', '27 වැනි');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28 වැනි', '28 වැනි');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29 වැනි', '29 වැනි');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30 වැනි', '30 වැනි');
-
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31 වැනි', '31 වැනි');
- });
-
- test('format month', function (assert) {
- var expected = 'ජනවාරි ජන_පෙබරවාරි පෙබ_මාර්තු මාර්_අප්රේල් අප්_මැයි මැයි_ජූනි ජූනි_ජූලි ජූලි_අගෝස්තු අගෝ_සැප්තැම්බර් සැප්_ඔක්තෝබර් ඔක්_නොවැම්බර් නොවැ_දෙසැම්බර් දෙසැ'.split('_'), i;
- for (i = 0; i < expected.length; i++) {
- assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
- }
- });
-
- test('format week', function (assert) {
- var expected = 'ඉරිදා ඉරි ඉ_සඳුදා සඳු ස_අඟහරුවාදා අඟ අ_බදාදා බදා බ_බ්රහස්පතින්දා බ්රහ බ්ර_සිකුරාදා සිකු සි_සෙනසුරාදා සෙන සෙ'.split('_'), i;
- for (i = 0; i < expected.length; i++) {
- assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
- }
- });
-
- test('from', function (assert) {
- var start = moment([2007, 1, 28]);
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'තත්පර කිහිපය', '44 seconds = a few seconds');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'මිනිත්තුව', '45 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'මිනිත්තුව', '89 seconds = a minute');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), 'මිනිත්තු 2', '90 seconds = 2 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), 'මිනිත්තු 44', '44 minutes = 44 minutes');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'පැය', '45 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'පැය', '89 minutes = an hour');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), 'පැය 2', '90 minutes = 2 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), 'පැය 5', '5 hours = 5 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), 'පැය 21', '21 hours = 21 hours');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'දිනය', '22 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'දිනය', '35 hours = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), 'දින 2', '36 hours = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'දිනය', '1 day = a day');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), 'දින 5', '5 days = 5 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), 'දින 25', '25 days = 25 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'මාසය', '26 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'මාසය', '30 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'මාසය', '43 days = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), 'මාස 2', '46 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), 'මාස 2', '75 days = 2 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), 'මාස 3', '76 days = 3 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'මාසය', '1 month = a month');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), 'මාස 5', '5 months = 5 months');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'වසර', '345 days = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), 'වසර 2', '548 days = 2 years');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'වසර', '1 year = a year');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), 'වසර 5', '5 years = 5 years');
- });
-
- test('suffix', function (assert) {
- assert.equal(moment(30000).from(0), 'තත්පර කිහිපයකින්', 'prefix');
- assert.equal(moment(0).from(30000), 'තත්පර කිහිපයකට පෙර', 'suffix');
- });
-
- test('now from now', function (assert) {
- assert.equal(moment().fromNow(), 'තත්පර කිහිපයකට පෙර', 'now from now should display as in the past');
- });
-
- test('fromNow', function (assert) {
- assert.equal(moment().add({s: 30}).fromNow(), 'තත්පර කිහිපයකින්', 'in a few seconds');
- assert.equal(moment().add({d: 5}).fromNow(), 'දින 5කින්', 'in 5 days');
- });
-
- test('calendar day', function (assert) {
- var a = moment().hours(2).minutes(0).seconds(0);
-
- assert.equal(moment(a).calendar(), 'අද පෙ.ව. 2:00ට', 'today at the same time');
- assert.equal(moment(a).add({m: 25}).calendar(), 'අද පෙ.ව. 2:25ට', 'Now plus 25 min');
- assert.equal(moment(a).add({h: 1}).calendar(), 'අද පෙ.ව. 3:00ට', 'Now plus 1 hour');
- assert.equal(moment(a).add({d: 1}).calendar(), 'හෙට පෙ.ව. 2:00ට', 'tomorrow at the same time');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'අද පෙ.ව. 1:00ට', 'Now minus 1 hour');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'ඊයේ පෙ.ව. 2:00ට', 'yesterday at the same time');
- });
-
- test('calendar next week', function (assert) {
- var i, m;
- for (i = 2; i < 7; i++) {
- m = moment().add({d: i});
- assert.equal(m.calendar(), m.format('dddd LT[ට]'), 'Today + ' + i + ' days current time');
- m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('dddd LT[ට]'), 'Today + ' + i + ' days beginning of day');
- m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('dddd LT[ට]'), 'Today + ' + i + ' days end of day');
- }
- });
-
- test('calendar last week', function (assert) {
- var i, m;
-
- for (i = 2; i < 7; i++) {
- m = moment().subtract({d: i});
- assert.equal(m.calendar(), m.format('[පසුගිය] dddd LT[ට]'), 'Today - ' + i + ' days current time');
- m.hours(0).minutes(0).seconds(0).milliseconds(0);
- assert.equal(m.calendar(), m.format('[පසුගිය] dddd LT[ට]'), 'Today - ' + i + ' days beginning of day');
- m.hours(23).minutes(59).seconds(59).milliseconds(999);
- assert.equal(m.calendar(), m.format('[පසුගිය] dddd LT[ට]'), 'Today - ' + i + ' days end of day');
- }
- });
-
- test('calendar all else', function (assert) {
- var weeksAgo = moment().subtract({w: 1}),
- weeksFromNow = moment().add({w: 1});
-
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
-
- weeksAgo = moment().subtract({w: 2});
- weeksFromNow = moment().add({w: 2});
-
- assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
- assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
- });
-
- test('lenient ordinal parsing', function (assert) {
- var i, ordinalStr, testMoment;
- for (i = 1; i <= 31; ++i) {
- ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
- testMoment = moment(ordinalStr, 'YYYY MM Do');
- assert.equal(testMoment.year(), 2014,
- 'lenient ordinal parsing ' + i + ' year check');
- assert.equal(testMoment.month(), 0,
- 'lenient ordinal parsing ' + i + ' month check');
- assert.equal(testMoment.date(), i,
- 'lenient ordinal parsing ' + i + ' date check');
- }
- });
-
- test('lenient ordinal parsing of number', function (assert) {
- var i, testMoment;
- for (i = 1; i <= 31; ++i) {
- testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
- assert.equal(testMoment.year(), 2014,
- 'lenient ordinal parsing of number ' + i + ' year check');
- assert.equal(testMoment.month(), 0,
- 'lenient ordinal parsing of number ' + i + ' month check');
- assert.equal(testMoment.date(), i,
- 'lenient ordinal parsing of number ' + i + ' date check');
- }
- });
-
- test('strict ordinal parsing', function (assert) {
- var i, ordinalStr, testMoment;
- for (i = 1; i <= 31; ++i) {
- ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
- testMoment = moment(ordinalStr, 'YYYY MM Do', true);
- assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
- }
- });
-
-}));
-
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
- typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
- factory(global.moment)
-}(this, function (moment) { 'use strict';
-
- /*global QUnit:false*/
-
- var test = QUnit.test;
+ var expect = QUnit.expect;
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('sw');
+
+ test('parse', function (assert) {
+ var tests = 'Januari Jan_Februari Feb_Machi Mac_Aprili Apr_Mei Mei_Juni Jun_Julai Jul_Agosti Ago_Septemba Sep_Oktoba Okt_Novemba Nov_Desemba Des'.split('_'), i;
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ }
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'Jumapili, Februari 14 2010, 3:25:50 pm'],
+ ['ddd, hA', 'Jpl, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2 02 Februari Feb'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14 14'],
+ ['d do dddd ddd dd', '0 0 Jumapili Jpl J2'],
+ ['DDD DDDo DDDD', '45 45 045'],
+ ['w wo ww', '7 7 07'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[siku] DDDo [ya mwaka]', 'siku 45 ya mwaka'],
+ ['LTS', '15:25:50'],
+ ['L', '14.02.2010'],
+ ['LL', '14 Februari 2010'],
+ ['LLL', '14 Februari 2010 15:25'],
+ ['LLLL', 'Jumapili, 14 Februari 2010 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14 Feb 2010'],
+ ['lll', '14 Feb 2010 15:25'],
+ ['llll', 'Jpl, 14 Feb 2010 15:25']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1', '1');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2', '2');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3', '3');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4', '4');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5', '5');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6', '6');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7', '7');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8', '8');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9', '9');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10', '10');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11', '11');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12', '12');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13', '13');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14', '14');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15', '15');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16', '16');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17', '17');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18', '18');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19', '19');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20', '20');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21', '21');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22', '22');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23', '23');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24', '24');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25', '25');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26', '26');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27', '27');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28', '28');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29', '29');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30', '30');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31', '31');
+ });
+
+ test('format month', function (assert) {
+ var expected = 'Januari Jan_Februari Feb_Machi Mac_Aprili Apr_Mei Mei_Juni Jun_Julai Jul_Agosti Ago_Septemba Sep_Oktoba Okt_Novemba Nov_Desemba Des'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var expected = 'Jumapili Jpl J2_Jumatatu Jtat J3_Jumanne Jnne J4_Jumatano Jtan J5_Alhamisi Alh Al_Ijumaa Ijm Ij_Jumamosi Jmos J1'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'hivi punde', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'dakika moja', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'dakika moja', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), 'dakika 2', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), 'dakika 44', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'saa limoja', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'saa limoja', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), 'masaa 2', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), 'masaa 5', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), 'masaa 21', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'siku moja', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'siku moja', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), 'masiku 2', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'siku moja', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), 'masiku 5', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), 'masiku 25', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'mwezi mmoja', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'mwezi mmoja', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'mwezi mmoja', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), 'miezi 2', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), 'miezi 2', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), 'miezi 3', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'mwezi mmoja', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), 'miezi 5', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'mwaka mmoja', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), 'miaka 2', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'mwaka mmoja', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), 'miaka 5', '5 years = 5 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'hivi punde baadaye', 'prefix');
+ assert.equal(moment(0).from(30000), 'tokea hivi punde', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'tokea hivi punde', 'now from now should display as in the past');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'hivi punde baadaye', 'in a few seconds');
+ assert.equal(moment().add({d: 5}).fromNow(), 'masiku 5 baadaye', 'in 5 days');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+ assert.equal(moment(a).calendar(), 'leo saa 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'leo saa 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'leo saa 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'kesho saa 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'leo saa 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'jana 02:00', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('[wiki ijayo] dddd [saat] LT'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('[wiki ijayo] dddd [saat] LT'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('[wiki ijayo] dddd [saat] LT'), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('[wiki iliyopita] dddd [saat] LT'), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('[wiki iliyopita] dddd [saat] LT'), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('[wiki iliyopita] dddd [saat] LT'), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2011, 11, 26]).week(), 1, 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).week(), 2, 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).week(), 3, 'Jan 9 2012 should be week 3');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 12]).week(), 3, 'Jan 12 2009 should be week 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 28]).week(), 1, 'Dec 28 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 1, 'Jan 3 2010 should be week 1');
+ assert.equal(moment([2010, 0, 4]).week(), 2, 'Jan 4 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 2, 'Jan 10 2010 should be week 2');
+ assert.equal(moment([2010, 0, 11]).week(), 3, 'Jan 11 2010 should be week 3');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 27]).week(), 1, 'Dec 27 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 1, 'Jan 2 2011 should be week 1');
+ assert.equal(moment([2011, 0, 3]).week(), 2, 'Jan 3 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 2, 'Jan 9 2011 should be week 2');
+ assert.equal(moment([2011, 0, 10]).week(), 3, 'Jan 10 2011 should be week 3');
+ });
+
+ test('weeks year starting sunday format', function (assert) {
+ assert.equal(moment([2011, 11, 26]).format('w ww wo'), '1 01 1', 'Dec 26 2011 should be week 1');
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '2 02 2', 'Jan 2 2012 should be week 2');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '3 03 3', 'Jan 9 2012 should be week 3');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
test('format', function (assert) {
var a = [
- ['dddd, MMMM Do YYYY, h:mm:ss a', 'ஞாயிற்றுக்கிழமை, பிப்ரவரி 14வது 2010, 3:25:50 எற்பாடு'],
- ['ddd, hA', 'ஞாயிறு, 3 எற்பாடு'],
- ['M Mo MM MMMM MMM', '2 2வது 02 பிப்ரவரி பிப்ரவரி'],
- ['YYYY YY', '2010 10'],
- ['D Do DD', '14 14வது 14'],
- ['d do dddd ddd dd', '0 0வது ஞாயிற்றுக்கிழமை ஞாயிறு ஞா'],
- ['DDD DDDo DDDD', '45 45வது 045'],
- ['w wo ww', '8 8வது 08'],
- ['h hh', '3 03'],
- ['H HH', '15 15'],
- ['m mm', '25 25'],
- ['s ss', '50 50'],
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'ஞாயிற்றுக்கிழமை, பிப்ரவரி ௧௪வது ௨௦௧௦, ௩:௨௫:௫௦ எற்பாடு'],
+ ['ddd, hA', 'ஞாயிறு, ௩ எற்பாடு'],
+ ['M Mo MM MMMM MMM', '௨ ௨வது ௦௨ பிப்ரவரி பிப்ரவரி'],
+ ['YYYY YY', '௨௦௧௦ ௧௦'],
+ ['D Do DD', '௧௪ ௧௪வது ௧௪'],
+ ['d do dddd ddd dd', '௦ ௦வது ஞாயிற்றுக்கிழமை ஞாயிறு ஞா'],
+ ['DDD DDDo DDDD', '௪௫ ௪௫வது ௦௪௫'],
+ ['w wo ww', '௮ ௮வது ௦௮'],
+ ['h hh', '௩ ௦௩'],
+ ['H HH', '௧௫ ௧௫'],
+ ['m mm', '௨௫ ௨௫'],
+ ['s ss', '௫௦ ௫௦'],
['a A', ' எற்பாடு எற்பாடு'],
- ['[ஆண்டின்] DDDo [நாள்]', 'ஆண்டின் 45வது நாள்'],
- ['LTS', '15:25:50'],
- ['L', '14/02/2010'],
- ['LL', '14 பிப்ரவரி 2010'],
- ['LLL', '14 பிப்ரவரி 2010, 15:25'],
- ['LLLL', 'ஞாயிற்றுக்கிழமை, 14 பிப்ரவரி 2010, 15:25'],
- ['l', '14/2/2010'],
- ['ll', '14 பிப்ரவரி 2010'],
- ['lll', '14 பிப்ரவரி 2010, 15:25'],
- ['llll', 'ஞாயிறு, 14 பிப்ரவரி 2010, 15:25']
+ ['[ஆண்டின்] DDDo [நாள்]', 'ஆண்டின் ௪௫வது நாள்'],
+ ['LTS', '௧௫:௨௫:௫௦'],
+ ['L', '௧௪/௦௨/௨௦௧௦'],
+ ['LL', '௧௪ பிப்ரவரி ௨௦௧௦'],
+ ['LLL', '௧௪ பிப்ரவரி ௨௦௧௦, ௧௫:௨௫'],
+ ['LLLL', 'ஞாயிற்றுக்கிழமை, ௧௪ பிப்ரவரி ௨௦௧௦, ௧௫:௨௫'],
+ ['l', '௧௪/௨/௨௦௧௦'],
+ ['ll', '௧௪ பிப்ரவரி ௨௦௧௦'],
+ ['lll', '௧௪ பிப்ரவரி ௨௦௧௦, ௧௫:௨௫'],
+ ['llll', 'ஞாயிறு, ௧௪ பிப்ரவரி ௨௦௧௦, ௧௫:௨௫']
],
b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
i;
});
test('format ordinal', function (assert) {
- assert.equal(moment([2011, 0, 1]).format('DDDo'), '1வது', '1வது');
- assert.equal(moment([2011, 0, 2]).format('DDDo'), '2வது', '2வது');
- assert.equal(moment([2011, 0, 3]).format('DDDo'), '3வது', '3வது');
- assert.equal(moment([2011, 0, 4]).format('DDDo'), '4வது', '4வது');
- assert.equal(moment([2011, 0, 5]).format('DDDo'), '5வது', '5வது');
- assert.equal(moment([2011, 0, 6]).format('DDDo'), '6வது', '6வது');
- assert.equal(moment([2011, 0, 7]).format('DDDo'), '7வது', '7வது');
- assert.equal(moment([2011, 0, 8]).format('DDDo'), '8வது', '8வது');
- assert.equal(moment([2011, 0, 9]).format('DDDo'), '9வது', '9வது');
- assert.equal(moment([2011, 0, 10]).format('DDDo'), '10வது', '10வது');
-
- assert.equal(moment([2011, 0, 11]).format('DDDo'), '11வது', '11வது');
- assert.equal(moment([2011, 0, 12]).format('DDDo'), '12வது', '12வது');
- assert.equal(moment([2011, 0, 13]).format('DDDo'), '13வது', '13வது');
- assert.equal(moment([2011, 0, 14]).format('DDDo'), '14வது', '14வது');
- assert.equal(moment([2011, 0, 15]).format('DDDo'), '15வது', '15வது');
- assert.equal(moment([2011, 0, 16]).format('DDDo'), '16வது', '16வது');
- assert.equal(moment([2011, 0, 17]).format('DDDo'), '17வது', '17வது');
- assert.equal(moment([2011, 0, 18]).format('DDDo'), '18வது', '18வது');
- assert.equal(moment([2011, 0, 19]).format('DDDo'), '19வது', '19வது');
- assert.equal(moment([2011, 0, 20]).format('DDDo'), '20வது', '20வது');
-
- assert.equal(moment([2011, 0, 21]).format('DDDo'), '21வது', '21வது');
- assert.equal(moment([2011, 0, 22]).format('DDDo'), '22வது', '22வது');
- assert.equal(moment([2011, 0, 23]).format('DDDo'), '23வது', '23வது');
- assert.equal(moment([2011, 0, 24]).format('DDDo'), '24வது', '24வது');
- assert.equal(moment([2011, 0, 25]).format('DDDo'), '25வது', '25வது');
- assert.equal(moment([2011, 0, 26]).format('DDDo'), '26வது', '26வது');
- assert.equal(moment([2011, 0, 27]).format('DDDo'), '27வது', '27வது');
- assert.equal(moment([2011, 0, 28]).format('DDDo'), '28வது', '28வது');
- assert.equal(moment([2011, 0, 29]).format('DDDo'), '29வது', '29வது');
- assert.equal(moment([2011, 0, 30]).format('DDDo'), '30வது', '30வது');
-
- assert.equal(moment([2011, 0, 31]).format('DDDo'), '31வது', '31வது');
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '௧வது', '௧வது');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '௨வது', '௨வது');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '௩வது', '௩வது');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '௪வது', '௪வது');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '௫வது', '௫வது');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '௬வது', '௬வது');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '௭வது', '௭வது');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '௮வது', '௮வது');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '௯வது', '௯வது');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '௧௦வது', '௧௦வது');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '௧௧வது', '௧௧வது');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '௧௨வது', '௧௨வது');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '௧௩வது', '௧௩வது');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '௧௪வது', '௧௪வது');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '௧௫வது', '௧௫வது');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '௧௬வது', '௧௬வது');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '௧௭வது', '௧௭வது');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '௧௮வது', '௧௮வது');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '௧௯வது', '௧௯வது');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '௨௦வது', '௨௦வது');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '௨௧வது', '௨௧வது');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '௨௨வது', '௨௨வது');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '௨௩வது', '௨௩வது');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '௨௪வது', '௨௪வது');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '௨௫வது', '௨௫வது');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '௨௬வது', '௨௬வது');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '௨௭வது', '௨௭வது');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '௨௮வது', '௨௮வது');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '௨௯வது', '௨௯வது');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '௩௦வது', '௩௦வது');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '௩௧வது', '௩௧வது');
});
test('format month', function (assert) {
assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'ஒரு சில விநாடிகள்', '44 விநாடிகள் = ஒரு சில விநாடிகள்');
assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ஒரு நிமிடம்', '45 விநாடிகள் = ஒரு நிமிடம்');
assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ஒரு நிமிடம்', '89 விநாடிகள் = ஒரு நிமிடம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 நிமிடங்கள்', '90 விநாடிகள் = 2 நிமிடங்கள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 நிமிடங்கள்', '44 நிமிடங்கள் = 44 நிமிடங்கள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '௨ நிமிடங்கள்', '90 விநாடிகள் = ௨ நிமிடங்கள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '௪௪ நிமிடங்கள்', '44 நிமிடங்கள் = 44 நிமிடங்கள்');
assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ஒரு மணி நேரம்', '45 நிமிடங்கள் = ஒரு மணி நேரம்');
assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ஒரு மணி நேரம்', '89 நிமிடங்கள் = ஒரு மணி நேரம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 மணி நேரம்', '90 நிமிடங்கள் = 2 மணி நேரம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 மணி நேரம்', '5 மணி நேரம் = 5 மணி நேரம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 மணி நேரம்', '21 மணி நேரம் = 21 மணி நேரம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ஒரு நாள்', '22 மணி நேரம் = ஒரு நாள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ஒரு நாள்', '35 மணி நேரம் = ஒரு நாள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 நாட்கள்', '36 மணி நேரம் = 2 days');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ஒரு நாள்', '1 நாள் = ஒரு நாள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 நாட்கள்', '5 நாட்கள் = 5 நாட்கள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 நாட்கள்', '25 நாட்கள் = 25 நாட்கள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ஒரு மாதம்', '26 நாட்கள் = ஒரு மாதம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ஒரு மாதம்', '30 நாட்கள் = ஒரு மாதம்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '௨ மணி நேரம்', '90 நிமிடங்கள் = ௨ மணி நேரம்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '௫ மணி நேரம்', '5 மணி நேரம் = 5 மணி நேரம்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '௨௧ மணி நேரம்', '௨௧ மணி நேரம் = ௨௧ மணி நேரம்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ஒரு நாள்', '௨௨ மணி நேரம் = ஒரு நாள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ஒரு நாள்', '௩5 மணி நேரம் = ஒரு நாள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '௨ நாட்கள்', '௩6 மணி நேரம் = ௨ days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ஒரு நாள்', '௧ நாள் = ஒரு நாள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '௫ நாட்கள்', '5 நாட்கள் = 5 நாட்கள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '௨௫ நாட்கள்', '௨5 நாட்கள் = ௨5 நாட்கள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ஒரு மாதம்', '௨6 நாட்கள் = ஒரு மாதம்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ஒரு மாதம்', '௩0 நாட்கள் = ஒரு மாதம்');
assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ஒரு மாதம்', '45 நாட்கள் = ஒரு மாதம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 மாதங்கள்', '46 நாட்கள் = 2 மாதங்கள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 மாதங்கள்', '75 நாட்கள் = 2 மாதங்கள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 மாதங்கள்', '76 நாட்கள் = 3 மாதங்கள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ஒரு மாதம்', '1 மாதம் = ஒரு மாதம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 மாதங்கள்', '5 மாதங்கள் = 5 மாதங்கள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ஒரு வருடம்', '345 நாட்கள் = ஒரு வருடம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 ஆண்டுகள்', '548 நாட்கள் = 2 ஆண்டுகள்');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ஒரு வருடம்', '1 வருடம் = ஒரு வருடம்');
- assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 ஆண்டுகள்', '5 ஆண்டுகள் = 5 ஆண்டுகள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '௨ மாதங்கள்', '46 நாட்கள் = ௨ மாதங்கள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '௨ மாதங்கள்', '75 நாட்கள் = ௨ மாதங்கள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '௩ மாதங்கள்', '76 நாட்கள் = ௩ மாதங்கள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ஒரு மாதம்', '௧ மாதம் = ஒரு மாதம்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '௫ மாதங்கள்', '5 மாதங்கள் = 5 மாதங்கள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ஒரு வருடம்', '௩45 நாட்கள் = ஒரு வருடம்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '௨ ஆண்டுகள்', '548 நாட்கள் = ௨ ஆண்டுகள்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ஒரு வருடம்', '௧ வருடம் = ஒரு வருடம்');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '௫ ஆண்டுகள்', '5 ஆண்டுகள் = 5 ஆண்டுகள்');
});
test('suffix', function (assert) {
test('fromNow', function (assert) {
assert.equal(moment().add({s: 30}).fromNow(), 'ஒரு சில விநாடிகள் இல்', 'ஒரு சில விநாடிகள் இல்');
- assert.equal(moment().add({d: 5}).fromNow(), '5 நாட்கள் இல்', '5 நாட்கள் இல்');
+ assert.equal(moment().add({d: 5}).fromNow(), '௫ நாட்கள் இல்', '5 நாட்கள் இல்');
});
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'இன்று 02:00', 'இன்று 02:00');
- assert.equal(moment(a).add({m: 25}).calendar(), 'இன்று 02:25', 'இன்று 02:25');
- assert.equal(moment(a).add({h: 1}).calendar(), 'இன்று 03:00', 'இன்று 03:00');
- assert.equal(moment(a).add({d: 1}).calendar(), 'நாளை 02:00', 'நாளை 02:00');
- assert.equal(moment(a).subtract({h: 1}).calendar(), 'இன்று 01:00', 'இன்று 01:00');
- assert.equal(moment(a).subtract({d: 1}).calendar(), 'நேற்று 02:00', 'நேற்று 02:00');
+ assert.equal(moment(a).calendar(), 'இன்று ௦௨:௦௦', 'இன்று 02:00');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'இன்று ௦௨:௨௫', 'இன்று 02:25');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'இன்று ௦௩:௦௦', 'இன்று 03:00');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'நாளை ௦௨:௦௦', 'நாளை 02:00');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'இன்று ௦௧:௦௦', 'இன்று 0௧:00');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'நேற்று ௦௨:௦௦', 'நேற்று 02:00');
});
test('calendar next week', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('te');
+
+ test('parse', function (assert) {
+ var tests = 'జనవరి జన._ఫిబ్రవరి ఫిబ్ర._మార్చి మార్చి_ఏప్రిల్ ఏప్రి._మే మే_జూన్ జూన్_జూలై జూలై_ఆగస్టు ఆగ._సెప్టెంబర్ సెప్._అక్టోబర్ అక్టో._నవంబర్ నవ._డిసెంబర్ డిసె.'.split('_'), i;
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ }
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split(' ');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+
+ test('format', function (assert) {
+ var a = [
+ ['dddd, Do తేదీ MMMM YYYY, a h:mm:ss', 'ఆదివారం, 14వ తేదీ ఫిబ్రవరి 2010, మధ్యాహ్నం 3:25:50'],
+ ['ddd, a h గంటలు', 'ఆది, మధ్యాహ్నం 3 గంటలు'],
+ ['M Mo నెల MM MMMM MMM', '2 2వ నెల 02 ఫిబ్రవరి ఫిబ్ర.'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14వ 14'],
+ ['d do dddd ddd dd', '0 0వ ఆదివారం ఆది ఆ'],
+ ['DDD DDDo DDDD', '45 45వ 045'],
+ ['w wo ww', '8 8వ 08'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'మధ్యాహ్నం మధ్యాహ్నం'],
+ ['LTS', 'మధ్యాహ్నం 3:25:50'],
+ ['L', '14/02/2010'],
+ ['LL', '14 ఫిబ్రవరి 2010'],
+ ['LLL', '14 ఫిబ్రవరి 2010, మధ్యాహ్నం 3:25'],
+ ['LLLL', 'ఆదివారం, 14 ఫిబ్రవరి 2010, మధ్యాహ్నం 3:25'],
+ ['l', '14/2/2010'],
+ ['ll', '14 ఫిబ్ర. 2010'],
+ ['lll', '14 ఫిబ్ర. 2010, మధ్యాహ్నం 3:25'],
+ ['llll', 'ఆది, 14 ఫిబ్ర. 2010, మధ్యాహ్నం 3:25']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1వ', '1వ');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2వ', '2వ');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3వ', '3వ');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4వ', '4వ');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5వ', '5వ');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6వ', '6వ');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7వ', '7వ');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8వ', '8వ');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9వ', '9వ');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10వ', '10వ');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11వ', '11వ');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12వ', '12వ');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13వ', '13వ');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14వ', '14వ');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15వ', '15వ');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16వ', '16వ');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17వ', '17వ');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18వ', '18వ');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19వ', '19వ');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20వ', '20వ');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21వ', '21వ');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22వ', '22వ');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23వ', '23వ');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24వ', '24వ');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25వ', '25వ');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26వ', '26వ');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27వ', '27వ');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28వ', '28వ');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29వ', '29వ');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30వ', '30వ');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31వ', '31వ');
+ });
+
+ test('format month', function (assert) {
+ var expected = 'జనవరి జన._ఫిబ్రవరి ఫిబ్ర._మార్చి మార్చి_ఏప్రిల్ ఏప్రి._మే మే_జూన్ జూన్_జూలై జూలై_ఆగస్టు ఆగ._సెప్టెంబర్ సెప్._అక్టోబర్ అక్టో._నవంబర్ నవ._డిసెంబర్ డిసె.'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var expected = 'ఆదివారం ఆది ఆ_సోమవారం సోమ సో_మంగళవారం మంగళ మం_బుధవారం బుధ బు_గురువారం గురు గు_శుక్రవారం శుక్ర శు_శనివారం శని శ'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'కొన్ని క్షణాలు', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'ఒక నిమిషం', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'ఒక నిమిషం', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), '2 నిమిషాలు', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), '44 నిమిషాలు', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'ఒక గంట', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'ఒక గంట', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), '2 గంటలు', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), '5 గంటలు', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), '21 గంటలు', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'ఒక రోజు', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'ఒక రోజు', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), '2 రోజులు', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'ఒక రోజు', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), '5 రోజులు', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), '25 రోజులు', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'ఒక నెల', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'ఒక నెల', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'ఒక నెల', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), '2 నెలలు', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), '2 నెలలు', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), '3 నెలలు', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'ఒక నెల', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), '5 నెలలు', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'ఒక సంవత్సరం', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), '2 సంవత్సరాలు', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'ఒక సంవత్సరం', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), '5 సంవత్సరాలు', '5 years = 5 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'కొన్ని క్షణాలు లో', 'prefix');
+ assert.equal(moment(0).from(30000), 'కొన్ని క్షణాలు క్రితం', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'కొన్ని క్షణాలు క్రితం', 'now from now should display as in the past');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'కొన్ని క్షణాలు లో', 'కొన్ని క్షణాలు లో');
+ assert.equal(moment().add({d: 5}).fromNow(), '5 రోజులు లో', '5 రోజులు లో');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'నేడు రాత్రి 2:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'నేడు రాత్రి 2:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 3}).calendar(), 'నేడు ఉదయం 5:00', 'Now plus 3 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'రేపు రాత్రి 2:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'నేడు రాత్రి 1:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'నిన్న రాత్రి 2:00', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('dddd[,] LT'), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('[గత] dddd[,] LT'), 'Today - ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('[గత] dddd[,] LT'), 'Today - ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('[గత] dddd[,] LT'), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ });
+
+ test('meridiem invariant', function (assert) {
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('a'), 'రాత్రి', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('a'), 'ఉదయం', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('a'), 'మధ్యాహ్నం', 'during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('a'), 'సాయంత్రం', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('a'), 'సాయంత్రం', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('a'), 'రాత్రి', 'night');
+
+ assert.equal(moment([2011, 2, 23, 2, 30]).format('A'), 'రాత్రి', 'before dawn');
+ assert.equal(moment([2011, 2, 23, 9, 30]).format('A'), 'ఉదయం', 'morning');
+ assert.equal(moment([2011, 2, 23, 14, 30]).format('A'), 'మధ్యాహ్నం', ' during day');
+ assert.equal(moment([2011, 2, 23, 17, 30]).format('A'), 'సాయంత్రం', 'evening');
+ assert.equal(moment([2011, 2, 23, 19, 30]).format('A'), 'సాయంత్రం', 'late evening');
+ assert.equal(moment([2011, 2, 23, 21, 20]).format('A'), 'రాత్రి', 'night');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2012, 0, 1]).week(), 1, 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).week(), 1, 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 2, 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).week(), 2, 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 3, 'Jan 15 2012 should be week 3');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2006, 11, 31]).week(), 1, 'Dec 31 2006 should be week 1');
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 6]).week(), 1, 'Jan 6 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 2, 'Jan 7 2007 should be week 2');
+ assert.equal(moment([2007, 0, 13]).week(), 2, 'Jan 13 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 3, 'Jan 14 2007 should be week 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 29]).week(), 52, 'Dec 29 2007 should be week 52');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 5]).week(), 1, 'Jan 5 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 2, 'Jan 6 2008 should be week 2');
+ assert.equal(moment([2008, 0, 12]).week(), 2, 'Jan 12 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 3, 'Jan 13 2008 should be week 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 29]).week(), 1, 'Dec 29 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 4]).week(), 1, 'Jan 4 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 2, 'Jan 5 2003 should be week 2');
+ assert.equal(moment([2003, 0, 11]).week(), 2, 'Jan 11 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 3, 'Jan 12 2003 should be week 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 28]).week(), 1, 'Dec 28 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 3]).week(), 1, 'Jan 3 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 2, 'Jan 4 2009 should be week 2');
+ assert.equal(moment([2009, 0, 10]).week(), 2, 'Jan 10 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 3, 'Jan 11 2009 should be week 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 27]).week(), 1, 'Dec 27 2009 should be week 1');
+ assert.equal(moment([2010, 0, 1]).week(), 1, 'Jan 1 2010 should be week 1');
+ assert.equal(moment([2010, 0, 2]).week(), 1, 'Jan 2 2010 should be week 1');
+ assert.equal(moment([2010, 0, 3]).week(), 2, 'Jan 3 2010 should be week 2');
+ assert.equal(moment([2010, 0, 9]).week(), 2, 'Jan 9 2010 should be week 2');
+ assert.equal(moment([2010, 0, 10]).week(), 3, 'Jan 10 2010 should be week 3');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 26]).week(), 1, 'Dec 26 2010 should be week 1');
+ assert.equal(moment([2011, 0, 1]).week(), 1, 'Jan 1 2011 should be week 1');
+ assert.equal(moment([2011, 0, 2]).week(), 2, 'Jan 2 2011 should be week 2');
+ assert.equal(moment([2011, 0, 8]).week(), 2, 'Jan 8 2011 should be week 2');
+ assert.equal(moment([2011, 0, 9]).week(), 3, 'Jan 9 2011 should be week 3');
+ });
+
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '1 01 1వ', 'Jan 1 2012 should be week 1');
+ assert.equal(moment([2012, 0, 7]).format('w ww wo'), '1 01 1వ', 'Jan 7 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '2 02 2వ', 'Jan 8 2012 should be week 2');
+ assert.equal(moment([2012, 0, 14]).format('w ww wo'), '2 02 2వ', 'Jan 14 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '3 03 3వ', 'Jan 15 2012 should be week 3');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('meridiem', function (assert) {
+ var h, m, t1, t2;
+ for (h = 0; h < 24; ++h) {
+ for (m = 0; m < 60; m += 15) {
+ t1 = moment.utc([2000, 0, 1, h, m]);
+ t2 = moment(t1.format('A h:mm'), 'A h:mm');
+ assert.equal(t2.format('HH:mm'), t1.format('HH:mm'),
+ 'meridiem at ' + t1.format('HH:mm'));
+ }
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ localeModule('tlh');
+
+ //Current parsing method doesn't allow parsing correctly months 10, 11 and 12.
+ /*
+ * test('parse', function (assert) {
+ var tests = 'tera’ jar wa’.jar wa’_tera’ jar cha’.jar cha’_tera’ jar wej.jar wej_tera’ jar loS.jar loS_tera’ jar vagh.jar vagh_tera’ jar jav.jar jav_tera’ jar Soch.jar Soch_tera’ jar chorgh.jar chorgh_tera’ jar Hut.jar Hut_tera’ jar wa’maH.jar wa’maH_tera’ jar wa’maH wa’.jar wa’maH wa’_tera’ jar wa’maH cha’.jar wa’maH cha’'.split('_'), i;
+ function equalTest(input, mmm, i) {
+ assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
+ }
+ for (i = 0; i < 12; i++) {
+ tests[i] = tests[i].split('.');
+ equalTest(tests[i][0], 'MMM', i);
+ equalTest(tests[i][1], 'MMM', i);
+ equalTest(tests[i][0], 'MMMM', i);
+ equalTest(tests[i][1], 'MMMM', i);
+ equalTest(tests[i][0].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleLowerCase(), 'MMMM', i);
+ equalTest(tests[i][0].toLocaleUpperCase(), 'MMMM', i);
+ equalTest(tests[i][1].toLocaleUpperCase(), 'MMMM', i);
+ }
+ });
+ */
+ test('format', function (assert) {
+ var a = [
+ ['dddd, MMMM Do YYYY, h:mm:ss a', 'lojmItjaj, tera’ jar cha’ 14. 2010, 3:25:50 pm'],
+ ['ddd, hA', 'lojmItjaj, 3PM'],
+ ['M Mo MM MMMM MMM', '2 2. 02 tera’ jar cha’ jar cha’'],
+ ['YYYY YY', '2010 10'],
+ ['D Do DD', '14 14. 14'],
+ ['d do dddd ddd dd', '0 0. lojmItjaj lojmItjaj lojmItjaj'],
+ ['DDD DDDo DDDD', '45 45. 045'],
+ ['w wo ww', '6 6. 06'],
+ ['h hh', '3 03'],
+ ['H HH', '15 15'],
+ ['m mm', '25 25'],
+ ['s ss', '50 50'],
+ ['a A', 'pm PM'],
+ ['[DIS jaj] DDDo', 'DIS jaj 45.'],
+ ['LTS', '15:25:50'],
+ ['L', '14.02.2010'],
+ ['LL', '14 tera’ jar cha’ 2010'],
+ ['LLL', '14 tera’ jar cha’ 2010 15:25'],
+ ['LLLL', 'lojmItjaj, 14 tera’ jar cha’ 2010 15:25'],
+ ['l', '14.2.2010'],
+ ['ll', '14 jar cha’ 2010'],
+ ['lll', '14 jar cha’ 2010 15:25'],
+ ['llll', 'lojmItjaj, 14 jar cha’ 2010 15:25']
+ ],
+ b = moment(new Date(2010, 1, 14, 15, 25, 50, 125)),
+ i;
+ for (i = 0; i < a.length; i++) {
+ assert.equal(b.format(a[i][0]), a[i][1], a[i][0] + ' ---> ' + a[i][1]);
+ }
+ });
+
+ test('format ordinal', function (assert) {
+ assert.equal(moment([2011, 0, 1]).format('DDDo'), '1.', '1.');
+ assert.equal(moment([2011, 0, 2]).format('DDDo'), '2.', '2.');
+ assert.equal(moment([2011, 0, 3]).format('DDDo'), '3.', '3.');
+ assert.equal(moment([2011, 0, 4]).format('DDDo'), '4.', '4.');
+ assert.equal(moment([2011, 0, 5]).format('DDDo'), '5.', '5.');
+ assert.equal(moment([2011, 0, 6]).format('DDDo'), '6.', '6.');
+ assert.equal(moment([2011, 0, 7]).format('DDDo'), '7.', '7.');
+ assert.equal(moment([2011, 0, 8]).format('DDDo'), '8.', '8.');
+ assert.equal(moment([2011, 0, 9]).format('DDDo'), '9.', '9.');
+ assert.equal(moment([2011, 0, 10]).format('DDDo'), '10.', '10.');
+
+ assert.equal(moment([2011, 0, 11]).format('DDDo'), '11.', '11.');
+ assert.equal(moment([2011, 0, 12]).format('DDDo'), '12.', '12.');
+ assert.equal(moment([2011, 0, 13]).format('DDDo'), '13.', '13.');
+ assert.equal(moment([2011, 0, 14]).format('DDDo'), '14.', '14.');
+ assert.equal(moment([2011, 0, 15]).format('DDDo'), '15.', '15.');
+ assert.equal(moment([2011, 0, 16]).format('DDDo'), '16.', '16.');
+ assert.equal(moment([2011, 0, 17]).format('DDDo'), '17.', '17.');
+ assert.equal(moment([2011, 0, 18]).format('DDDo'), '18.', '18.');
+ assert.equal(moment([2011, 0, 19]).format('DDDo'), '19.', '19.');
+ assert.equal(moment([2011, 0, 20]).format('DDDo'), '20.', '20.');
+
+ assert.equal(moment([2011, 0, 21]).format('DDDo'), '21.', '21.');
+ assert.equal(moment([2011, 0, 22]).format('DDDo'), '22.', '22.');
+ assert.equal(moment([2011, 0, 23]).format('DDDo'), '23.', '23.');
+ assert.equal(moment([2011, 0, 24]).format('DDDo'), '24.', '24.');
+ assert.equal(moment([2011, 0, 25]).format('DDDo'), '25.', '25.');
+ assert.equal(moment([2011, 0, 26]).format('DDDo'), '26.', '26.');
+ assert.equal(moment([2011, 0, 27]).format('DDDo'), '27.', '27.');
+ assert.equal(moment([2011, 0, 28]).format('DDDo'), '28.', '28.');
+ assert.equal(moment([2011, 0, 29]).format('DDDo'), '29.', '29.');
+ assert.equal(moment([2011, 0, 30]).format('DDDo'), '30.', '30.');
+
+ assert.equal(moment([2011, 0, 31]).format('DDDo'), '31.', '31.');
+ });
+
+ test('format month', function (assert) {
+ var expected = 'tera’ jar wa’ jar wa’_tera’ jar cha’ jar cha’_tera’ jar wej jar wej_tera’ jar loS jar loS_tera’ jar vagh jar vagh_tera’ jar jav jar jav_tera’ jar Soch jar Soch_tera’ jar chorgh jar chorgh_tera’ jar Hut jar Hut_tera’ jar wa’maH jar wa’maH_tera’ jar wa’maH wa’ jar wa’maH wa’_tera’ jar wa’maH cha’ jar wa’maH cha’'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
+ }
+ });
+
+ test('format week', function (assert) {
+ var expected = 'lojmItjaj lojmItjaj lojmItjaj_DaSjaj DaSjaj DaSjaj_povjaj povjaj povjaj_ghItlhjaj ghItlhjaj ghItlhjaj_loghjaj loghjaj loghjaj_buqjaj buqjaj buqjaj_ghInjaj ghInjaj ghInjaj'.split('_'), i;
+ for (i = 0; i < expected.length; i++) {
+ assert.equal(moment([2011, 0, 2 + i]).format('dddd ddd dd'), expected[i], expected[i]);
+ }
+ });
+
+ test('from', function (assert) {
+ var start = moment([2007, 1, 28]);
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 44}), true), 'puS lup', '44 seconds = a few seconds');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 45}), true), 'wa’ tup', '45 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 89}), true), 'wa’ tup', '89 seconds = a minute');
+ assert.equal(start.from(moment([2007, 1, 28]).add({s: 90}), true), 'cha’ tup', '90 seconds = 2 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 44}), true), 'loSmaH loS tup', '44 minutes = 44 minutes');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 45}), true), 'wa’ rep', '45 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 89}), true), 'wa’ rep', '89 minutes = an hour');
+ assert.equal(start.from(moment([2007, 1, 28]).add({m: 90}), true), 'cha’ rep', '90 minutes = 2 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 5}), true), 'vagh rep', '5 hours = 5 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 21}), true), 'cha’maH wa’ rep', '21 hours = 21 hours');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 22}), true), 'wa’ jaj', '22 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 35}), true), 'wa’ jaj', '35 hours = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({h: 36}), true), 'cha’ jaj', '36 hours = 2 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 1}), true), 'wa’ jaj', '1 day = a day');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 5}), true), 'vagh jaj', '5 days = 5 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 25}), true), 'cha’maH vagh jaj', '25 days = 25 days');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 26}), true), 'wa’ jar', '26 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 30}), true), 'wa’ jar', '30 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 43}), true), 'wa’ jar', '43 days = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 46}), true), 'cha’ jar', '46 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 74}), true), 'cha’ jar', '75 days = 2 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 76}), true), 'wej jar', '76 days = 3 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 1}), true), 'wa’ jar', '1 month = a month');
+ assert.equal(start.from(moment([2007, 1, 28]).add({M: 5}), true), 'vagh jar', '5 months = 5 months');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 345}), true), 'wa’ DIS', '345 days = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({d: 548}), true), 'cha’ DIS', '548 days = 2 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 1}), true), 'wa’ DIS', '1 year = a year');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 5}), true), 'vagh DIS', '5 years = 5 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 112}), true), 'wa’vatlh wa’maH cha’ DIS', '112 years = 112 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 122}), true), 'wa’vatlh cha’maH cha’ DIS', '122 years = 122 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 213}), true), 'cha’vatlh wa’maH wej DIS', '213 years = 213 years');
+ assert.equal(start.from(moment([2007, 1, 28]).add({y: 223}), true), 'cha’vatlh cha’maH wej DIS', '223 years = 223 years');
+ });
+
+ test('suffix', function (assert) {
+ assert.equal(moment(30000).from(0), 'puS lup pIq', 'suffix');
+ assert.equal(moment(0).from(30000), 'puS lup ret', 'suffix');
+ });
+
+ test('now from now', function (assert) {
+ assert.equal(moment().fromNow(), 'puS lup ret', 'now from now should display as in the past');
+ });
+
+ test('fromNow', function (assert) {
+ assert.equal(moment().add({s: 30}).fromNow(), 'puS lup pIq', 'in a few seconds');
+ assert.equal(moment().add({h: 1}).fromNow(), 'wa’ rep pIq', 'in an hour');
+ assert.equal(moment().add({d: 5}).fromNow(), 'vagh leS', 'in 5 days');
+ assert.equal(moment().add({M: 2}).fromNow(), 'cha’ waQ', 'in 2 months');
+ assert.equal(moment().add({y: 1}).fromNow(), 'wa’ nem', 'in a year');
+ assert.equal(moment().add({s: -30}).fromNow(), 'puS lup ret', 'a few seconds ago');
+ assert.equal(moment().add({h: -1}).fromNow(), 'wa’ rep ret', 'an hour ago');
+ assert.equal(moment().add({d: -5}).fromNow(), 'vagh Hu’', '5 days ago');
+ assert.equal(moment().add({M: -2}).fromNow(), 'cha’ wen', '2 months ago');
+ assert.equal(moment().add({y: -1}).fromNow(), 'wa’ ben', 'a year ago');
+ });
+
+ test('calendar day', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+
+ assert.equal(moment(a).calendar(), 'DaHjaj 02:00', 'today at the same time');
+ assert.equal(moment(a).add({m: 25}).calendar(), 'DaHjaj 02:25', 'Now plus 25 min');
+ assert.equal(moment(a).add({h: 1}).calendar(), 'DaHjaj 03:00', 'Now plus 1 hour');
+ assert.equal(moment(a).add({d: 1}).calendar(), 'wa’leS 02:00', 'tomorrow at the same time');
+ assert.equal(moment(a).subtract({h: 1}).calendar(), 'DaHjaj 01:00', 'Now minus 1 hour');
+ assert.equal(moment(a).subtract({d: 1}).calendar(), 'wa’Hu’ 02:00', 'yesterday at the same time');
+ });
+
+ test('calendar next week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().add({d: i});
+ assert.equal(m.calendar(), m.format('LLL'), 'Today + ' + i + ' days current time');
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('LLL'), 'Today + ' + i + ' days beginning of day');
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('LLL'), 'Today + ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar last week', function (assert) {
+ var i, m;
+ for (i = 2; i < 7; i++) {
+ m = moment().subtract({d: i});
+ assert.equal(m.calendar(), m.format('LLL'), 'Today - ' + i + ' days current time');
+
+ m.hours(0).minutes(0).seconds(0).milliseconds(0);
+ assert.equal(m.calendar(), m.format('LLL'), 'Today - ' + i + ' days beginning of day');
+
+ m.hours(23).minutes(59).seconds(59).milliseconds(999);
+ assert.equal(m.calendar(), m.format('LLL'), 'Today - ' + i + ' days end of day');
+ }
+ });
+
+ test('calendar all else', function (assert) {
+ var weeksAgo = moment().subtract({w: 1}),
+ weeksFromNow = moment().add({w: 1});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '1 week ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 1 week');
+
+ weeksAgo = moment().subtract({w: 2});
+ weeksFromNow = moment().add({w: 2});
+
+ assert.equal(weeksAgo.calendar(), weeksAgo.format('L'), '2 weeks ago');
+ assert.equal(weeksFromNow.calendar(), weeksFromNow.format('L'), 'in 2 weeks');
+ });
+
+ test('weeks year starting sunday', function (assert) {
+ assert.equal(moment([2012, 0, 1]).week(), 52, 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).week(), 1, 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).week(), 1, 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).week(), 2, 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).week(), 2, 'Jan 15 2012 should be week 2');
+ });
+
+ test('weeks year starting monday', function (assert) {
+ assert.equal(moment([2007, 0, 1]).week(), 1, 'Jan 1 2007 should be week 1');
+ assert.equal(moment([2007, 0, 7]).week(), 1, 'Jan 7 2007 should be week 1');
+ assert.equal(moment([2007, 0, 8]).week(), 2, 'Jan 8 2007 should be week 2');
+ assert.equal(moment([2007, 0, 14]).week(), 2, 'Jan 14 2007 should be week 2');
+ assert.equal(moment([2007, 0, 15]).week(), 3, 'Jan 15 2007 should be week 3');
+ });
+
+ test('weeks year starting tuesday', function (assert) {
+ assert.equal(moment([2007, 11, 31]).week(), 1, 'Dec 31 2007 should be week 1');
+ assert.equal(moment([2008, 0, 1]).week(), 1, 'Jan 1 2008 should be week 1');
+ assert.equal(moment([2008, 0, 6]).week(), 1, 'Jan 6 2008 should be week 1');
+ assert.equal(moment([2008, 0, 7]).week(), 2, 'Jan 7 2008 should be week 2');
+ assert.equal(moment([2008, 0, 13]).week(), 2, 'Jan 13 2008 should be week 2');
+ assert.equal(moment([2008, 0, 14]).week(), 3, 'Jan 14 2008 should be week 3');
+ });
+
+ test('weeks year starting wednesday', function (assert) {
+ assert.equal(moment([2002, 11, 30]).week(), 1, 'Dec 30 2002 should be week 1');
+ assert.equal(moment([2003, 0, 1]).week(), 1, 'Jan 1 2003 should be week 1');
+ assert.equal(moment([2003, 0, 5]).week(), 1, 'Jan 5 2003 should be week 1');
+ assert.equal(moment([2003, 0, 6]).week(), 2, 'Jan 6 2003 should be week 2');
+ assert.equal(moment([2003, 0, 12]).week(), 2, 'Jan 12 2003 should be week 2');
+ assert.equal(moment([2003, 0, 13]).week(), 3, 'Jan 13 2003 should be week 3');
+ });
+
+ test('weeks year starting thursday', function (assert) {
+ assert.equal(moment([2008, 11, 29]).week(), 1, 'Dec 29 2008 should be week 1');
+ assert.equal(moment([2009, 0, 1]).week(), 1, 'Jan 1 2009 should be week 1');
+ assert.equal(moment([2009, 0, 4]).week(), 1, 'Jan 4 2009 should be week 1');
+ assert.equal(moment([2009, 0, 5]).week(), 2, 'Jan 5 2009 should be week 2');
+ assert.equal(moment([2009, 0, 11]).week(), 2, 'Jan 11 2009 should be week 2');
+ assert.equal(moment([2009, 0, 13]).week(), 3, 'Jan 12 2009 should be week 3');
+ });
+
+ test('weeks year starting friday', function (assert) {
+ assert.equal(moment([2009, 11, 28]).week(), 53, 'Dec 28 2009 should be week 53');
+ assert.equal(moment([2010, 0, 1]).week(), 53, 'Jan 1 2010 should be week 53');
+ assert.equal(moment([2010, 0, 3]).week(), 53, 'Jan 3 2010 should be week 53');
+ assert.equal(moment([2010, 0, 4]).week(), 1, 'Jan 4 2010 should be week 1');
+ assert.equal(moment([2010, 0, 10]).week(), 1, 'Jan 10 2010 should be week 1');
+ assert.equal(moment([2010, 0, 11]).week(), 2, 'Jan 11 2010 should be week 2');
+ });
+
+ test('weeks year starting saturday', function (assert) {
+ assert.equal(moment([2010, 11, 27]).week(), 52, 'Dec 27 2010 should be week 52');
+ assert.equal(moment([2011, 0, 1]).week(), 52, 'Jan 1 2011 should be week 52');
+ assert.equal(moment([2011, 0, 2]).week(), 52, 'Jan 2 2011 should be week 52');
+ assert.equal(moment([2011, 0, 3]).week(), 1, 'Jan 3 2011 should be week 1');
+ assert.equal(moment([2011, 0, 9]).week(), 1, 'Jan 9 2011 should be week 1');
+ assert.equal(moment([2011, 0, 10]).week(), 2, 'Jan 10 2011 should be week 2');
+ });
+
+ test('weeks year starting sunday formatted', function (assert) {
+ assert.equal(moment([2012, 0, 1]).format('w ww wo'), '52 52 52.', 'Jan 1 2012 should be week 52');
+ assert.equal(moment([2012, 0, 2]).format('w ww wo'), '1 01 1.', 'Jan 2 2012 should be week 1');
+ assert.equal(moment([2012, 0, 8]).format('w ww wo'), '1 01 1.', 'Jan 8 2012 should be week 1');
+ assert.equal(moment([2012, 0, 9]).format('w ww wo'), '2 02 2.', 'Jan 9 2012 should be week 2');
+ assert.equal(moment([2012, 0, 15]).format('w ww wo'), '2 02 2.', 'Jan 15 2012 should be week 2');
+ });
+
+ test('lenient ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing ' + i + ' date check');
+ }
+ });
+
+ test('lenient ordinal parsing of number', function (assert) {
+ var i, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ testMoment = moment('2014 01 ' + i, 'YYYY MM Do');
+ assert.equal(testMoment.year(), 2014,
+ 'lenient ordinal parsing of number ' + i + ' year check');
+ assert.equal(testMoment.month(), 0,
+ 'lenient ordinal parsing of number ' + i + ' month check');
+ assert.equal(testMoment.date(), i,
+ 'lenient ordinal parsing of number ' + i + ' date check');
+ }
+ });
+
+ test('strict ordinal parsing', function (assert) {
+ var i, ordinalStr, testMoment;
+ for (i = 1; i <= 31; ++i) {
+ ordinalStr = moment([2014, 0, i]).format('YYYY MM Do');
+ testMoment = moment(ordinalStr, 'YYYY MM Do', true);
+ assert.ok(testMoment.isValid(), 'strict ordinal parsing ' + i);
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
localeModule('uz');
test('parse', function (assert) {
- var tests = 'январь янв_февраль фев_март мар_апрель апр_май май_июнь июнь_июль июль_август авг_сентябрь сен_октябрь окт_ноябрь ноя_декабрь дек'.split('_'), i;
+ var tests = 'январ янв_феврал фев_март мар_апрел апр_май май_июн июн_июл июл_август авг_сентябр сен_октябр окт_ноябр ноя_декабр дек'.split('_'), i;
function equalTest(input, mmm, i) {
assert.equal(moment(input, mmm).month(), i, input + ' should be month ' + (i + 1));
}
test('format', function (assert) {
var a = [
- ['dddd, Do-MMMM YYYY, h:mm:ss', 'Якшанба, 14-февраль 2010, 3:25:50'],
+ ['dddd, Do-MMMM YYYY, h:mm:ss', 'Якшанба, 14-феврал 2010, 3:25:50'],
['ddd, h:mm', 'Якш, 3:25'],
- ['M Mo MM MMMM MMM', '2 2 02 февраль фев'],
+ ['M Mo MM MMMM MMM', '2 2 02 феврал фев'],
['YYYY YY', '2010 10'],
['D Do DD', '14 14 14'],
['d do dddd ddd dd', '0 0 Якшанба Якш Як'],
['[йилнинг] DDDo-[куни]', 'йилнинг 45-куни'],
['LTS', '15:25:50'],
['L', '14/02/2010'],
- ['LL', '14 февраль 2010'],
- ['LLL', '14 февраль 2010 15:25'],
- ['LLLL', '14 февраль 2010, Якшанба 15:25'],
+ ['LL', '14 феврал 2010'],
+ ['LLL', '14 феврал 2010 15:25'],
+ ['LLLL', '14 феврал 2010, Якшанба 15:25'],
['l', '14/2/2010'],
['ll', '14 фев 2010'],
['lll', '14 фев 2010 15:25'],
});
test('format month', function (assert) {
- var expected = 'январь янв_февраль фев_март мар_апрель апр_май май_июнь июн_июль июл_август авг_сентябрь сен_октябрь окт_ноябрь ноя_декабрь дек'.split('_'), i;
+ var expected = 'январ янв_феврал фев_март мар_апрел апр_май май_июн июн_июл июл_август авг_сентябр сен_октябр окт_ноябр ноя_декабр дек'.split('_'), i;
for (i = 0; i < expected.length; i++) {
assert.equal(moment([2011, i, 1]).format('MMMM MMM'), expected[i], expected[i]);
}
test('calendar day', function (assert) {
var a = moment().hours(2).minutes(0).seconds(0);
- assert.equal(moment(a).calendar(), 'Бугун соат 02:00 да', 'today at the same time');
+ assert.equal(moment(a).calendar(), 'Бугун соат 02:00 да', 'today at the same time');
assert.equal(moment(a).add({m: 25}).calendar(), 'Бугун соат 02:25 да', 'Now plus 25 min');
assert.equal(moment(a).add({h: 1}).calendar(), 'Бугун соат 03:00 да', 'Now plus 1 hour');
assert.equal(moment(a).add({d: 1}).calendar(), 'Эртага 02:00 да', 'tomorrow at the same time');
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
// Detect Safari bug and bail. Hours on 13th March 2011 are shifted
// with 1 ahead.
if (new Date(2011, 2, 13, 5, 0, 0).getHours() !== 5) {
- assert.expect(0);
+ expect(0);
return;
}
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ // These tests are for locale independent features
+ // locale dependent tests would be in locale test folder
+ module('calendar');
+
+ test('passing a function', function (assert) {
+ var a = moment().hours(2).minutes(0).seconds(0);
+ assert.equal(moment(a).calendar(null, {
+ 'sameDay': function () {
+ return 'h:mmA';
+ }
+ }), '2:00AM', 'should equate');
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
assert.equal(+moment(new Date(2010, 1, 14, 15, 25, 50, 125)), +moment([2010, 1, 14, 15, 25, 50, 125]), 'constructing with array === constructing with new Date()');
});
+ test('array with invalid arguments', function (assert) {
+ assert.ok(!moment([2010, null, null]).isValid(), '[2010, null, null]');
+ assert.ok(!moment([1945, null, null]).isValid(), '[1945, null, null] (pre-1970)');
+ });
+
test('array copying', function (assert) {
var importantArray = [2009, 11];
moment(importantArray);
['L', '09/02/1999'],
['l', '9/2/1999'],
['LL', 'September 2, 1999'],
- ['ll', 'Sep 2, 1999'],
+ ['ll', 'Sept 2, 1999'],
['LLL', 'September 2, 1999 12:30 AM'],
- ['lll', 'Sep 2, 1999 12:30 AM'],
+ ['lll', 'Sept 2, 1999 12:30 AM'],
['LLLL', 'Thursday, September 2, 1999 12:30 AM'],
- ['llll', 'Thu, Sep 2, 1999 12:30 AM']
+ ['llll', 'Thu, Sept 2, 1999 12:30 AM']
],
m,
i;
['MMDDYYYY', '12021999'],
['DDMMYYYY', '12021999'],
['YYYYMMDD', '19991202'],
- ['DDMMMYYYY', '10Sep2001']
+ ['DDMMMYYYY', '10Sept2001']
], i;
for (i = 0; i < a.length; i++) {
'-' + pad(-hourOffset) + ':' + pad(-minOffset),
tz2 = tz.replace(':', ''),
tz3 = tz2.slice(0, 3),
+ //Tz3 removes minutes digit so will break the tests when parsed if they all use the same minutes digit
+ minutesForTz3 = pad((4 + minOffset) % 60),
+ minute = pad(4 + minOffset),
+
formats = [
['2011-10-08', '2011-10-08T00:00:00.000' + tz],
['2011-10-08T18', '2011-10-08T18:00:00.000' + tz],
['2011-10-08T18:04:20' + tz, '2011-10-08T18:04:20.000' + tz],
['2011-10-08T18:04' + tz2, '2011-10-08T18:04:00.000' + tz],
['2011-10-08T18:04:20' + tz2, '2011-10-08T18:04:20.000' + tz],
- ['2011-10-08T18:04' + tz3, '2011-10-08T18:04:00.000' + tz],
- ['2011-10-08T18:04:20' + tz3, '2011-10-08T18:04:20.000' + tz],
+ ['2011-10-08T18:04' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011-10-08T18:04:20' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
['2011-10-08T18:04:20.1' + tz2, '2011-10-08T18:04:20.100' + tz],
['2011-10-08T18:04:20.11' + tz2, '2011-10-08T18:04:20.110' + tz],
['2011-10-08T18:04:20.111' + tz2, '2011-10-08T18:04:20.111' + tz],
['2011-10-08 18:04:20' + tz, '2011-10-08T18:04:20.000' + tz],
['2011-10-08 18:04' + tz2, '2011-10-08T18:04:00.000' + tz],
['2011-10-08 18:04:20' + tz2, '2011-10-08T18:04:20.000' + tz],
- ['2011-10-08 18:04' + tz3, '2011-10-08T18:04:00.000' + tz],
- ['2011-10-08 18:04:20' + tz3, '2011-10-08T18:04:20.000' + tz],
+ ['2011-10-08 18:04' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011-10-08 18:04:20' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
['2011-10-08 18:04:20.1' + tz2, '2011-10-08T18:04:20.100' + tz],
['2011-10-08 18:04:20.11' + tz2, '2011-10-08T18:04:20.110' + tz],
['2011-10-08 18:04:20.111' + tz2, '2011-10-08T18:04:20.111' + tz],
['2011-W40-6T18:04:20' + tz, '2011-10-08T18:04:20.000' + tz],
['2011-W40-6T18:04' + tz2, '2011-10-08T18:04:00.000' + tz],
['2011-W40-6T18:04:20' + tz2, '2011-10-08T18:04:20.000' + tz],
- ['2011-W40-6T18:04' + tz3, '2011-10-08T18:04:00.000' + tz],
- ['2011-W40-6T18:04:20' + tz3, '2011-10-08T18:04:20.000' + tz],
+ ['2011-W40-6T18:04' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011-W40-6T18:04:20' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
['2011-W40-6T18:04:20.1' + tz2, '2011-10-08T18:04:20.100' + tz],
['2011-W40-6T18:04:20.11' + tz2, '2011-10-08T18:04:20.110' + tz],
['2011-W40-6T18:04:20.111' + tz2, '2011-10-08T18:04:20.111' + tz],
['2011-W40-6 18:04:20' + tz, '2011-10-08T18:04:20.000' + tz],
['2011-W40-6 18:04' + tz2, '2011-10-08T18:04:00.000' + tz],
['2011-W40-6 18:04:20' + tz2, '2011-10-08T18:04:20.000' + tz],
- ['2011-W40-6 18:04' + tz3, '2011-10-08T18:04:00.000' + tz],
- ['2011-W40-6 18:04:20' + tz3, '2011-10-08T18:04:20.000' + tz],
+ ['2011-W40-6 18:04' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011-W40-6 18:04:20' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
['2011-W40-6 18:04:20.1' + tz2, '2011-10-08T18:04:20.100' + tz],
['2011-W40-6 18:04:20.11' + tz2, '2011-10-08T18:04:20.110' + tz],
['2011-W40-6 18:04:20.111' + tz2, '2011-10-08T18:04:20.111' + tz],
['2011-281T18:04:20' + tz, '2011-10-08T18:04:20.000' + tz],
['2011-281T18:04' + tz2, '2011-10-08T18:04:00.000' + tz],
['2011-281T18:04:20' + tz2, '2011-10-08T18:04:20.000' + tz],
- ['2011-281T18:04' + tz3, '2011-10-08T18:04:00.000' + tz],
- ['2011-281T18:04:20' + tz3, '2011-10-08T18:04:20.000' + tz],
+ ['2011-281T18:04' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011-281T18:04:20' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
['2011-281T18:04:20.1' + tz2, '2011-10-08T18:04:20.100' + tz],
['2011-281T18:04:20.11' + tz2, '2011-10-08T18:04:20.110' + tz],
['2011-281T18:04:20.111' + tz2, '2011-10-08T18:04:20.111' + tz],
['2011-281 18:04:20' + tz, '2011-10-08T18:04:20.000' + tz],
['2011-281 18:04' + tz2, '2011-10-08T18:04:00.000' + tz],
['2011-281 18:04:20' + tz2, '2011-10-08T18:04:20.000' + tz],
- ['2011-281 18:04' + tz3, '2011-10-08T18:04:00.000' + tz],
- ['2011-281 18:04:20' + tz3, '2011-10-08T18:04:20.000' + tz],
+ ['2011-281 18:04' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011-281 18:04:20' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
['2011-281 18:04:20.1' + tz2, '2011-10-08T18:04:20.100' + tz],
['2011-281 18:04:20.11' + tz2, '2011-10-08T18:04:20.110' + tz],
- ['2011-281 18:04:20.111' + tz2, '2011-10-08T18:04:20.111' + tz]
+ ['2011-281 18:04:20.111' + tz2, '2011-10-08T18:04:20.111' + tz],
+ ['20111008T18', '2011-10-08T18:00:00.000' + tz],
+ ['20111008T1804', '2011-10-08T18:04:00.000' + tz],
+ ['20111008T180420', '2011-10-08T18:04:20.000' + tz],
+ ['20111008T1804' + tz, '2011-10-08T18:04:00.000' + tz],
+ ['20111008T180420' + tz, '2011-10-08T18:04:20.000' + tz],
+ ['20111008T1804' + tz2, '2011-10-08T18:04:00.000' + tz],
+ ['20111008T180420' + tz2, '2011-10-08T18:04:20.000' + tz],
+ ['20111008T1804' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['20111008T180420' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
+ ['20111008T180420,1' + tz2, '2011-10-08T18:04:20.100' + tz],
+ ['20111008T180420,11' + tz2, '2011-10-08T18:04:20.110' + tz],
+ ['20111008T180420,111' + tz2, '2011-10-08T18:04:20.111' + tz],
+ ['20111008 18', '2011-10-08T18:00:00.000' + tz],
+ ['20111008 1804', '2011-10-08T18:04:00.000' + tz],
+ ['20111008 180420', '2011-10-08T18:04:20.000' + tz],
+ ['20111008 1804' + tz, '2011-10-08T18:04:00.000' + tz],
+ ['20111008 180420' + tz, '2011-10-08T18:04:20.000' + tz],
+ ['20111008 1804' + tz2, '2011-10-08T18:04:00.000' + tz],
+ ['20111008 180420' + tz2, '2011-10-08T18:04:20.000' + tz],
+ ['20111008 1804' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['20111008 180420' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
+ ['20111008 180420,1' + tz2, '2011-10-08T18:04:20.100' + tz],
+ ['20111008 180420,11' + tz2, '2011-10-08T18:04:20.110' + tz],
+ ['20111008 180420,111' + tz2, '2011-10-08T18:04:20.111' + tz],
+ ['2011W40', '2011-10-03T00:00:00.000' + tz],
+ ['2011W406', '2011-10-08T00:00:00.000' + tz],
+ ['2011W406T18', '2011-10-08T18:00:00.000' + tz],
+ ['2011W406T1804', '2011-10-08T18:04:00.000' + tz],
+ ['2011W406T180420', '2011-10-08T18:04:20.000' + tz],
+ ['2011W406 1804' + tz2, '2011-10-08T18:04:00.000' + tz],
+ ['2011W406T1804' + tz, '2011-10-08T18:04:00.000' + tz],
+ ['2011W406T180420' + tz, '2011-10-08T18:04:20.000' + tz],
+ ['2011W406T1804' + tz2, '2011-10-08T18:04:00.000' + tz],
+ ['2011W406T180420' + tz2, '2011-10-08T18:04:20.000' + tz],
+ ['2011W406T1804' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011W406T180420' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
+ ['2011W406T180420,1' + tz2, '2011-10-08T18:04:20.100' + tz],
+ ['2011W406T180420,11' + tz2, '2011-10-08T18:04:20.110' + tz],
+ ['2011W406T180420,111' + tz2, '2011-10-08T18:04:20.111' + tz],
+ ['2011W406 18', '2011-10-08T18:00:00.000' + tz],
+ ['2011W406 1804', '2011-10-08T18:04:00.000' + tz],
+ ['2011W406 180420', '2011-10-08T18:04:20.000' + tz],
+ ['2011W406 1804' + tz, '2011-10-08T18:04:00.000' + tz],
+ ['2011W406 180420' + tz, '2011-10-08T18:04:20.000' + tz],
+ ['2011W406 180420' + tz2, '2011-10-08T18:04:20.000' + tz],
+ ['2011W406 1804' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011W406 180420' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
+ ['2011W406 180420,1' + tz2, '2011-10-08T18:04:20.100' + tz],
+ ['2011W406 180420,11' + tz2, '2011-10-08T18:04:20.110' + tz],
+ ['2011W406 180420,111' + tz2, '2011-10-08T18:04:20.111' + tz],
+ ['2011281', '2011-10-08T00:00:00.000' + tz],
+ ['2011281T18', '2011-10-08T18:00:00.000' + tz],
+ ['2011281T1804', '2011-10-08T18:04:00.000' + tz],
+ ['2011281T180420', '2011-10-08T18:04:20.000' + tz],
+ ['2011281T1804' + tz, '2011-10-08T18:04:00.000' + tz],
+ ['2011281T180420' + tz, '2011-10-08T18:04:20.000' + tz],
+ ['2011281T1804' + tz2, '2011-10-08T18:04:00.000' + tz],
+ ['2011281T180420' + tz2, '2011-10-08T18:04:20.000' + tz],
+ ['2011281T1804' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011281T180420' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
+ ['2011281T180420,1' + tz2, '2011-10-08T18:04:20.100' + tz],
+ ['2011281T180420,11' + tz2, '2011-10-08T18:04:20.110' + tz],
+ ['2011281T180420,111' + tz2, '2011-10-08T18:04:20.111' + tz],
+ ['2011281 18', '2011-10-08T18:00:00.000' + tz],
+ ['2011281 1804', '2011-10-08T18:04:00.000' + tz],
+ ['2011281 180420', '2011-10-08T18:04:20.000' + tz],
+ ['2011281 1804' + tz, '2011-10-08T18:04:00.000' + tz],
+ ['2011281 180420' + tz, '2011-10-08T18:04:20.000' + tz],
+ ['2011281 1804' + tz2, '2011-10-08T18:04:00.000' + tz],
+ ['2011281 180420' + tz2, '2011-10-08T18:04:20.000' + tz],
+ ['2011281 1804' + tz3, '2011-10-08T18:' + minutesForTz3 + ':00.000' + tz],
+ ['2011281 180420' + tz3, '2011-10-08T18:' + minutesForTz3 + ':20.000' + tz],
+ ['2011281 180420,1' + tz2, '2011-10-08T18:04:20.100' + tz],
+ ['2011281 180420,11' + tz2, '2011-10-08T18:04:20.110' + tz],
+ ['2011281 180420,111' + tz2, '2011-10-08T18:04:20.111' + tz]
], i;
for (i = 0; i < formats.length; i++) {
- assert.equal(moment(formats[i][0]).format('YYYY-MM-DDTHH:mm:ss.SSSZ'), formats[i][1], 'moment should be able to parse ISO ' + formats[i][0]);
+ assert.equal(moment(formats[i][0]).format('YYYY-MM-DDTHH:mm:ss.SSSZ'),
+ formats[i][1], 'moment should be able to parse ISO ' + formats[i][0]);
+ assert.equal(moment(formats[i][0], moment.ISO_8601).format('YYYY-MM-DDTHH:mm:ss.SSSZ'),
+ formats[i][1], 'moment should be able to parse specified ISO ' + formats[i][0]);
+ assert.equal(moment(formats[i][0], moment.ISO_8601, true).format('YYYY-MM-DDTHH:mm:ss.SSSZ'),
+ formats[i][1], 'moment should be able to parse specified strict ISO ' + formats[i][0]);
}
});
+ test('non iso 8601 strings', function (assert) {
+ assert.ok(!moment('2015-10T10:15', moment.ISO_8601, true).isValid(), 'incomplete date with time');
+ assert.ok(!moment('2015-W10T10:15', moment.ISO_8601, true).isValid(), 'incomplete week date with time');
+ assert.ok(!moment('201510', moment.ISO_8601, true).isValid(), 'basic YYYYMM is not allowed');
+ assert.ok(!moment('2015W10T1015', moment.ISO_8601, true).isValid(), 'incomplete week date with time (basic)');
+ assert.ok(!moment('2015-10-08T1015', moment.ISO_8601, true).isValid(), 'mixing extended and basic format');
+ assert.ok(!moment('20151008T10:15', moment.ISO_8601, true).isValid(), 'mixing basic and extended format');
+ });
+
test('parsing iso week year/week/weekday', function (assert) {
assert.equal(moment.utc('2007-W01').format(), '2007-01-01T00:00:00+00:00', '2008 week 1 (1st Jan Mon)');
assert.equal(moment.utc('2008-W01').format(), '2007-12-31T00:00:00+00:00', '2008 week 1 (1st Jan Tue)');
assert.equal(moment(['2014', '7', '31']).isValid(), true, 'string array + isValid');
});
+ test('object with strings', function (assert) {
+ assert.equal(moment({year: '2014', month: '7', day: '31'}).isValid(), true, 'string object + isValid');
+ });
+
test('utc with array of formats', function (assert) {
assert.equal(moment.utc('2014-01-01', ['YYYY-MM-DD', 'YYYY-MM']).format(), '2014-01-01T00:00:00+00:00', 'moment.utc works with array of formats');
});
assert.equal(moment('123456789', 'SSSSSSSSS').millisecond(), 123);
});
+ test('hmm', function (assert) {
+ assert.equal(moment('123', 'hmm', true).format('HH:mm:ss'), '01:23:00', '123 with hmm');
+ assert.equal(moment('123a', 'hmmA', true).format('HH:mm:ss'), '01:23:00', '123a with hmmA');
+ assert.equal(moment('123p', 'hmmA', true).format('HH:mm:ss'), '13:23:00', '123p with hmmA');
+
+ assert.equal(moment('1234', 'hmm', true).format('HH:mm:ss'), '12:34:00', '1234 with hmm');
+ assert.equal(moment('1234a', 'hmmA', true).format('HH:mm:ss'), '00:34:00', '1234a with hmmA');
+ assert.equal(moment('1234p', 'hmmA', true).format('HH:mm:ss'), '12:34:00', '1234p with hmmA');
+
+ assert.equal(moment('12345', 'hmmss', true).format('HH:mm:ss'), '01:23:45', '12345 with hmmss');
+ assert.equal(moment('12345a', 'hmmssA', true).format('HH:mm:ss'), '01:23:45', '12345a with hmmssA');
+ assert.equal(moment('12345p', 'hmmssA', true).format('HH:mm:ss'), '13:23:45', '12345p with hmmssA');
+ assert.equal(moment('112345', 'hmmss', true).format('HH:mm:ss'), '11:23:45', '112345 with hmmss');
+ assert.equal(moment('112345a', 'hmmssA', true).format('HH:mm:ss'), '11:23:45', '112345a with hmmssA');
+ assert.equal(moment('112345p', 'hmmssA', true).format('HH:mm:ss'), '23:23:45', '112345p with hmmssA');
+
+ assert.equal(moment('023', 'Hmm', true).format('HH:mm:ss'), '00:23:00', '023 with Hmm');
+ assert.equal(moment('123', 'Hmm', true).format('HH:mm:ss'), '01:23:00', '123 with Hmm');
+ assert.equal(moment('1234', 'Hmm', true).format('HH:mm:ss'), '12:34:00', '1234 with Hmm');
+ assert.equal(moment('1534', 'Hmm', true).format('HH:mm:ss'), '15:34:00', '1234 with Hmm');
+ assert.equal(moment('12345', 'Hmmss', true).format('HH:mm:ss'), '01:23:45', '12345 with Hmmss');
+ assert.equal(moment('112345', 'Hmmss', true).format('HH:mm:ss'), '11:23:45', '112345 with Hmmss');
+ assert.equal(moment('172345', 'Hmmss', true).format('HH:mm:ss'), '17:23:45', '112345 with Hmmss');
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ module('creation data');
+
+ test('valid date', function (assert) {
+ var dat = moment('1992-10-22');
+ var orig = dat.creationData();
+
+ assert.equal(dat.isValid(), true, '1992-10-22 is valid');
+ assert.equal(orig.input, '1992-10-22', 'original input is not correct.');
+ assert.equal(orig.format, 'YYYY-MM-DD', 'original format is defined.');
+ assert.equal(orig.locale._abbr, 'en', 'default locale is en');
+ assert.equal(orig.isUTC, false, 'not a UTC date');
+ });
+
+ test('valid date at fr locale', function (assert) {
+ var dat = moment('1992-10-22', 'YYYY-MM-DD', 'fr');
+ var orig = dat.creationData();
+
+ assert.equal(orig.locale._abbr, 'fr', 'locale is fr');
+ });
+
+ test('valid date with formats', function (assert) {
+ var dat = moment('29-06-1995', ['MM-DD-YYYY', 'DD-MM', 'DD-MM-YYYY']);
+ var orig = dat.creationData();
+
+ assert.equal(orig.format, 'DD-MM-YYYY', 'DD-MM-YYYY format is defined.');
+ });
+
+ test('strict', function (assert) {
+ assert.ok(moment('2015-01-02', 'YYYY-MM-DD', true).creationData().strict, 'strict is true');
+ assert.ok(!moment('2015-01-02', 'YYYY-MM-DD').creationData().strict, 'strict is true');
+ });
+
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function hasOwnProp(a, b) {
+ return Object.prototype.hasOwnProperty.call(a, b);
+ }
+
+ function extend(a, b) {
+ for (var i in b) {
+ if (hasOwnProp(b, i)) {
+ a[i] = b[i];
+ }
+ }
+
+ if (hasOwnProp(b, 'toString')) {
+ a.toString = b.toString;
+ }
+
+ if (hasOwnProp(b, 'valueOf')) {
+ a.valueOf = b.valueOf;
+ }
+
+ return a;
+ }
+
+ var hookCallback;
+
+ function hooks () {
+ return hookCallback.apply(null, arguments);
+ }
+
+ // This is done to register the method called with moment()
+ // without creating circular dependencies.
+ function setHookCallback (callback) {
+ hookCallback = callback;
+ }
+
+ function isUndefined(input) {
+ return input === void 0;
+ }
+
+ function warn(msg) {
+ if (hooks.suppressDeprecationWarnings === false && !isUndefined(console) && console.warn) {
+ console.warn('Deprecation warning: ' + msg);
+ }
+ }
+
+ function deprecate(msg, fn) {
+ var firstTime = true;
+
+ return extend(function () {
+ if (firstTime) {
+ warn(msg + '\nArguments: ' + Array.prototype.slice.call(arguments).join(', ') + '\n' + (new Error()).stack);
+ firstTime = false;
+ }
+ return fn.apply(this, arguments);
+ }, fn);
+ }
+
+ var deprecations = {};
+
+ function deprecateSimple(name, msg) {
+ if (!deprecations[name]) {
+ warn(msg);
+ deprecations[name] = true;
+ }
+ }
+
+ hooks.suppressDeprecationWarnings = false;
+
+ module('deprecate');
+
+ test('deprecate', function (assert) {
+ var fn = function () {};
+ var deprecatedFn = deprecate('testing deprecation', fn);
+ deprecatedFn();
+
+ expect(0);
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
assert.equal(moment(1000).diff(500), 500, '1 second - 0.5 seconds = 500');
assert.equal(moment(0).diff(1000), -1000, '0 - 1 second = -1000');
assert.equal(moment(new Date(1000)).diff(1000), 0, '1 second - 1 second = 0');
- var oneHourDate = new Date(),
+ var oneHourDate = new Date(2015, 5, 21),
nowDate = new Date(+oneHourDate);
oneHourDate.setHours(oneHourDate.getHours() + 1);
assert.equal(moment(oneHourDate).diff(nowDate), 60 * 60 * 1000, '1 hour from now = 3600000');
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
assert.equal(moment.duration('1.02:03:04.9999999').minutes(), 3, '3 minutes');
assert.equal(moment.duration('1.02:03:04.9999999').seconds(), 4, '4 seconds');
assert.equal(moment.duration('1.02:03:04.9999999').milliseconds(), 999, '999 milliseconds');
+
+ assert.equal(moment.duration('1 02:03:04.9999999').years(), 0, '0 years');
+ assert.equal(moment.duration('1 02:03:04.9999999').days(), 1, '1 day');
+ assert.equal(moment.duration('1 02:03:04.9999999').hours(), 2, '2 hours');
+ assert.equal(moment.duration('1 02:03:04.9999999').minutes(), 3, '3 minutes');
+ assert.equal(moment.duration('1 02:03:04.9999999').seconds(), 4, '4 seconds');
+ assert.equal(moment.duration('1 02:03:04.9999999').milliseconds(), 999, '999 milliseconds');
});
test('instatiation from serialized C# TimeSpan without days', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
assert.equal(moment([2000, 0, 2]).format('[Q]Q-YYYY'), 'Q1-2000', 'Jan 2 2000 is Q1');
});
+ test('quarter ordinal formats', function (assert) {
+ assert.equal(moment([1985, 1, 4]).format('Qo'), '1st', 'Feb 4 1985 is 1st quarter');
+ assert.equal(moment([2029, 8, 18]).format('Qo'), '3rd', 'Sep 18 2029 is 3rd quarter');
+ assert.equal(moment([2013, 3, 24]).format('Qo'), '2nd', 'Apr 24 2013 is 2nd quarter');
+ assert.equal(moment([2015, 2, 5]).format('Qo'), '1st', 'Mar 5 2015 is 1st quarter');
+ assert.equal(moment([1970, 0, 2]).format('Qo'), '1st', 'Jan 2 1970 is 1st quarter');
+ assert.equal(moment([2001, 11, 12]).format('Qo'), '4th', 'Dec 12 2001 is 4th quarter');
+ assert.equal(moment([2000, 0, 2]).format('Qo [quarter] YYYY'), '1st quarter 2000', 'Jan 2 2000 is 1st quarter');
+ });
+
test('full expanded format is returned from abbreviated formats', function (assert) {
- var locales = '';
+ function forEach(ar, fn) {
+ if (ar.forEach) {
+ return ar.forEach(fn);
+ } else {
+ // IE8
+ for (var i = 0; i < ar.length; i += 1) {
+ fn(ar[i]);
+ }
+ }
+ }
+ function objectKeys(obj) {
+ if (Object.keys) {
+ return Object.keys(obj);
+ } else {
+ // IE8
+ var res = [], i;
+ for (i in obj) {
+ if (obj.hasOwnProperty(i)) {
+ res.push(i);
+ }
+ }
+ return res;
+ }
+ }
- locales += 'af ar-ma ar-sa ar-tn ar az be bg bn bo br bs';
- locales += 'ca cs cv cy da de-at de el en-au en-ca en-gb';
- locales += 'en eo es et eu fa fi fo fr-ca fr fy gl he hi';
- locales += 'hr hu hy-am id is it ja jv ka km ko lb lt lv';
- locales += 'me mk ml mr ms-my my nb ne nl nn pl pt-rb pt';
- locales += 'ro ru si sk sl sq sr-cyrl sr sv ta th tl-ph';
- locales += 'tr tzm-latn tzm uk uz vi zh-cn zh-tw';
+ var locales =
+ 'ar-sa ar-tn ar az be bg bn bo br bs ca cs cv cy da de-at de dv el ' +
+ 'en-au en-ca en-gb en-ie en-nz eo es et eu fa fi fo fr-ca fr-ch fr fy ' +
+ 'gd gl he hi hr hu hy-am id is it ja jv ka kk km ko lb lo lt lv me mk ml ' +
+ 'mr ms-my ms my nb ne nl nn pl pt-br pt ro ru se si sk sl sq sr-cyrl ' +
+ 'sr sv sw ta te th tl-ph tlh tr tzl tzm-latn tzm uk uz vi zh-cn zh-tw';
- locales.split(' ').forEach(function (locale) {
+ forEach(locales.split(' '), function (locale) {
var data, tokens;
data = moment().locale(locale).localeData()._longDateFormat;
- tokens = Object.keys(data);
- tokens.forEach(function (token) {
+ tokens = objectKeys(data);
+ forEach(tokens, function (token) {
// Check each format string to make sure it does not contain any
// tokens that need to be expanded.
- tokens.forEach(function (i) {
+ forEach(tokens, function (i) {
// strip escaped sequences
var format = data[i].replace(/(\[[^\]]*\])/g, '');
assert.equal(false, !!~format.indexOf(token), 'locale ' + locale + ' contains ' + token + ' in ' + i);
assert.equal(m.format('SSSSSSSSS'), '123000000');
});
+ test('hmm and hmmss', function (assert) {
+ assert.equal(moment('12:34:56', 'HH:mm:ss').format('hmm'), '1234');
+ assert.equal(moment('01:34:56', 'HH:mm:ss').format('hmm'), '134');
+ assert.equal(moment('13:34:56', 'HH:mm:ss').format('hmm'), '134');
+
+ assert.equal(moment('12:34:56', 'HH:mm:ss').format('hmmss'), '123456');
+ assert.equal(moment('01:34:56', 'HH:mm:ss').format('hmmss'), '13456');
+ assert.equal(moment('13:34:56', 'HH:mm:ss').format('hmmss'), '13456');
+ });
+
+ test('Hmm and Hmmss', function (assert) {
+ assert.equal(moment('12:34:56', 'HH:mm:ss').format('Hmm'), '1234');
+ assert.equal(moment('01:34:56', 'HH:mm:ss').format('Hmm'), '134');
+ assert.equal(moment('13:34:56', 'HH:mm:ss').format('Hmm'), '1334');
+
+ assert.equal(moment('12:34:56', 'HH:mm:ss').format('Hmmss'), '123456');
+ assert.equal(moment('01:34:56', 'HH:mm:ss').format('Hmmss'), '13456');
+ assert.equal(moment('08:34:56', 'HH:mm:ss').format('Hmmss'), '83456');
+ assert.equal(moment('18:34:56', 'HH:mm:ss').format('Hmmss'), '183456');
+ });
+
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ module('instanceof');
+
+ test('instanceof', function (assert) {
+ var mm = moment([2010, 0, 1]);
+
+ var extend = function (a, b) {
+ var i;
+ for (i in b) {
+ a[i] = b[i];
+ }
+ return a;
+ };
+
+ assert.equal(moment() instanceof moment, true, 'simple moment object');
+ assert.equal(extend({}, moment()) instanceof moment, false, 'extended moment object');
+ assert.equal(moment(null) instanceof moment, true, 'invalid moment object');
+
+ assert.equal(new Date() instanceof moment, false, 'date object is not moment object');
+ assert.equal(Object instanceof moment, false, 'Object is not moment object');
+ assert.equal('foo' instanceof moment, false, 'string is not moment object');
+ assert.equal(1 instanceof moment, false, 'number is not moment object');
+ assert.equal(NaN instanceof moment, false, 'NaN is not moment object');
+ assert.equal(null instanceof moment, false, 'null is not moment object');
+ assert.equal(undefined instanceof moment, false, 'undefined is not moment object');
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
assert.ok(isNaN(m.valueOf()));
});
+ test('invalid operations', function (assert) {
+ var invalids = [
+ moment.invalid(),
+ moment('xyz', 'l'),
+ moment('2015-01-35', 'YYYY-MM-DD'),
+ moment('2015-01-25 a', 'YYYY-MM-DD', true)
+ ],
+ i,
+ invalid,
+ valid = moment();
+
+ for (i = 0; i < invalids.length; ++i) {
+ invalid = invalids[i];
+
+ assert.ok(!invalid.clone().add(5, 'hours').isValid(), 'invalid.add is invalid');
+ assert.equal(invalid.calendar(), 'Invalid date', 'invalid.calendar is \'Invalid date\'');
+ assert.ok(!invalid.clone().isValid(), 'invalid.clone is invalid');
+ assert.ok(isNaN(invalid.diff(valid)), 'invalid.diff(valid) is NaN');
+ assert.ok(isNaN(valid.diff(invalid)), 'valid.diff(invalid) is NaN');
+ assert.ok(isNaN(invalid.diff(invalid)), 'invalid.diff(invalid) is NaN');
+ assert.ok(!invalid.clone().endOf('month').isValid(), 'invalid.endOf is invalid');
+ assert.equal(invalid.format(), 'Invalid date', 'invalid.format is \'Invalid date\'');
+ assert.equal(invalid.from(), 'Invalid date');
+ assert.equal(invalid.from(valid), 'Invalid date');
+ assert.equal(valid.from(invalid), 'Invalid date');
+ assert.equal(invalid.fromNow(), 'Invalid date');
+ assert.equal(invalid.to(), 'Invalid date');
+ assert.equal(invalid.to(valid), 'Invalid date');
+ assert.equal(valid.to(invalid), 'Invalid date');
+ assert.equal(invalid.toNow(), 'Invalid date');
+ assert.ok(isNaN(invalid.get('year')), 'invalid.get is NaN');
+ // TODO invalidAt
+ assert.ok(!invalid.isAfter(valid));
+ assert.ok(!valid.isAfter(invalid));
+ assert.ok(!invalid.isAfter(invalid));
+ assert.ok(!invalid.isBefore(valid));
+ assert.ok(!valid.isBefore(invalid));
+ assert.ok(!invalid.isBefore(invalid));
+ assert.ok(!invalid.isBetween(valid, valid));
+ assert.ok(!valid.isBetween(invalid, valid));
+ assert.ok(!valid.isBetween(valid, invalid));
+ assert.ok(!invalid.isSame(invalid));
+ assert.ok(!invalid.isSame(valid));
+ assert.ok(!valid.isSame(invalid));
+ assert.ok(!invalid.isValid());
+ assert.equal(invalid.locale(), 'en');
+ assert.equal(invalid.localeData()._abbr, 'en');
+ assert.ok(!invalid.clone().max(valid).isValid());
+ assert.ok(!valid.clone().max(invalid).isValid());
+ assert.ok(!invalid.clone().max(invalid).isValid());
+ assert.ok(!invalid.clone().min(valid).isValid());
+ assert.ok(!valid.clone().min(invalid).isValid());
+ assert.ok(!invalid.clone().min(invalid).isValid());
+ assert.ok(!moment.min(invalid, valid).isValid());
+ assert.ok(!moment.min(valid, invalid).isValid());
+ assert.ok(!moment.max(invalid, valid).isValid());
+ assert.ok(!moment.max(valid, invalid).isValid());
+ assert.ok(!invalid.clone().set('year', 2005).isValid());
+ assert.ok(!invalid.clone().startOf('month').isValid());
+
+ assert.ok(!invalid.clone().subtract(5, 'days').isValid());
+ assert.deepEqual(invalid.toArray(), [NaN, NaN, NaN, NaN, NaN, NaN, NaN]);
+ assert.deepEqual(invalid.toObject(), {
+ years: NaN,
+ months: NaN,
+ date: NaN,
+ hours: NaN,
+ minutes: NaN,
+ seconds: NaN,
+ milliseconds: NaN
+ });
+ assert.ok(moment.isDate(invalid.toDate()));
+ assert.ok(isNaN(invalid.toDate().valueOf()));
+ assert.equal(invalid.toJSON(), 'null');
+ assert.equal(invalid.toString(), 'Invalid date');
+ assert.ok(isNaN(invalid.unix()));
+ assert.ok(isNaN(invalid.valueOf()));
+
+ assert.ok(isNaN(invalid.year()));
+ assert.ok(isNaN(invalid.weekYear()));
+ assert.ok(isNaN(invalid.isoWeekYear()));
+ assert.ok(isNaN(invalid.quarter()));
+ assert.ok(isNaN(invalid.quarters()));
+ assert.ok(isNaN(invalid.month()));
+ assert.ok(isNaN(invalid.daysInMonth()));
+ assert.ok(isNaN(invalid.week()));
+ assert.ok(isNaN(invalid.weeks()));
+ assert.ok(isNaN(invalid.isoWeek()));
+ assert.ok(isNaN(invalid.isoWeeks()));
+ assert.ok(isNaN(invalid.weeksInYear()));
+ assert.ok(isNaN(invalid.isoWeeksInYear()));
+ assert.ok(isNaN(invalid.date()));
+ assert.ok(isNaN(invalid.day()));
+ assert.ok(isNaN(invalid.days()));
+ assert.ok(isNaN(invalid.weekday()));
+ assert.ok(isNaN(invalid.isoWeekday()));
+ assert.ok(isNaN(invalid.dayOfYear()));
+ assert.ok(isNaN(invalid.hour()));
+ assert.ok(isNaN(invalid.hours()));
+ assert.ok(isNaN(invalid.minute()));
+ assert.ok(isNaN(invalid.minutes()));
+ assert.ok(isNaN(invalid.second()));
+ assert.ok(isNaN(invalid.seconds()));
+ assert.ok(isNaN(invalid.millisecond()));
+ assert.ok(isNaN(invalid.milliseconds()));
+ assert.ok(isNaN(invalid.utcOffset()));
+
+ assert.ok(!invalid.clone().year(2001).isValid());
+ assert.ok(!invalid.clone().weekYear(2001).isValid());
+ assert.ok(!invalid.clone().isoWeekYear(2001).isValid());
+ assert.ok(!invalid.clone().quarter(1).isValid());
+ assert.ok(!invalid.clone().quarters(1).isValid());
+ assert.ok(!invalid.clone().month(1).isValid());
+ assert.ok(!invalid.clone().week(1).isValid());
+ assert.ok(!invalid.clone().weeks(1).isValid());
+ assert.ok(!invalid.clone().isoWeek(1).isValid());
+ assert.ok(!invalid.clone().isoWeeks(1).isValid());
+ assert.ok(!invalid.clone().date(1).isValid());
+ assert.ok(!invalid.clone().day(1).isValid());
+ assert.ok(!invalid.clone().days(1).isValid());
+ assert.ok(!invalid.clone().weekday(1).isValid());
+ assert.ok(!invalid.clone().isoWeekday(1).isValid());
+ assert.ok(!invalid.clone().dayOfYear(1).isValid());
+ assert.ok(!invalid.clone().hour(1).isValid());
+ assert.ok(!invalid.clone().hours(1).isValid());
+ assert.ok(!invalid.clone().minute(1).isValid());
+ assert.ok(!invalid.clone().minutes(1).isValid());
+ assert.ok(!invalid.clone().second(1).isValid());
+ assert.ok(!invalid.clone().seconds(1).isValid());
+ assert.ok(!invalid.clone().millisecond(1).isValid());
+ assert.ok(!invalid.clone().milliseconds(1).isValid());
+ assert.ok(!invalid.clone().utcOffset(1).isValid());
+
+ assert.ok(!invalid.clone().utc().isValid());
+ assert.ok(!invalid.clone().local().isValid());
+ assert.ok(!invalid.clone().parseZone('05:30').isValid());
+ assert.ok(!invalid.hasAlignedHourOffset());
+ assert.ok(!invalid.isDST());
+ assert.ok(!invalid.isDSTShifted());
+ assert.ok(!invalid.isLocal());
+ assert.ok(!invalid.isUtcOffset());
+ assert.ok(!invalid.isUtc());
+ assert.ok(!invalid.isUTC());
+
+ assert.ok(!invalid.isLeapYear());
+
+ assert.equal(moment.duration({from: invalid, to: valid}).asMilliseconds(), 0);
+ assert.equal(moment.duration({from: valid, to: invalid}).asMilliseconds(), 0);
+ assert.equal(moment.duration({from: invalid, to: invalid}).asMilliseconds(), 0);
+ }
+ });
+
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ module('is moment');
+
+ test('is moment object', function (assert) {
+ var MyObj = function () {},
+ extend = function (a, b) {
+ var i;
+ for (i in b) {
+ a[i] = b[i];
+ }
+ return a;
+ };
+ MyObj.prototype.toDate = function () {
+ return new Date();
+ };
+
+ assert.ok(moment.isMoment(moment()), 'simple moment object');
+ assert.ok(moment.isMoment(moment(null)), 'invalid moment object');
+ assert.ok(moment.isMoment(extend({}, moment())), 'externally cloned moments are moments');
+ assert.ok(moment.isMoment(extend({}, moment.utc())), 'externally cloned utc moments are moments');
+
+ assert.ok(!moment.isMoment(new MyObj()), 'myObj is not moment object');
+ assert.ok(!moment.isMoment(moment), 'moment function is not moment object');
+ assert.ok(!moment.isMoment(new Date()), 'date object is not moment object');
+ assert.ok(!moment.isMoment(Object), 'Object is not moment object');
+ assert.ok(!moment.isMoment('foo'), 'string is not moment object');
+ assert.ok(!moment.isMoment(1), 'number is not moment object');
+ assert.ok(!moment.isMoment(NaN), 'NaN is not moment object');
+ assert.ok(!moment.isMoment(null), 'null is not moment object');
+ assert.ok(!moment.isMoment(undefined), 'undefined is not moment object');
+ });
+
+ test('is moment with hacked hasOwnProperty', function (assert) {
+ var obj = {};
+ // HACK to suppress jshint warning about bad property name
+ obj['hasOwnMoney'.replace('Money', 'Property')] = function () {
+ return true;
+ };
+
+ assert.ok(!moment.isMoment(obj), 'isMoment works even if passed object has a wrong hasOwnProperty implementation (ie8)');
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ module('is same');
+
+ test('is same without units', function (assert) {
+ var m = moment(new Date(2011, 3, 2, 3, 4, 5, 10)), mCopy = moment(m);
+ assert.equal(m.isSame(moment(new Date(2012, 3, 2, 3, 5, 5, 10))), false, 'year is later');
+ assert.equal(m.isSame(moment(new Date(2010, 3, 2, 3, 3, 5, 10))), false, 'year is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 4, 2, 3, 4, 5, 10))), false, 'month is later');
+ assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 4, 5, 10))), false, 'month is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 3, 3, 4, 5, 10))), false, 'day is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 1, 3, 4, 5, 10))), false, 'day is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 4, 4, 5, 10))), false, 'hour is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 2, 4, 5, 10))), false, 'hour is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 5, 5, 10))), false, 'minute is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 3, 5, 10))), false, 'minute is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 6, 10))), false, 'second is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 4, 11))), false, 'second is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 10))), true, 'millisecond match');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 11))), false, 'millisecond is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 9))), false, 'millisecond is earlier');
+ assert.equal(m.isSame(m), true, 'moments are the same as themselves');
+ assert.equal(+m, +mCopy, 'isSame second should not change moment');
+ });
+
+ test('is same year', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSame(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'year'), true, 'year match');
+ assert.equal(m.isSame(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'years'), true, 'plural should work');
+ assert.equal(m.isSame(moment(new Date(2012, 5, 6, 7, 8, 9, 10)), 'year'), false, 'year mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 0, 1, 0, 0, 0, 0)), 'year'), true, 'exact start of year');
+ assert.equal(m.isSame(moment(new Date(2011, 11, 31, 23, 59, 59, 999)), 'year'), true, 'exact end of year');
+ assert.equal(m.isSame(moment(new Date(2012, 0, 1, 0, 0, 0, 0)), 'year'), false, 'start of next year');
+ assert.equal(m.isSame(moment(new Date(2010, 11, 31, 23, 59, 59, 999)), 'year'), false, 'end of previous year');
+ assert.equal(m.isSame(m, 'year'), true, 'same moments are in the same year');
+ assert.equal(+m, +mCopy, 'isSame year should not change moment');
+ });
+
+ test('is same month', function (assert) {
+ var m = moment(new Date(2011, 2, 3, 4, 5, 6, 7)), mCopy = moment(m);
+ assert.equal(m.isSame(moment(new Date(2011, 2, 6, 7, 8, 9, 10)), 'month'), true, 'month match');
+ assert.equal(m.isSame(moment(new Date(2011, 2, 6, 7, 8, 9, 10)), 'months'), true, 'plural should work');
+ assert.equal(m.isSame(moment(new Date(2012, 2, 6, 7, 8, 9, 10)), 'month'), false, 'year mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'month'), false, 'month mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 2, 1, 0, 0, 0, 0)), 'month'), true, 'exact start of month');
+ assert.equal(m.isSame(moment(new Date(2011, 2, 31, 23, 59, 59, 999)), 'month'), true, 'exact end of month');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 1, 0, 0, 0, 0)), 'month'), false, 'start of next month');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 27, 23, 59, 59, 999)), 'month'), false, 'end of previous month');
+ assert.equal(m.isSame(m, 'month'), true, 'same moments are in the same month');
+ assert.equal(+m, +mCopy, 'isSame month should not change moment');
+ });
+
+ test('is same day', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 7, 8, 9, 10)), 'day'), true, 'day match');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 7, 8, 9, 10)), 'days'), true, 'plural should work');
+ assert.equal(m.isSame(moment(new Date(2012, 1, 2, 7, 8, 9, 10)), 'day'), false, 'year mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 2, 2, 7, 8, 9, 10)), 'day'), false, 'month mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 3, 7, 8, 9, 10)), 'day'), false, 'day mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 0, 0, 0, 0)), 'day'), true, 'exact start of day');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 23, 59, 59, 999)), 'day'), true, 'exact end of day');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 3, 0, 0, 0, 0)), 'day'), false, 'start of next day');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 1, 23, 59, 59, 999)), 'day'), false, 'end of previous day');
+ assert.equal(m.isSame(m, 'day'), true, 'same moments are in the same day');
+ assert.equal(+m, +mCopy, 'isSame day should not change moment');
+ });
+
+ test('is same hour', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 8, 9, 10)), 'hour'), true, 'hour match');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 8, 9, 10)), 'hours'), true, 'plural should work');
+ assert.equal(m.isSame(moment(new Date(2012, 1, 2, 3, 8, 9, 10)), 'hour'), false, 'year mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 8, 9, 10)), 'hour'), false, 'month mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 3, 3, 8, 9, 10)), 'hour'), false, 'day mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 4, 8, 9, 10)), 'hour'), false, 'hour mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 0, 0, 0)), 'hour'), true, 'exact start of hour');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 59, 59, 999)), 'hour'), true, 'exact end of hour');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 4, 0, 0, 0)), 'hour'), false, 'start of next hour');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 2, 59, 59, 999)), 'hour'), false, 'end of previous hour');
+ assert.equal(m.isSame(m, 'hour'), true, 'same moments are in the same hour');
+ assert.equal(+m, +mCopy, 'isSame hour should not change moment');
+ });
+
+ test('is same minute', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 9, 10)), 'minute'), true, 'minute match');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 9, 10)), 'minutes'), true, 'plural should work');
+ assert.equal(m.isSame(moment(new Date(2012, 1, 2, 3, 4, 9, 10)), 'minute'), false, 'year mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 4, 9, 10)), 'minute'), false, 'month mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 3, 3, 4, 9, 10)), 'minute'), false, 'day mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 4, 4, 9, 10)), 'minute'), false, 'hour mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 5, 9, 10)), 'minute'), false, 'minute mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 0, 0)), 'minute'), true, 'exact start of minute');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 59, 999)), 'minute'), true, 'exact end of minute');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 5, 0, 0)), 'minute'), false, 'start of next minute');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 3, 59, 999)), 'minute'), false, 'end of previous minute');
+ assert.equal(m.isSame(m, 'minute'), true, 'same moments are in the same minute');
+ assert.equal(+m, +mCopy, 'isSame minute should not change moment');
+ });
+
+ test('is same second', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 5, 10)), 'second'), true, 'second match');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 5, 10)), 'seconds'), true, 'plural should work');
+ assert.equal(m.isSame(moment(new Date(2012, 1, 2, 3, 4, 5, 10)), 'second'), false, 'year mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 4, 5, 10)), 'second'), false, 'month mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 3, 3, 4, 5, 10)), 'second'), false, 'day mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 4, 4, 5, 10)), 'second'), false, 'hour mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 5, 5, 10)), 'second'), false, 'minute mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 6, 10)), 'second'), false, 'second mismatch');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 5, 0)), 'second'), true, 'exact start of second');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 5, 999)), 'second'), true, 'exact end of second');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 6, 0)), 'second'), false, 'start of next second');
+ assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 4, 999)), 'second'), false, 'end of previous second');
+ assert.equal(m.isSame(m, 'second'), true, 'same moments are in the same second');
+ assert.equal(+m, +mCopy, 'isSame second should not change moment');
+ });
+
+ test('is same millisecond', function (assert) {
+ var m = moment(new Date(2011, 3, 2, 3, 4, 5, 10)), mCopy = moment(m);
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 10)), 'millisecond'), true, 'millisecond match');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 10)), 'milliseconds'), true, 'plural should work');
+ assert.equal(m.isSame(moment(new Date(2012, 3, 2, 3, 4, 5, 10)), 'millisecond'), false, 'year is later');
+ assert.equal(m.isSame(moment(new Date(2010, 3, 2, 3, 4, 5, 10)), 'millisecond'), false, 'year is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 4, 2, 3, 4, 5, 10)), 'millisecond'), false, 'month is later');
+ assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 4, 5, 10)), 'millisecond'), false, 'month is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 3, 3, 4, 5, 10)), 'millisecond'), false, 'day is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 1, 1, 4, 5, 10)), 'millisecond'), false, 'day is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 4, 4, 5, 10)), 'millisecond'), false, 'hour is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 1, 4, 1, 5, 10)), 'millisecond'), false, 'hour is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 5, 5, 10)), 'millisecond'), false, 'minute is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 3, 5, 10)), 'millisecond'), false, 'minute is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 6, 10)), 'millisecond'), false, 'second is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 4, 5)), 'millisecond'), false, 'second is earlier');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 6, 11)), 'millisecond'), false, 'millisecond is later');
+ assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 4, 9)), 'millisecond'), false, 'millisecond is earlier');
+ assert.equal(m.isSame(m, 'millisecond'), true, 'same moments are in the same millisecond');
+ assert.equal(+m, +mCopy, 'isSame millisecond should not change moment');
+ });
+
+ test('is same with utc offset moments', function (assert) {
+ assert.ok(moment.parseZone('2013-02-01T-05:00').isSame(moment('2013-02-01'), 'year'), 'zoned vs local moment');
+ assert.ok(moment('2013-02-01').isSame(moment('2013-02-01').utcOffset('-05:00'), 'year'), 'local vs zoned moment');
+ assert.ok(moment.parseZone('2013-02-01T-05:00').isSame(moment.parseZone('2013-02-01T-06:30'), 'year'),
+ 'zoned vs (differently) zoned moment');
+ });
+
+ test('is same with invalid moments', function (assert) {
+ assert.equal(moment.invalid().isSame(moment.invalid()), false, 'invalid moments are not considered equal');
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- module('is moment');
-
- test('is moment object', function (assert) {
- var MyObj = function () {},
- extend = function (a, b) {
- var i;
- for (i in b) {
- a[i] = b[i];
- }
- return a;
- };
- MyObj.prototype.toDate = function () {
- return new Date();
- };
-
- assert.ok(moment.isMoment(moment()), 'simple moment object');
- assert.ok(moment.isMoment(moment(null)), 'invalid moment object');
- assert.ok(moment.isMoment(extend({}, moment())), 'externally cloned moments are moments');
- assert.ok(moment.isMoment(extend({}, moment.utc())), 'externally cloned utc moments are moments');
+ module('is same or after');
- assert.ok(!moment.isMoment(new MyObj()), 'myObj is not moment object');
- assert.ok(!moment.isMoment(moment), 'moment function is not moment object');
- assert.ok(!moment.isMoment(new Date()), 'date object is not moment object');
- assert.ok(!moment.isMoment(Object), 'Object is not moment object');
- assert.ok(!moment.isMoment('foo'), 'string is not moment object');
- assert.ok(!moment.isMoment(1), 'number is not moment object');
- assert.ok(!moment.isMoment(NaN), 'NaN is not moment object');
- assert.ok(!moment.isMoment(null), 'null is not moment object');
- assert.ok(!moment.isMoment(undefined), 'undefined is not moment object');
+ test('is same or after without units', function (assert) {
+ var m = moment(new Date(2011, 3, 2, 3, 4, 5, 10)), mCopy = moment(m);
+ assert.equal(m.isSameOrAfter(moment(new Date(2012, 3, 2, 3, 5, 5, 10))), false, 'year is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 3, 2, 3, 3, 5, 10))), true, 'year is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 4, 2, 3, 4, 5, 10))), false, 'month is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 2, 3, 4, 5, 10))), true, 'month is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 3, 3, 4, 5, 10))), false, 'day is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 1, 3, 4, 5, 10))), true, 'day is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 4, 4, 5, 10))), false, 'hour is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 2, 4, 5, 10))), true, 'hour is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 5, 5, 10))), false, 'minute is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 3, 5, 10))), true, 'minute is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 6, 10))), false, 'second is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 4, 11))), true, 'second is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 5, 10))), true, 'millisecond match');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 5, 11))), false, 'millisecond is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 5, 9))), true, 'millisecond is earlier');
+ assert.equal(m.isSameOrAfter(m), true, 'moments are the same as themselves');
+ assert.equal(+m, +mCopy, 'isSameOrAfter second should not change moment');
+ });
+
+ test('is same or after year', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'year'), true, 'year match');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'years'), true, 'plural should work');
+ assert.equal(m.isSameOrAfter(moment(new Date(2012, 5, 6, 7, 8, 9, 10)), 'year'), false, 'year is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 5, 6, 7, 8, 9, 10)), 'year'), true, 'year is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 0, 1, 0, 0, 0, 0)), 'year'), true, 'exact start of year');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 11, 31, 23, 59, 59, 999)), 'year'), true, 'exact end of year');
+ assert.equal(m.isSameOrAfter(moment(new Date(2012, 0, 1, 0, 0, 0, 0)), 'year'), false, 'start of next year');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 11, 31, 23, 59, 59, 999)), 'year'), true, 'end of previous year');
+ assert.equal(m.isSameOrAfter(m, 'year'), true, 'same moments are in the same year');
+ assert.equal(+m, +mCopy, 'isSameOrAfter year should not change moment');
+ });
+
+ test('is same or after month', function (assert) {
+ var m = moment(new Date(2011, 2, 3, 4, 5, 6, 7)), mCopy = moment(m);
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 6, 7, 8, 9, 10)), 'month'), true, 'month match');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 6, 7, 8, 9, 10)), 'months'), true, 'plural should work');
+ assert.equal(m.isSameOrAfter(moment(new Date(2012, 2, 6, 7, 8, 9, 10)), 'month'), false, 'year is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 2, 6, 7, 8, 9, 10)), 'month'), true, 'year is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'month'), false, 'month is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 6, 7, 8, 9, 10)), 'month'), true, 'month is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 1, 0, 0, 0, 0)), 'month'), true, 'exact start of month');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 31, 23, 59, 59, 999)), 'month'), true, 'exact end of month');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 1, 0, 0, 0, 0)), 'month'), false, 'start of next month');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 27, 23, 59, 59, 999)), 'month'), true, 'end of previous month');
+ assert.equal(m.isSameOrAfter(m, 'month'), true, 'same moments are in the same month');
+ assert.equal(+m, +mCopy, 'isSameOrAfter month should not change moment');
+ });
+
+ test('is same or after day', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 7, 8, 9, 10)), 'day'), true, 'day match');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 7, 8, 9, 10)), 'days'), true, 'plural should work');
+ assert.equal(m.isSameOrAfter(moment(new Date(2012, 1, 2, 7, 8, 9, 10)), 'day'), false, 'year is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 1, 2, 7, 8, 9, 10)), 'day'), true, 'year is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 2, 7, 8, 9, 10)), 'day'), false, 'month is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 12, 2, 7, 8, 9, 10)), 'day'), true, 'month is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 3, 7, 8, 9, 10)), 'day'), false, 'day is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 1, 7, 8, 9, 10)), 'day'), true, 'day is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 0, 0, 0, 0)), 'day'), true, 'exact start of day');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 23, 59, 59, 999)), 'day'), true, 'exact end of day');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 3, 0, 0, 0, 0)), 'day'), false, 'start of next day');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 1, 23, 59, 59, 999)), 'day'), true, 'end of previous day');
+ assert.equal(m.isSameOrAfter(m, 'day'), true, 'same moments are in the same day');
+ assert.equal(+m, +mCopy, 'isSameOrAfter day should not change moment');
+ });
+
+ test('is same or after hour', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 8, 9, 10)), 'hour'), true, 'hour match');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 8, 9, 10)), 'hours'), true, 'plural should work');
+ assert.equal(m.isSameOrAfter(moment(new Date(2012, 1, 2, 3, 8, 9, 10)), 'hour'), false, 'year is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 1, 2, 3, 8, 9, 10)), 'hour'), true, 'year is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 2, 3, 8, 9, 10)), 'hour'), false, 'month is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 12, 2, 3, 8, 9, 10)), 'hour'), true, 'month is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 3, 3, 8, 9, 10)), 'hour'), false, 'day is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 1, 3, 8, 9, 10)), 'hour'), true, 'day is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 4, 8, 9, 10)), 'hour'), false, 'hour is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 2, 8, 9, 10)), 'hour'), true, 'hour is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 0, 0, 0)), 'hour'), true, 'exact start of hour');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 59, 59, 999)), 'hour'), true, 'exact end of hour');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 4, 0, 0, 0)), 'hour'), false, 'start of next hour');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 2, 59, 59, 999)), 'hour'), true, 'end of previous hour');
+ assert.equal(m.isSameOrAfter(m, 'hour'), true, 'same moments are in the same hour');
+ assert.equal(+m, +mCopy, 'isSameOrAfter hour should not change moment');
+ });
+
+ test('is same or after minute', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 9, 10)), 'minute'), true, 'minute match');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 9, 10)), 'minutes'), true, 'plural should work');
+ assert.equal(m.isSameOrAfter(moment(new Date(2012, 1, 2, 3, 4, 9, 10)), 'minute'), false, 'year is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 1, 2, 3, 4, 9, 10)), 'minute'), true, 'year is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 2, 3, 4, 9, 10)), 'minute'), false, 'month is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 12, 2, 3, 4, 9, 10)), 'minute'), true, 'month is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 3, 3, 4, 9, 10)), 'minute'), false, 'day is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 1, 3, 4, 9, 10)), 'minute'), true, 'day is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 4, 4, 9, 10)), 'minute'), false, 'hour is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 2, 4, 9, 10)), 'minute'), true, 'hour is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 5, 9, 10)), 'minute'), false, 'minute is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 3, 9, 10)), 'minute'), true, 'minute is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 0, 0)), 'minute'), true, 'exact start of minute');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 59, 999)), 'minute'), true, 'exact end of minute');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 5, 0, 0)), 'minute'), false, 'start of next minute');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 3, 59, 999)), 'minute'), true, 'end of previous minute');
+ assert.equal(m.isSameOrAfter(m, 'minute'), true, 'same moments are in the same minute');
+ assert.equal(+m, +mCopy, 'isSameOrAfter minute should not change moment');
+ });
+
+ test('is same or after second', function (assert) {
+ var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 5, 10)), 'second'), true, 'second match');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 5, 10)), 'seconds'), true, 'plural should work');
+ assert.equal(m.isSameOrAfter(moment(new Date(2012, 1, 2, 3, 4, 5, 10)), 'second'), false, 'year is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 1, 2, 3, 4, 5, 10)), 'second'), true, 'year is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 2, 3, 4, 5, 10)), 'second'), false, 'month is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 12, 2, 3, 4, 5, 10)), 'second'), true, 'month is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 3, 3, 4, 5, 10)), 'second'), false, 'day is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 1, 3, 4, 5, 10)), 'second'), true, 'day is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 4, 4, 5, 10)), 'second'), false, 'hour is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 2, 4, 5, 10)), 'second'), true, 'hour is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 5, 5, 10)), 'second'), false, 'minute is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 3, 5, 10)), 'second'), true, 'minute is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 6, 10)), 'second'), false, 'second is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 4, 10)), 'second'), true, 'second is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 5, 0)), 'second'), true, 'exact start of second');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 5, 999)), 'second'), true, 'exact end of second');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 6, 0)), 'second'), false, 'start of next second');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 1, 2, 3, 4, 4, 999)), 'second'), true, 'end of previous second');
+ assert.equal(m.isSameOrAfter(m, 'second'), true, 'same moments are in the same second');
+ assert.equal(+m, +mCopy, 'isSameOrAfter second should not change moment');
+ });
+
+ test('is same or after millisecond', function (assert) {
+ var m = moment(new Date(2011, 3, 2, 3, 4, 5, 10)), mCopy = moment(m);
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 5, 10)), 'millisecond'), true, 'millisecond match');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 5, 10)), 'milliseconds'), true, 'plural should work');
+ assert.equal(m.isSameOrAfter(moment(new Date(2012, 3, 2, 3, 4, 5, 10)), 'millisecond'), false, 'year is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2010, 3, 2, 3, 4, 5, 10)), 'millisecond'), true, 'year is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 4, 2, 3, 4, 5, 10)), 'millisecond'), false, 'month is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 2, 2, 3, 4, 5, 10)), 'millisecond'), true, 'month is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 3, 3, 4, 5, 10)), 'millisecond'), false, 'day is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 1, 1, 4, 5, 10)), 'millisecond'), true, 'day is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 4, 4, 5, 10)), 'millisecond'), false, 'hour is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 1, 4, 1, 5, 10)), 'millisecond'), true, 'hour is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 5, 5, 10)), 'millisecond'), false, 'minute is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 3, 5, 10)), 'millisecond'), true, 'minute is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 6, 10)), 'millisecond'), false, 'second is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 4, 5)), 'millisecond'), true, 'second is earlier');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 6, 11)), 'millisecond'), false, 'millisecond is later');
+ assert.equal(m.isSameOrAfter(moment(new Date(2011, 3, 2, 3, 4, 4, 9)), 'millisecond'), true, 'millisecond is earlier');
+ assert.equal(m.isSameOrAfter(m, 'millisecond'), true, 'same moments are in the same millisecond');
+ assert.equal(+m, +mCopy, 'isSameOrAfter millisecond should not change moment');
+ });
+
+ test('is same or after with utc offset moments', function (assert) {
+ assert.ok(moment.parseZone('2013-02-01T-05:00').isSameOrAfter(moment('2013-02-01'), 'year'), 'zoned vs local moment');
+ assert.ok(moment('2013-02-01').isSameOrAfter(moment('2013-02-01').utcOffset('-05:00'), 'year'), 'local vs zoned moment');
+ assert.ok(moment.parseZone('2013-02-01T-05:00').isSameOrAfter(moment.parseZone('2013-02-01T-06:30'), 'year'),
+ 'zoned vs (differently) zoned moment');
});
- test('is moment with hacked hasOwnProperty', function (assert) {
- var obj = {};
- // HACK to suppress jshint warning about bad property name
- obj['hasOwnMoney'.replace('Money', 'Property')] = function () {
- return true;
- };
-
- assert.ok(!moment.isMoment(obj), 'isMoment works even if passed object has a wrong hasOwnProperty implementation (ie8)');
+ test('is same or after with invalid moments', function (assert) {
+ var m = moment(), invalid = moment.invalid();
+ assert.equal(invalid.isSameOrAfter(invalid), false, 'invalid moments are not considered equal');
+ assert.equal(m.isSameOrAfter(invalid), false, 'valid moment is not after invalid moment');
+ assert.equal(invalid.isSameOrAfter(m), false, 'invalid moment is not after valid moment');
+ assert.equal(m.isSameOrAfter(invalid, 'year'), false, 'invalid moment year');
+ assert.equal(m.isSameOrAfter(invalid, 'month'), false, 'invalid moment month');
+ assert.equal(m.isSameOrAfter(invalid, 'day'), false, 'invalid moment day');
+ assert.equal(m.isSameOrAfter(invalid, 'hour'), false, 'invalid moment hour');
+ assert.equal(m.isSameOrAfter(invalid, 'minute'), false, 'invalid moment minute');
+ assert.equal(m.isSameOrAfter(invalid, 'second'), false, 'invalid moment second');
+ assert.equal(m.isSameOrAfter(invalid, 'milliseconds'), false, 'invalid moment milliseconds');
});
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
}
- module('is same');
+ module('is same or before');
- test('is same without units', function (assert) {
+ test('is same or before without units', function (assert) {
var m = moment(new Date(2011, 3, 2, 3, 4, 5, 10)), mCopy = moment(m);
- assert.equal(m.isSame(moment(new Date(2012, 3, 2, 3, 5, 5, 10))), false, 'year is later');
- assert.equal(m.isSame(moment(new Date(2010, 3, 2, 3, 3, 5, 10))), false, 'year is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 4, 2, 3, 4, 5, 10))), false, 'month is later');
- assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 4, 5, 10))), false, 'month is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 3, 3, 4, 5, 10))), false, 'day is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 1, 3, 4, 5, 10))), false, 'day is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 4, 4, 5, 10))), false, 'hour is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 2, 4, 5, 10))), false, 'hour is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 5, 5, 10))), false, 'minute is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 3, 5, 10))), false, 'minute is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 6, 10))), false, 'second is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 4, 11))), false, 'second is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 10))), true, 'millisecond match');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 11))), false, 'millisecond is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 9))), false, 'millisecond is earlier');
- assert.equal(m.isSame(m), true, 'moments are the same as themselves');
- assert.equal(+m, +mCopy, 'isSame second should not change moment');
- });
-
- test('is same year', function (assert) {
+ assert.equal(m.isSameOrBefore(moment(new Date(2012, 3, 2, 3, 5, 5, 10))), true, 'year is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 3, 2, 3, 3, 5, 10))), false, 'year is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 4, 2, 3, 4, 5, 10))), true, 'month is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 2, 3, 4, 5, 10))), false, 'month is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 3, 3, 4, 5, 10))), true, 'day is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 1, 3, 4, 5, 10))), false, 'day is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 4, 4, 5, 10))), true, 'hour is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 2, 4, 5, 10))), false, 'hour is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 5, 5, 10))), true, 'minute is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 3, 5, 10))), false, 'minute is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 6, 10))), true, 'second is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 4, 11))), false, 'second is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 5, 10))), true, 'millisecond match');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 5, 11))), true, 'millisecond is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 5, 9))), false, 'millisecond is earlier');
+ assert.equal(m.isSameOrBefore(m), true, 'moments are the same as themselves');
+ assert.equal(+m, +mCopy, 'isSameOrBefore second should not change moment');
+ });
+
+ test('is same or before year', function (assert) {
var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
- assert.equal(m.isSame(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'year'), true, 'year match');
- assert.equal(m.isSame(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'years'), true, 'plural should work');
- assert.equal(m.isSame(moment(new Date(2012, 5, 6, 7, 8, 9, 10)), 'year'), false, 'year mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 0, 1, 0, 0, 0, 0)), 'year'), true, 'exact start of year');
- assert.equal(m.isSame(moment(new Date(2011, 11, 31, 23, 59, 59, 999)), 'year'), true, 'exact end of year');
- assert.equal(m.isSame(moment(new Date(2012, 0, 1, 0, 0, 0, 0)), 'year'), false, 'start of next year');
- assert.equal(m.isSame(moment(new Date(2010, 11, 31, 23, 59, 59, 999)), 'year'), false, 'end of previous year');
- assert.equal(m.isSame(m, 'year'), true, 'same moments are in the same year');
- assert.equal(+m, +mCopy, 'isSame year should not change moment');
- });
-
- test('is same month', function (assert) {
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'year'), true, 'year match');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'years'), true, 'plural should work');
+ assert.equal(m.isSameOrBefore(moment(new Date(2012, 5, 6, 7, 8, 9, 10)), 'year'), true, 'year is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 5, 6, 7, 8, 9, 10)), 'year'), false, 'year is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 0, 1, 0, 0, 0, 0)), 'year'), true, 'exact start of year');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 11, 31, 23, 59, 59, 999)), 'year'), true, 'exact end of year');
+ assert.equal(m.isSameOrBefore(moment(new Date(2012, 0, 1, 0, 0, 0, 0)), 'year'), true, 'start of next year');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 11, 31, 23, 59, 59, 999)), 'year'), false, 'end of previous year');
+ assert.equal(m.isSameOrBefore(m, 'year'), true, 'same moments are in the same year');
+ assert.equal(+m, +mCopy, 'isSameOrBefore year should not change moment');
+ });
+
+ test('is same or before month', function (assert) {
var m = moment(new Date(2011, 2, 3, 4, 5, 6, 7)), mCopy = moment(m);
- assert.equal(m.isSame(moment(new Date(2011, 2, 6, 7, 8, 9, 10)), 'month'), true, 'month match');
- assert.equal(m.isSame(moment(new Date(2011, 2, 6, 7, 8, 9, 10)), 'months'), true, 'plural should work');
- assert.equal(m.isSame(moment(new Date(2012, 2, 6, 7, 8, 9, 10)), 'month'), false, 'year mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'month'), false, 'month mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 2, 1, 0, 0, 0, 0)), 'month'), true, 'exact start of month');
- assert.equal(m.isSame(moment(new Date(2011, 2, 31, 23, 59, 59, 999)), 'month'), true, 'exact end of month');
- assert.equal(m.isSame(moment(new Date(2011, 3, 1, 0, 0, 0, 0)), 'month'), false, 'start of next month');
- assert.equal(m.isSame(moment(new Date(2011, 1, 27, 23, 59, 59, 999)), 'month'), false, 'end of previous month');
- assert.equal(m.isSame(m, 'month'), true, 'same moments are in the same month');
- assert.equal(+m, +mCopy, 'isSame month should not change moment');
- });
-
- test('is same day', function (assert) {
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 6, 7, 8, 9, 10)), 'month'), true, 'month match');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 6, 7, 8, 9, 10)), 'months'), true, 'plural should work');
+ assert.equal(m.isSameOrBefore(moment(new Date(2012, 2, 6, 7, 8, 9, 10)), 'month'), true, 'year is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 2, 6, 7, 8, 9, 10)), 'month'), false, 'year is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 5, 6, 7, 8, 9, 10)), 'month'), true, 'month is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 6, 7, 8, 9, 10)), 'month'), false, 'month is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 1, 0, 0, 0, 0)), 'month'), true, 'exact start of month');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 31, 23, 59, 59, 999)), 'month'), true, 'exact end of month');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 1, 0, 0, 0, 0)), 'month'), true, 'start of next month');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 27, 23, 59, 59, 999)), 'month'), false, 'end of previous month');
+ assert.equal(m.isSameOrBefore(m, 'month'), true, 'same moments are in the same month');
+ assert.equal(+m, +mCopy, 'isSameOrBefore month should not change moment');
+ });
+
+ test('is same or before day', function (assert) {
var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 7, 8, 9, 10)), 'day'), true, 'day match');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 7, 8, 9, 10)), 'days'), true, 'plural should work');
- assert.equal(m.isSame(moment(new Date(2012, 1, 2, 7, 8, 9, 10)), 'day'), false, 'year mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 2, 2, 7, 8, 9, 10)), 'day'), false, 'month mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 3, 7, 8, 9, 10)), 'day'), false, 'day mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 0, 0, 0, 0)), 'day'), true, 'exact start of day');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 23, 59, 59, 999)), 'day'), true, 'exact end of day');
- assert.equal(m.isSame(moment(new Date(2011, 1, 3, 0, 0, 0, 0)), 'day'), false, 'start of next day');
- assert.equal(m.isSame(moment(new Date(2011, 1, 1, 23, 59, 59, 999)), 'day'), false, 'end of previous day');
- assert.equal(m.isSame(m, 'day'), true, 'same moments are in the same day');
- assert.equal(+m, +mCopy, 'isSame day should not change moment');
- });
-
- test('is same hour', function (assert) {
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 7, 8, 9, 10)), 'day'), true, 'day match');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 7, 8, 9, 10)), 'days'), true, 'plural should work');
+ assert.equal(m.isSameOrBefore(moment(new Date(2012, 1, 2, 7, 8, 9, 10)), 'day'), true, 'year is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 1, 2, 7, 8, 9, 10)), 'day'), false, 'year is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 2, 7, 8, 9, 10)), 'day'), true, 'month is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 12, 2, 7, 8, 9, 10)), 'day'), false, 'month is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 3, 7, 8, 9, 10)), 'day'), true, 'day is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 1, 7, 8, 9, 10)), 'day'), false, 'day is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 0, 0, 0, 0)), 'day'), true, 'exact start of day');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 23, 59, 59, 999)), 'day'), true, 'exact end of day');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 3, 0, 0, 0, 0)), 'day'), true, 'start of next day');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 1, 23, 59, 59, 999)), 'day'), false, 'end of previous day');
+ assert.equal(m.isSameOrBefore(m, 'day'), true, 'same moments are in the same day');
+ assert.equal(+m, +mCopy, 'isSameOrBefore day should not change moment');
+ });
+
+ test('is same or before hour', function (assert) {
var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 8, 9, 10)), 'hour'), true, 'hour match');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 8, 9, 10)), 'hours'), true, 'plural should work');
- assert.equal(m.isSame(moment(new Date(2012, 1, 2, 3, 8, 9, 10)), 'hour'), false, 'year mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 8, 9, 10)), 'hour'), false, 'month mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 3, 3, 8, 9, 10)), 'hour'), false, 'day mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 4, 8, 9, 10)), 'hour'), false, 'hour mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 0, 0, 0)), 'hour'), true, 'exact start of hour');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 59, 59, 999)), 'hour'), true, 'exact end of hour');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 4, 0, 0, 0)), 'hour'), false, 'start of next hour');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 2, 59, 59, 999)), 'hour'), false, 'end of previous hour');
- assert.equal(m.isSame(m, 'hour'), true, 'same moments are in the same hour');
- assert.equal(+m, +mCopy, 'isSame hour should not change moment');
- });
-
- test('is same minute', function (assert) {
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 8, 9, 10)), 'hour'), true, 'hour match');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 8, 9, 10)), 'hours'), true, 'plural should work');
+ assert.equal(m.isSameOrBefore(moment(new Date(2012, 1, 2, 3, 8, 9, 10)), 'hour'), true, 'year is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 1, 2, 3, 8, 9, 10)), 'hour'), false, 'year is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 2, 3, 8, 9, 10)), 'hour'), true, 'month is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 12, 2, 3, 8, 9, 10)), 'hour'), false, 'month is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 3, 3, 8, 9, 10)), 'hour'), true, 'day is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 1, 3, 8, 9, 10)), 'hour'), false, 'day is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 4, 8, 9, 10)), 'hour'), true, 'hour is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 2, 8, 9, 10)), 'hour'), false, 'hour is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 0, 0, 0)), 'hour'), true, 'exact start of hour');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 59, 59, 999)), 'hour'), true, 'exact end of hour');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 4, 0, 0, 0)), 'hour'), true, 'start of next hour');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 2, 59, 59, 999)), 'hour'), false, 'end of previous hour');
+ assert.equal(m.isSameOrBefore(m, 'hour'), true, 'same moments are in the same hour');
+ assert.equal(+m, +mCopy, 'isSameOrBefore hour should not change moment');
+ });
+
+ test('is same or before minute', function (assert) {
var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 9, 10)), 'minute'), true, 'minute match');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 9, 10)), 'minutes'), true, 'plural should work');
- assert.equal(m.isSame(moment(new Date(2012, 1, 2, 3, 4, 9, 10)), 'minute'), false, 'year mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 4, 9, 10)), 'minute'), false, 'month mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 3, 3, 4, 9, 10)), 'minute'), false, 'day mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 4, 4, 9, 10)), 'minute'), false, 'hour mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 5, 9, 10)), 'minute'), false, 'minute mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 0, 0)), 'minute'), true, 'exact start of minute');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 59, 999)), 'minute'), true, 'exact end of minute');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 5, 0, 0)), 'minute'), false, 'start of next minute');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 3, 59, 999)), 'minute'), false, 'end of previous minute');
- assert.equal(m.isSame(m, 'minute'), true, 'same moments are in the same minute');
- assert.equal(+m, +mCopy, 'isSame minute should not change moment');
- });
-
- test('is same second', function (assert) {
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 9, 10)), 'minute'), true, 'minute match');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 9, 10)), 'minutes'), true, 'plural should work');
+ assert.equal(m.isSameOrBefore(moment(new Date(2012, 1, 2, 3, 4, 9, 10)), 'minute'), true, 'year is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 1, 2, 3, 4, 9, 10)), 'minute'), false, 'year is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 2, 3, 4, 9, 10)), 'minute'), true, 'month is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 12, 2, 3, 4, 9, 10)), 'minute'), false, 'month is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 3, 3, 4, 9, 10)), 'minute'), true, 'day is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 1, 3, 4, 9, 10)), 'minute'), false, 'day is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 4, 4, 9, 10)), 'minute'), true, 'hour is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 2, 4, 9, 10)), 'minute'), false, 'hour is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 5, 9, 10)), 'minute'), true, 'minute is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 3, 9, 10)), 'minute'), false, 'minute is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 0, 0)), 'minute'), true, 'exact start of minute');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 59, 999)), 'minute'), true, 'exact end of minute');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 5, 0, 0)), 'minute'), true, 'start of next minute');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 3, 59, 999)), 'minute'), false, 'end of previous minute');
+ assert.equal(m.isSameOrBefore(m, 'minute'), true, 'same moments are in the same minute');
+ assert.equal(+m, +mCopy, 'isSameOrBefore minute should not change moment');
+ });
+
+ test('is same or before second', function (assert) {
var m = moment(new Date(2011, 1, 2, 3, 4, 5, 6)), mCopy = moment(m);
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 5, 10)), 'second'), true, 'second match');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 5, 10)), 'seconds'), true, 'plural should work');
- assert.equal(m.isSame(moment(new Date(2012, 1, 2, 3, 4, 5, 10)), 'second'), false, 'year mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 4, 5, 10)), 'second'), false, 'month mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 3, 3, 4, 5, 10)), 'second'), false, 'day mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 4, 4, 5, 10)), 'second'), false, 'hour mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 5, 5, 10)), 'second'), false, 'minute mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 6, 10)), 'second'), false, 'second mismatch');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 5, 0)), 'second'), true, 'exact start of second');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 5, 999)), 'second'), true, 'exact end of second');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 6, 0)), 'second'), false, 'start of next second');
- assert.equal(m.isSame(moment(new Date(2011, 1, 2, 3, 4, 4, 999)), 'second'), false, 'end of previous second');
- assert.equal(m.isSame(m, 'second'), true, 'same moments are in the same second');
- assert.equal(+m, +mCopy, 'isSame second should not change moment');
- });
-
- test('is same millisecond', function (assert) {
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 5, 10)), 'second'), true, 'second match');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 5, 10)), 'seconds'), true, 'plural should work');
+ assert.equal(m.isSameOrBefore(moment(new Date(2012, 1, 2, 3, 4, 5, 10)), 'second'), true, 'year is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 1, 2, 3, 4, 5, 10)), 'second'), false, 'year is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 2, 3, 4, 5, 10)), 'second'), true, 'month is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 12, 2, 3, 4, 5, 10)), 'second'), false, 'month is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 3, 3, 4, 5, 10)), 'second'), true, 'day is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 1, 3, 4, 5, 10)), 'second'), false, 'day is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 4, 4, 5, 10)), 'second'), true, 'hour is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 2, 4, 5, 10)), 'second'), false, 'hour is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 5, 5, 10)), 'second'), true, 'minute is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 3, 5, 10)), 'second'), false, 'minute is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 6, 10)), 'second'), true, 'second is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 4, 10)), 'second'), false, 'second is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 5, 0)), 'second'), true, 'exact start of second');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 5, 999)), 'second'), true, 'exact end of second');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 6, 0)), 'second'), true, 'start of next second');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 1, 2, 3, 4, 4, 999)), 'second'), false, 'end of previous second');
+ assert.equal(m.isSameOrBefore(m, 'second'), true, 'same moments are in the same second');
+ assert.equal(+m, +mCopy, 'isSameOrBefore second should not change moment');
+ });
+
+ test('is same or before millisecond', function (assert) {
var m = moment(new Date(2011, 3, 2, 3, 4, 5, 10)), mCopy = moment(m);
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 10)), 'millisecond'), true, 'millisecond match');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 5, 10)), 'milliseconds'), true, 'plural should work');
- assert.equal(m.isSame(moment(new Date(2012, 3, 2, 3, 4, 5, 10)), 'millisecond'), false, 'year is later');
- assert.equal(m.isSame(moment(new Date(2010, 3, 2, 3, 4, 5, 10)), 'millisecond'), false, 'year is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 4, 2, 3, 4, 5, 10)), 'millisecond'), false, 'month is later');
- assert.equal(m.isSame(moment(new Date(2011, 2, 2, 3, 4, 5, 10)), 'millisecond'), false, 'month is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 3, 3, 4, 5, 10)), 'millisecond'), false, 'day is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 1, 1, 4, 5, 10)), 'millisecond'), false, 'day is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 4, 4, 5, 10)), 'millisecond'), false, 'hour is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 1, 4, 1, 5, 10)), 'millisecond'), false, 'hour is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 5, 5, 10)), 'millisecond'), false, 'minute is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 3, 5, 10)), 'millisecond'), false, 'minute is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 6, 10)), 'millisecond'), false, 'second is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 4, 5)), 'millisecond'), false, 'second is earlier');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 6, 11)), 'millisecond'), false, 'millisecond is later');
- assert.equal(m.isSame(moment(new Date(2011, 3, 2, 3, 4, 4, 9)), 'millisecond'), false, 'millisecond is earlier');
- assert.equal(m.isSame(m, 'millisecond'), true, 'same moments are in the same millisecond');
- assert.equal(+m, +mCopy, 'isSame millisecond should not change moment');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 5, 10)), 'millisecond'), true, 'millisecond match');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 5, 10)), 'milliseconds'), true, 'plural should work');
+ assert.equal(m.isSameOrBefore(moment(new Date(2012, 3, 2, 3, 4, 5, 10)), 'millisecond'), true, 'year is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2010, 3, 2, 3, 4, 5, 10)), 'millisecond'), false, 'year is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 4, 2, 3, 4, 5, 10)), 'millisecond'), true, 'month is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 2, 2, 3, 4, 5, 10)), 'millisecond'), false, 'month is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 3, 3, 4, 5, 10)), 'millisecond'), true, 'day is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 1, 1, 4, 5, 10)), 'millisecond'), false, 'day is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 4, 4, 5, 10)), 'millisecond'), true, 'hour is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 1, 4, 1, 5, 10)), 'millisecond'), false, 'hour is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 5, 5, 10)), 'millisecond'), true, 'minute is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 3, 5, 10)), 'millisecond'), false, 'minute is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 6, 10)), 'millisecond'), true, 'second is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 4, 5)), 'millisecond'), false, 'second is earlier');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 6, 11)), 'millisecond'), true, 'millisecond is later');
+ assert.equal(m.isSameOrBefore(moment(new Date(2011, 3, 2, 3, 4, 4, 9)), 'millisecond'), false, 'millisecond is earlier');
+ assert.equal(m.isSameOrBefore(m, 'millisecond'), true, 'same moments are in the same millisecond');
+ assert.equal(+m, +mCopy, 'isSameOrBefore millisecond should not change moment');
});
test('is same with utc offset moments', function (assert) {
- assert.ok(moment.parseZone('2013-02-01T-05:00').isSame(moment('2013-02-01'), 'year'), 'zoned vs local moment');
- assert.ok(moment('2013-02-01').isSame(moment('2013-02-01').utcOffset('-05:00'), 'year'), 'local vs zoned moment');
- assert.ok(moment.parseZone('2013-02-01T-05:00').isSame(moment.parseZone('2013-02-01T-06:30'), 'year'),
+ assert.ok(moment.parseZone('2013-02-01T-05:00').isSameOrBefore(moment('2013-02-01'), 'year'), 'zoned vs local moment');
+ assert.ok(moment('2013-02-01').isSameOrBefore(moment('2013-02-01').utcOffset('-05:00'), 'year'), 'local vs zoned moment');
+ assert.ok(moment.parseZone('2013-02-01T-05:00').isSameOrBefore(moment.parseZone('2013-02-01T-06:30'), 'year'),
'zoned vs (differently) zoned moment');
});
test('is same with invalid moments', function (assert) {
- assert.equal(moment.invalid().isSame(moment.invalid()), false, 'invalid moments are not considered equal');
+ var m = moment(), invalid = moment.invalid();
+ assert.equal(invalid.isSameOrBefore(invalid), false, 'invalid moments are not considered equal');
+ assert.equal(m.isSameOrBefore(invalid), false, 'valid moment is not before invalid moment');
+ assert.equal(invalid.isSameOrBefore(m), false, 'invalid moment is not before valid moment');
+ assert.equal(m.isSameOrBefore(invalid, 'year'), false, 'invalid moment year');
+ assert.equal(m.isSameOrBefore(invalid, 'month'), false, 'invalid moment month');
+ assert.equal(m.isSameOrBefore(invalid, 'day'), false, 'invalid moment day');
+ assert.equal(m.isSameOrBefore(invalid, 'hour'), false, 'invalid moment hour');
+ assert.equal(m.isSameOrBefore(invalid, 'minute'), false, 'invalid moment minute');
+ assert.equal(m.isSameOrBefore(invalid, 'second'), false, 'invalid moment second');
+ assert.equal(m.isSameOrBefore(invalid, 'milliseconds'), false, 'invalid moment milliseconds');
});
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
test('string with spaceless format', function (assert) {
assert.equal(moment('10Sep2001', 'DDMMMYYYY').isValid(), true, 'Parsing 10Sep2001 should result in a valid date');
+ assert.equal(moment('10Sept2001', 'DDMMMYYYY').isValid(), true, 'Parsing 10Sept2001 should result in a valid date');
});
test('invalid string iso 8601', function (assert) {
], i;
for (i = 0; i < tests.length; i++) {
- assert.equal(moment(tests[i]).isValid(), false, tests[i] + ' should be invalid');
- assert.equal(moment.utc(tests[i]).isValid(), false, tests[i] + ' should be invalid');
+ assert.equal(moment(tests[i], moment.ISO_8601).isValid(), false, tests[i] + ' should be invalid');
+ assert.equal(moment.utc(tests[i], moment.ISO_8601).isValid(), false, tests[i] + ' should be invalid');
}
});
'2010-01-40T24:01+00:00',
'2010-01-40T23:60+00:00',
'2010-01-40T23:59:60+00:00',
- '2010-01-40T23:59:59.9999+00:00'
+ '2010-01-40T23:59:59.9999+00:00',
+ '2010-01-40T23:59:59,9999+00:00'
], i;
for (i = 0; i < tests.length; i++) {
- assert.equal(moment(tests[i]).isValid(), false, tests[i] + ' should be invalid');
- assert.equal(moment.utc(tests[i]).isValid(), false, tests[i] + ' should be invalid');
+ assert.equal(moment(tests[i], moment.ISO_8601).isValid(), false, tests[i] + ' should be invalid');
+ assert.equal(moment.utc(tests[i], moment.ISO_8601).isValid(), false, tests[i] + ' should be invalid');
+ }
+ });
+
+ test('valid string iso 8601 - not strict', function (assert) {
+ var tests = [
+ '2010-01-30 00:00:00,000Z',
+ '20100101',
+ '20100130',
+ '20100130T23+00:00',
+ '20100130T2359+0000',
+ '20100130T235959+0000',
+ '20100130T235959,999+0000',
+ '20100130T235959,999-0700',
+ '20100130T000000,000+0700',
+ '20100130 000000,000Z'
+ ];
+
+ for (var i = 0; i < tests.length; i++) {
+ assert.equal(moment(tests[i]).isValid(), true, tests[i] + ' should be valid in normal');
+ assert.equal(moment.utc(tests[i]).isValid(), true, tests[i] + ' should be valid in normal');
}
});
'2010-01-30T23:59:59.999+00:00',
'2010-01-30T23:59:59.999-07:00',
'2010-01-30T00:00:00.000+07:00',
+ '2010-01-30T23:59:59.999-07',
+ '2010-01-30T00:00:00.000+07',
'2010-01-30 00:00:00.000Z'
], i;
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
test('default', function (assert) {
assert.deepEqual(moment.months(), ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']);
- assert.deepEqual(moment.monthsShort(), ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']);
+ assert.deepEqual(moment.monthsShort(), ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec']);
assert.deepEqual(moment.weekdays(), ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']);
assert.deepEqual(moment.weekdaysShort(), ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']);
assert.deepEqual(moment.weekdaysMin(), ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa']);
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
assert.equal(moment.localeData().months(jan), 'January', 'no arguments returns global');
assert.equal(moment.localeData('zh-cn').months(jan), '一月', 'a string returns the locale based on key');
- assert.equal(moment.localeData(moment().locale('es')).months(jan), 'Enero', 'if you pass in a moment it uses the moment\'s locale');
+ assert.equal(moment.localeData(moment().locale('es')).months(jan), 'enero', 'if you pass in a moment it uses the moment\'s locale');
});
test('library deprecations', function (assert) {
moment.locale('en');
assert.equal(moment([2012, 5, 6]).format('MMMM'), 'June', 'Normally default to global');
- assert.equal(moment([2012, 5, 6]).locale('es').format('MMMM'), 'Junio', 'Use the instance specific locale');
+ assert.equal(moment([2012, 5, 6]).locale('es').format('MMMM'), 'junio', 'Use the instance specific locale');
assert.equal(moment([2012, 5, 6]).format('MMMM'), 'June', 'Using an instance specific locale does not affect other moments');
});
test('instance locale persists with manipulation', function (assert) {
moment.locale('en');
- assert.equal(moment([2012, 5, 6]).locale('es').add({days: 1}).format('MMMM'), 'Junio', 'With addition');
- assert.equal(moment([2012, 5, 6]).locale('es').day(0).format('MMMM'), 'Junio', 'With day getter');
- assert.equal(moment([2012, 5, 6]).locale('es').endOf('day').format('MMMM'), 'Junio', 'With endOf');
+ assert.equal(moment([2012, 5, 6]).locale('es').add({days: 1}).format('MMMM'), 'junio', 'With addition');
+ assert.equal(moment([2012, 5, 6]).locale('es').day(0).format('MMMM'), 'junio', 'With day getter');
+ assert.equal(moment([2012, 5, 6]).locale('es').endOf('day').format('MMMM'), 'junio', 'With endOf');
});
test('instance locale persists with cloning', function (assert) {
b = a.clone(),
c = moment(a);
- assert.equal(b.format('MMMM'), 'Junio', 'using moment.fn.clone()');
- assert.equal(b.format('MMMM'), 'Junio', 'using moment()');
+ assert.equal(b.format('MMMM'), 'junio', 'using moment.fn.clone()');
+ assert.equal(b.format('MMMM'), 'junio', 'using moment()');
});
test('duration locale method', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ moment.locale('en');
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ module('now');
+
+ test('now', function (assert) {
+ var startOfTest = new Date().valueOf(),
+ momentNowTime = moment.now(),
+ afterMomentCreationTime = new Date().valueOf();
+
+ assert.ok(startOfTest <= momentNowTime, 'moment now() time should be now, not in the past');
+ assert.ok(momentNowTime <= afterMomentCreationTime, 'moment now() time should be now, not in the future');
+ });
+
+ test('now - custom value', function (assert) {
+ var customTimeStr = '2015-01-01T01:30:00.000Z',
+ customTime = moment(customTimeStr, moment.ISO_8601).valueOf(),
+ oldFn = moment.now;
+
+ moment.now = function () {
+ return customTime;
+ };
+
+ try {
+ assert.ok(moment().toISOString() === customTimeStr, 'moment() constructor should use the function defined by moment.now, but it did not');
+ assert.ok(moment.utc().toISOString() === customTimeStr, 'moment() constructor should use the function defined by moment.now, but it did not');
+ assert.ok(moment.utc([]).toISOString() === '2015-01-01T00:00:00.000Z', 'moment() constructor should fall back to the date defined by moment.now when an empty array is given, but it did not');
+ } finally {
+ moment.now = oldFn;
+ }
+ });
+
+}));
+
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
+ typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
+ factory(global.moment)
+}(this, function (moment) { 'use strict';
+
+ /*global QUnit:false*/
+
+ var test = QUnit.test;
+
+ var expect = QUnit.expect;
+
+ function module (name, lifecycle) {
+ QUnit.module(name, {
+ setup : function () {
+ moment.locale('en');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
+ };
+ if (lifecycle && lifecycle.setup) {
+ lifecycle.setup();
+ }
+ },
+ teardown : function () {
+ if (lifecycle && lifecycle.teardown) {
+ lifecycle.teardown();
+ }
+ }
+ });
+ }
+
+ function localeModule (name, lifecycle) {
+ QUnit.module('locale:' + name, {
+ setup : function () {
+ moment.locale(name);
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
});
test('custom thresholds', function (assert) {
+ var a;
+
+ // Seconds to minute threshold, under 30
+ moment.relativeTimeThreshold('s', 25);
+
+ a = moment();
+ a.subtract(24, 'seconds');
+ assert.equal(a.fromNow(), 'a few seconds ago', 'Below custom seconds to minute threshold, s < 30');
+ a.subtract(1, 'seconds');
+ assert.equal(a.fromNow(), 'a minute ago', 'Above custom seconds to minute threshold, s < 30');
+
// Seconds to minutes threshold
moment.relativeTimeThreshold('s', 55);
- var a = moment();
+ a = moment();
a.subtract(54, 'seconds');
assert.equal(a.fromNow(), 'a few seconds ago', 'Below custom seconds to minutes threshold');
a.subtract(1, 'seconds');
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
assert.equal(m.clone().utcOffset(-90).utcOffset(), -90, 'utcOffset -90');
assert.equal(m.clone().utcOffset('-01:30').utcOffset(), -90, 'utcOffset +01:30 is 90');
assert.equal(m.clone().utcOffset('-0130').utcOffset(), -90, 'utcOffset +0130 is 90');
+ assert.equal(m.clone().utcOffset('+00:10').utcOffset(), 10, 'utcOffset +00:10 is 10');
+ assert.equal(m.clone().utcOffset('-00:10').utcOffset(), -10, 'utcOffset +00:10 is 10');
+ assert.equal(m.clone().utcOffset('+0010').utcOffset(), 10, 'utcOffset +0010 is 10');
+ assert.equal(m.clone().utcOffset('-0010').utcOffset(), -10, 'utcOffset +0010 is 10');
});
test('utcOffset shorthand hours -> minutes', function (assert) {
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
assert.equal(52, moment().weeksInYear(2012)); // 52
});
+ test('week year overflows', function (assert) {
+ assert.equal('2005-01-01', moment.utc('2004-W53-6', moment.ISO_8601, true).format('YYYY-MM-DD'), '2004-W53-6 is 1st Jan 2005');
+ assert.equal('2007-12-31', moment.utc('2008-W01-1', moment.ISO_8601, true).format('YYYY-MM-DD'), '2008-W01-1 is 31st Dec 2007');
+ });
+
+ test('weeks overflow', function (assert) {
+ assert.equal(7, moment.utc('2004-W54-1', moment.ISO_8601, true).parsingFlags().overflow, '2004 has only 53 weeks');
+ assert.equal(7, moment.utc('2004-W00-1', moment.ISO_8601, true).parsingFlags().overflow, 'there is no 0th week');
+ });
+
+ test('weekday overflow', function (assert) {
+ assert.equal(8, moment.utc('2004-W30-0', moment.ISO_8601, true).parsingFlags().overflow, 'there is no 0 iso weekday');
+ assert.equal(8, moment.utc('2004-W30-8', moment.ISO_8601, true).parsingFlags().overflow, 'there is no 8 iso weekday');
+ assert.equal(8, moment.utc('2004-w30-7', 'gggg-[w]ww-e', true).parsingFlags().overflow, 'there is no 7 \'e\' weekday');
+ assert.equal(8, moment.utc('2004-w30-7', 'gggg-[w]ww-d', true).parsingFlags().overflow, 'there is no 7 \'d\' weekday');
+ });
+
+ test('week year setter works', function (assert) {
+ for (var year = 2000; year <= 2020; year += 1) {
+ assert.equal(moment.utc('2012-12-31T00:00:00.000Z').isoWeekYear(year).isoWeekYear(), year, 'setting iso-week-year to ' + year);
+ assert.equal(moment.utc('2012-12-31T00:00:00.000Z').weekYear(year).weekYear(), year, 'setting week-year to ' + year);
+ }
+
+ assert.equal(moment.utc('2004-W53-1', moment.ISO_8601, true).isoWeekYear(2013).format('GGGG-[W]WW-E'), '2013-W52-1', '2004-W53-1 to 2013');
+ assert.equal(moment.utc('2004-W53-1', moment.ISO_8601, true).isoWeekYear(2020).format('GGGG-[W]WW-E'), '2020-W53-1', '2004-W53-1 to 2020');
+ assert.equal(moment.utc('2005-W52-1', moment.ISO_8601, true).isoWeekYear(2004).format('GGGG-[W]WW-E'), '2004-W52-1', '2005-W52-1 to 2004');
+ assert.equal(moment.utc('2013-W30-4', moment.ISO_8601, true).isoWeekYear(2015).format('GGGG-[W]WW-E'), '2015-W30-4', '2013-W30-4 to 2015');
+
+ assert.equal(moment.utc('2005-w53-0', 'gggg-[w]ww-e', true).weekYear(2013).format('gggg-[w]ww-e'), '2013-w52-0', '2005-w53-0 to 2013');
+ assert.equal(moment.utc('2005-w53-0', 'gggg-[w]ww-e', true).weekYear(2016).format('gggg-[w]ww-e'), '2016-w53-0', '2005-w53-0 to 2016');
+ assert.equal(moment.utc('2004-w52-0', 'gggg-[w]ww-e', true).weekYear(2005).format('gggg-[w]ww-e'), '2005-w52-0', '2004-w52-0 to 2005');
+ assert.equal(moment.utc('2013-w30-4', 'gggg-[w]ww-e', true).weekYear(2015).format('gggg-[w]ww-e'), '2015-w30-4', '2013-w30-4 to 2015');
+ });
+
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
}));
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(require('../../moment')) :
+;(function (global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined'
+ && typeof require === 'function' ? factory(require('../../moment')) :
typeof define === 'function' && define.amd ? define(['../../moment'], factory) :
factory(global.moment)
}(this, function (moment) { 'use strict';
var test = QUnit.test;
+ var expect = QUnit.expect;
+
function module (name, lifecycle) {
QUnit.module(name, {
setup : function () {
moment.locale('en');
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
QUnit.module('locale:' + name, {
setup : function () {
moment.locale(name);
- moment.createFromInputFallback = function () {
- throw new Error('input not handled by moment');
+ moment.createFromInputFallback = function (config) {
+ throw new Error('input not handled by moment: ' + config._i);
};
if (lifecycle && lifecycle.setup) {
lifecycle.setup();
zone.zone('2013-03-07T07:00:00+0100');
assert.equal(zone.zone(), -60, 'set the zone with a string that uses the +0000 syntax');
+ zone.zone('2013-03-07T07:00:00+02');
+ assert.equal(zone.zone(), -120, 'set the zone with a string that uses the +00 syntax');
+
zone.zone('03-07-2013T07:00:00-08:00');
assert.equal(zone.zone(), 480, 'set the zone with a string with a non-ISO 8601 date');
});