mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-01 15:57:48 +00:00
Fix ArrayBuffer#slice test mock.
This commit is contained in:
@@ -50,16 +50,16 @@
|
||||
// allow bypassing native checks
|
||||
setProperty(Function.prototype, 'toString', (function() {
|
||||
function wrapper() {
|
||||
setProperty(Function.prototype, 'toString', fnToString);
|
||||
var result = (this === window.ArrayBuffer || this === window.Set)
|
||||
? this.toString()
|
||||
: fnToString.call(this);
|
||||
|
||||
setProperty(Function.prototype, 'toString', wrapper);
|
||||
setProperty(funcProto, 'toString', fnToString);
|
||||
var result = hasOwnProperty.call(this, 'toString') ? this.toString() : fnToString.call(this);
|
||||
setProperty(funcProto, 'toString', wrapper);
|
||||
return result;
|
||||
}
|
||||
var fnToString = Function.prototype.toString;
|
||||
setProperty(Function.prototype, '_toString', fnToString);
|
||||
var funcProto = Function.prototype,
|
||||
fnToString = funcProto.toString,
|
||||
hasOwnProperty = Object.prototype.hasOwnProperty;
|
||||
|
||||
setProperty(funcProto, '_toString', fnToString);
|
||||
return wrapper;
|
||||
}()));
|
||||
|
||||
@@ -95,10 +95,11 @@
|
||||
}
|
||||
return hasOwnProperty.call(this, key);
|
||||
}
|
||||
var hasOwnProperty = Object.prototype.hasOwnProperty,
|
||||
propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
|
||||
var objectProto = Object.prototype,
|
||||
hasOwnProperty = objectProto.hasOwnProperty,
|
||||
propertyIsEnumerable = objectProto.propertyIsEnumerable;
|
||||
|
||||
setProperty(Object.prototype, '_hasOwnProperty', hasOwnProperty);
|
||||
setProperty(objectProto, '_hasOwnProperty', hasOwnProperty);
|
||||
return wrapper;
|
||||
}()));
|
||||
|
||||
@@ -113,7 +114,7 @@
|
||||
|
||||
setProperty(window, '_ArrayBuffer', window.ArrayBuffer);
|
||||
if (window.ArrayBuffer && window.Uint8Array && !new ArrayBuffer(0).slice) {
|
||||
ArrayBuffer = (function() {
|
||||
ArrayBuffer = (function(_ArrayBuffer) {
|
||||
function constant(value) {
|
||||
return function() {
|
||||
return value;
|
||||
@@ -122,7 +123,7 @@
|
||||
function ArrayBuffer(byteLength) {
|
||||
var buffer = new _ArrayBuffer(byteLength);
|
||||
buffer.slice = function() {
|
||||
var newBuffer = new _ArrayBuffer(byteLength),
|
||||
var newBuffer = new _ArrayBuffer(this.byteLength),
|
||||
view = new Uint8Array(newBuffer);
|
||||
|
||||
view.set(new Uint8Array(this));
|
||||
@@ -138,7 +139,7 @@
|
||||
|
||||
setProperty(ArrayBuffer, 'toString', bufferToString);
|
||||
return ArrayBuffer;
|
||||
}());
|
||||
}(_ArrayBuffer));
|
||||
}
|
||||
setProperty(window, '_Float64Array', window.Float64Array);
|
||||
if (window._ArrayBuffer == window.ArrayBuffer && window._Float64Array) {
|
||||
@@ -202,8 +203,6 @@
|
||||
|
||||
if (window._ArrayBuffer) {
|
||||
ArrayBuffer = _ArrayBuffer;
|
||||
} else {
|
||||
setProperty(window, 'ArrayBuffer', undefined);
|
||||
}
|
||||
setProperty(window, '_ArrayBuffer', undefined);
|
||||
|
||||
|
||||
@@ -341,10 +341,7 @@
|
||||
var _fnToString = funcProto.toString;
|
||||
setProperty(funcProto, 'toString', function wrapper() {
|
||||
setProperty(funcProto, 'toString', _fnToString);
|
||||
var result = (this === root.ArrayBuffer || this === root.Set)
|
||||
? this.toString()
|
||||
: _fnToString.call(this);
|
||||
|
||||
var result = _.has(this, 'toString') ? this.toString() : _fnToString.call(this);
|
||||
setProperty(funcProto, 'toString', wrapper);
|
||||
return result;
|
||||
});
|
||||
@@ -391,7 +388,7 @@
|
||||
function ArrayBuffer(byteLength) {
|
||||
var buffer = new _ArrayBuffer(byteLength);
|
||||
buffer.slice = function() {
|
||||
var newBuffer = new _ArrayBuffer(byteLength),
|
||||
var newBuffer = new _ArrayBuffer(this.byteLength),
|
||||
view = new Uint8Array(newBuffer);
|
||||
|
||||
view.set(new Uint8Array(this));
|
||||
|
||||
Reference in New Issue
Block a user