]> git.ipfire.org Git - thirdparty/moment.git/commitdiff
Create moment.duration.invalid()
authorKunal Marwaha <marwahaha@berkeley.edu>
Tue, 21 Feb 2017 08:02:25 +0000 (03:02 -0500)
committerIskren Chernev <iskren.chernev@gmail.com>
Thu, 2 Mar 2017 08:45:51 +0000 (10:45 +0200)
src/lib/duration/create.js
src/lib/duration/valid.js
src/test/moment/duration_invalid.js

index 09af9e24f7be5813a5413f9ab03c9b67eb5647eb..9b6d5a964fcdf3bf5303522b11ff9518502735eb 100644 (file)
@@ -6,6 +6,7 @@ import hasOwnProp from '../utils/has-own-prop';
 import { DATE, HOUR, MINUTE, SECOND, MILLISECOND } from '../units/constants';
 import { cloneWithOffset } from '../units/offset';
 import { createLocal } from '../create/local';
+import { createInvalid as invalid } from './valid';
 
 // ASP.NET json date format regex
 var aspNetRegex = /^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/;
@@ -77,6 +78,7 @@ export function createDuration (input, key) {
 }
 
 createDuration.fn = Duration.prototype;
+createDuration.invalid = invalid;
 
 function parseIso (inp, sign) {
     // We'd normally use ~~inp for this, but unfortunately it also
index 17146b51b0f59ad851c8361e9ebd0b08f1fd9b4a..842585f32212f99244448465bb5a80a0c6aa7def 100644 (file)
@@ -1,4 +1,6 @@
 import toInt from '../utils/to-int';
+import {Duration} from './constructor';
+import {createDuration} from './create';
 
 var ordering = ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'millisecond'];
 
@@ -27,3 +29,7 @@ export default function isDurationValid(m) {
 export function isValid() {
     return this._isValid;
 }
+
+export function createInvalid() {
+    return createDuration(NaN);
+}
index 68263ba9d8f78d09b0d3daeb399f50a45703d018..4b023a880c5fff7a816d7b472f84f8fa54b3104c 100644 (file)
@@ -4,12 +4,12 @@ import moment from '../../moment';
 module('invalid');
 
 test('invalid duration', function (assert) {
-    var m = moment.duration(NaN); // should be invalid
+    var m = moment.duration.invalid(); // should be invalid
     assert.equal(m.isValid(), false);
     assert.ok(isNaN(m.valueOf()));
 });
 
-test('valid duration - as per @ichernev', function (assert) {
+test('valid duration', function (assert) {
     var m = moment.duration({d: null}); // should be valid, for now
     assert.equal(m.isValid(), true);
     assert.equal(m.valueOf(), 0);
@@ -36,7 +36,8 @@ test('invalid duration with two arguments', function (assert) {
 test('invalid duration operations', function (assert) {
     var invalids = [
             moment.duration(NaN),
-            moment.duration(NaN, 'days')
+            moment.duration(NaN, 'days'),
+            moment.duration.invalid()
         ],
         i,
         invalid,