varinspect=require('../');vartest=require('tape');functionwithoutProperty(object,property,fn){varoriginal;if(Object.getOwnPropertyDescriptor){original=Object.getOwnPropertyDescriptor(object,property);}else{original=object[property];}deleteobject[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);vararr=[1,,3];// eslint-disable-line no-sparse-arrays// eslint-disable-next-line no-extend-nativeArray.prototype[1]=2;// this is needed to account for "in" vs "hasOwnProperty"withoutProperty(Object.prototype,'hasOwnProperty',function(){t.equal(inspect(arr),'[ 1, , 3 ]');});deleteArray.prototype[1];});