diff --git a/lodash.src.js b/lodash.src.js index 9abe72553..23b36f67c 100644 --- a/lodash.src.js +++ b/lodash.src.js @@ -10110,7 +10110,7 @@ } else { end = +end || 0; } - return value >= start && value < end; + return value >= nativeMin(start, end) && value < nativeMax(start, end); } /** diff --git a/test/test.js b/test/test.js index a155aba71..34cd8f993 100644 --- a/test/test.js +++ b/test/test.js @@ -6569,6 +6569,11 @@ }); }); + test('should swap `start` and `end` when `start` is greater than `end`', 2, function() { + strictEqual(_.inRange(2, 5, 1), true); + strictEqual(_.inRange(-3, -2, -6), true); + }); + test('should work with a floating point `n` value', 4, function() { strictEqual(_.inRange(0.5, 5), true); strictEqual(_.inRange(1.2, 1, 5), true);