utils-copy-error

Copy an error object.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
utils-copy-error
441.0.18 years ago8 years agoMinified + gzip package size for utils-copy-error in KB

Readme

Copy Error
!NPM versionnpm-imagenpm-url !Build Statusbuild-imagebuild-url !Coverage Statuscoverage-imagecoverage-url !Dependenciesdependencies-imagedependencies-url
Copy an errorjs-error object.

Installation

$ npm install utils-copy-error

Usage

var copy = require( 'utils-copy-error' );

copy( error )

Copy an errorjs-error object.
var err1 = new TypeError( 'beep' );

var err2 = copy( err1 );
// returns <TypeError>

Notes

  • Supported built-in error types:
-	[`Error`][js-error]
- 	[`URIError`][js-uri-error]
-	[`ReferenceError`][js-reference-error]
-	[`SyntaxError`][js-syntax-error]
-	[`RangeError`][js-range-error]
-	[`EvalError`][js-eval-error]
-	[`TypeError`][js-type-error]
-	[`System Error`][node-system-error] (Node.js)

Examples

var copy = require( 'utils-copy-error' );

var err1;
var err2;

err1 = new Error( 'beep' );
err2 = copy( err1 );

console.log( err1 === err2 );
// returns false

console.log( err1.message === err2.message );
// returns true

err1 = new TypeError( 'bad type' );
err2 = copy (err1 );

console.log( err1 === err2 );
// returns false

console.log( err1.stack === err2.stack );
// returns true

err1 = new RangeError( 'invalid value' );
err2 = copy( err1 );

console.log( err1 === err2 );
// returns false

console.log( err1.name === err2.name );
// returns true

To run the example code from the top-level application directory,
$ node ./examples/index.js

Tests

Unit

This repository uses tapetape for unit tests. To run the tests, execute the following command in the top-level application directory:
$ make test

All new feature development should have corresponding unit tests to validate correct functionality.

Test Coverage

This repository uses Istanbulistanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
$ make test-cov

Istanbul creates a ./reports/coverage directory. To access an HTML version of the report,
$ make view-cov

Browser Support

This repository uses Testlingtestling for browser testing. To run the tests in a (headless) local web browser, execute the following command in the top-level application directory:
$ make test-browsers

To view the tests in a local web browser,
$ make view-browser-tests


License

MIT license.

Copyright

Copyright © 2015. Athan Reines.