@skylernpm/minus-facere-explicabo
v1.0.0
Published
[![github actions][actions-image]][actions-url] [![coverage][codecov-image]][codecov-url] [![dependency status][deps-svg]][deps-url] [![dev dependency status][dev-deps-svg]][dev-deps-url] [![License][license-image]][license-url] [![Downloads][downloads-im
Downloads
3
Maintainers
Keywords
Readme
@skylernpm/minus-facere-explicabo
Given an object and a property, replaces a property descriptor (or deletes it), and returns a thunk to restore it.
Example
var mockProperty = require('@skylernpm/minus-facere-explicabo');
var assert = require('assert');
var i = 0;
var object = {
a: 1,
get b() {
i += 1;
return 'b ' + i;
}
};
assert.equal(object.a, 1);
assert.equal(object.b, 'b 1');
assert.equal(object.b, 'b 2');
var restoreA = mockProperty(object, 'a', { 'delete': true });
assert.equal('a' in object, false);
var restoreB = mockProperty(object, 'b', { value: 42 });
assert.equal(object.b, 42);
restoreA();
assert.equal('a' in object, true);
restoreB();
assert.equal(object.b, 'b 3');
Tests
Simply clone the repo, npm install
, and run npm test
Security
Please email @ljharb or see https://tidelift.com/security if you have a potential security vulnerability to report.