Returns a new Relief object, with window.require as its loader if no params
are passed.

If you don't expose a global require function or have moved it elsewhere,
pass the require Object as the first parameter.

If you pass a contextName parameter, Relief will include that context and its configuration (baseUrl, shim, etc ) when looking up modules. If it is not used, Relief will just delegate to RequireJS's regular context( _ ) and its config.

Relief will inject all of the stubs when you call load. You can use it like you would normally use the AMD format of requiring modules:

loader.load( ['dep1'], function( dep1, relief ) {

// do your stuff here

})

The load functions always passes back the same instance of reliefas the last argument. The relief object will give you access to the stubs, and any actuals Relief was able to find. You can use the stubs object to set up and tear down your mocks and spies.

Here's an example using Mocha as the test framework, Chai as the assertion framework, and Sinon/chai-sinon for stubbing: