From: Kunal Marwaha Date: Mon, 6 Feb 2017 08:04:20 +0000 (-0500) Subject: Make rest of code review changes X-Git-Tag: 2.18.0~45^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=30ec96f80cc38fabb0506b39d0dbb65248d727f8;p=thirdparty%2Fmoment.git Make rest of code review changes --- diff --git a/src/lib/duration/constructor.js b/src/lib/duration/constructor.js index d85ee4f8c..5c97ef108 100644 --- a/src/lib/duration/constructor.js +++ b/src/lib/duration/constructor.js @@ -15,9 +15,6 @@ export function Duration (duration) { milliseconds = normalizedInput.millisecond || 0; this._isValid = isDurationValid(normalizedInput); - this.isValid = function () { - return this._isValid; - }; // representation for dateAddRemove this._milliseconds = +milliseconds + diff --git a/src/lib/duration/prototype.js b/src/lib/duration/prototype.js index 9d4ccd5ae..d923375cb 100644 --- a/src/lib/duration/prototype.js +++ b/src/lib/duration/prototype.js @@ -10,8 +10,9 @@ import { get, milliseconds, seconds, minutes, hours, days, months, years, weeks import { humanize } from './humanize'; import { toISOString } from './iso-string'; import { lang, locale, localeData } from '../moment/locale'; -import isDurationValid from './valid'; +import { isValid } from './valid'; +proto.isValid = isValid; proto.abs = abs; proto.add = add; proto.subtract = subtract; @@ -41,7 +42,6 @@ proto.toString = toISOString; proto.toJSON = toISOString; proto.locale = locale; proto.localeData = localeData; -proto.isValid = isDurationValid; // Deprecations import { deprecate } from '../utils/deprecate'; diff --git a/src/lib/duration/valid.js b/src/lib/duration/valid.js index 4ff2298f9..17146b51b 100644 --- a/src/lib/duration/valid.js +++ b/src/lib/duration/valid.js @@ -23,3 +23,7 @@ export default function isDurationValid(m) { return true; } + +export function isValid() { + return this._isValid; +} diff --git a/src/test/moment/duration_invalid.js b/src/test/moment/duration_invalid.js index b0166961c..68263ba9d 100644 --- a/src/test/moment/duration_invalid.js +++ b/src/test/moment/duration_invalid.js @@ -9,6 +9,12 @@ test('invalid duration', function (assert) { assert.ok(isNaN(m.valueOf())); }); +test('valid duration - as per @ichernev', function (assert) { + var m = moment.duration({d: null}); // should be valid, for now + assert.equal(m.isValid(), true); + assert.equal(m.valueOf(), 0); +}); + test('invalid duration - only smallest unit can have decimal', function (assert) { var m = moment.duration({'days': 3.5, 'hours': 1.1}); // should be invalid assert.equal(m.isValid(), false);