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.
greenkeeper[bot] 0d19db6c03
chore(package): update ava to version 2.4.0
5 years ago
src Use pkg-dir 7 years ago
test Rename to requirable 7 years ago
.gitignore Initial commit 7 years ago
.travis.yml Initial commit 7 years ago
LICENSE Initial commit 7 years ago
README.md Rename to requirable 7 years ago
package.json chore(package): update ava to version 2.4.0 5 years ago

README.md

requirable

Enables a module to require itself by name

Build Status Coverage Status npm

Mocks the require command to include the current package when the name from the current package.json is required.

Uses process.cwd() to find the current package.json so this is only meant to be used in scripts executed from the CLI. This will not work on a published package!

Install

npm install --save-dev requirable

Usage

require('requirable');
// That's it! `require` has now been patched

const myPackage = require('package-name')

AVA Usage

Some tests runners such as AVA can require packages automatically for you. If you're using AVA add the following to your package.json:

"ava": {
  "require": [
    "requirable"
  ]
},

You can now require (or import) your package in your AVA tests by name.

e.g instead of:

import test from 'ava';
import myPackage from '../';

You can now do:

import test from 'ava';
import myPackage from 'package-name';

API

require('requirable')

Patches the require function to be able to require the current module by name.

Returns an object.

obj.success

Type: boolean

True or false depending on whether we could find package.json.

obj.path

Type: undefined, string

Path to the folder containing package.json.

obj.name

Type: undefined, string

Name of the module in package.json.

License

MIT © Luke Childs