Skip to content

omrilotan/abuser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

abuser

🤕 Create modifiers to require cache based on file path (e.g. __filename)

Supported from node 10.12.0

The abuser function accepts routes from which to resolve the modules as arguments

const abuser = require('abuser');
const {clean, override, reset} = abuser(__filename);

override: Override module exports value with any given thing (other than undefined)

const {override} = require('abuser')(__filename);

override('modulename', () => 'return value');

reset: Reset module cache to intended values, recursively

const {reset} = require('abuser')(__filename);

const myThing = reset('.');

clean: Clean module and its dependencies from memory

const {clean} = require('abuser')(__filename);

clean('.');
const {override, clean} = require('abuser')(__filename);

describe('my suite', () => {
	const dependency = stub();
	let mine;
	before(() => {
		override('dependency', dependency);
		mine = require('.');
	});
	afterEach(() => stub.reset());
	after(() => clean('.'));

	it('Should call "dependency"', () => {
		mine();
		assert(dependency.called);
	});
});

About

🤕 Create modifiers to require cache based on path (e.g. `__dirname`)

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published