@skylernpm/minus-facere-explicabo

1.0.0 • Public • Published

@skylernpm/minus-facere-explicabo Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

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.

Readme

Keywords

Package Sidebar

Install

npm i @skylernpm/minus-facere-explicabo

Weekly Downloads

0

Version

1.0.0

License

MIT

Unpacked Size

15.7 kB

Total Files

8

Last publish

Collaborators

  • skylerlabsventure