Cleanup previous commit.

This commit is contained in:
John-David Dalton
2014-11-21 21:50:19 -08:00
parent 49c027537e
commit 7e3dd2b8cc
2 changed files with 18 additions and 12 deletions

View File

@@ -10255,21 +10255,22 @@
var retUnwrapped = /^(?:first|last)$/.test(methodName);
lodash.prototype[methodName] = function() {
var args = arguments,
var value = this.__wrapped__,
args = arguments,
chainAll = this.__chain__,
value = this.__wrapped__,
isLazy = value instanceof LazyWrapper,
noQueue = !this.__queue__.length,
unwrap = retUnwrapped && !chainAll;
onlyLazy = isLazy && !this.__queue__.length;
if (unwrap && !isLazy) {
return lodash[methodName](this.value());
if (retUnwrapped && !chainAll) {
return onlyLazy
? func.call(value)
: lodash[methodName](this.value());
}
if (isLazy || isArray(value)) {
var wrapper = (isLazy && noQueue) ? value : new LazyWrapper(this),
var wrapper = onlyLazy ? value : new LazyWrapper(this),
result = func.apply(wrapper, args);
return unwrap ? result : new LodashWrapper(result, chainAll);
return new LodashWrapper(result, chainAll);
}
return this.thru(function(value) {
var otherArgs = [value];

View File

@@ -12703,13 +12703,18 @@
}
});
test('should work when in a lazy chain sequence, before `.last`', 1, function() {
test('should work when in a lazy chain sequence before `first` or `last`', 1, function() {
if (!isNpm) {
var actual = _([1, 2, 3]).map().xor([4]).last();
strictEqual(actual, 4);
var wrapper = _([1, 2]).map().xor([2, 3]);
var actual = _.map(['first', 'last'], function(methodName) {
return wrapper[methodName]();
});
deepEqual(actual, [1, 3]);
}
else {
skipTest(2);
skipTest();
}
});
}(1, 2, 3));