You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
var inspect = require('../'); var test = require('tape');
function withoutProperty(object, property, fn) { var original; if (Object.getOwnPropertyDescriptor) { original = Object.getOwnPropertyDescriptor(object, property); } else { original = object[property]; } delete object[property]; try { fn(); } finally { if (Object.getOwnPropertyDescriptor) { Object.defineProperty(object, property, original); } else { object[property] = original; } } }
test('when Object#hasOwnProperty is deleted', function (t) { t.plan(1); var arr = [1, , 3]; // eslint-disable-line no-sparse-arrays
// eslint-disable-next-line no-extend-native
Array.prototype[1] = 2; // this is needed to account for "in" vs "hasOwnProperty"
withoutProperty(Object.prototype, 'hasOwnProperty', function () { t.equal(inspect(arr), '[ 1, , 3 ]'); }); delete Array.prototype[1]; });
|