1.9.1 • Published 8 years ago

covers v1.9.1

Weekly downloads
2
License
MIT
Repository
github
Last release
8 years ago

covers.js

It's always annoyed me trying to write tests & code in node.js that code coverage doesn't have the annotations that I was used to in PHPUnit

This is an attempt to bring some of that functionality to node.js

// exampleCode.js
function foo() {
  bar();
  return bar();
}

function bar() {
  return true;
}

function hello() {
  return true;
}

module.exports = {
  foo: foo,
  bar: bar
}
// myTest.js
const exampleCode = require("exampleCode");
describe("Selective coverage", () => {
  covers(exampleCode.foo);
  it("run", () => {
    exampleCode.foo();
  })
});

Will result in coverage results like:

1x | function foo() {
1x |   bar();
1x |   return bar();
   | }

1x | function bar() {
0x |   return true;
   | }

1x | function hello() {
0x |   return true;
   | }

1x | module.exports = {
   |   foo: foo,
   |   bar: bar
   | }

Instead of what would ordinarily come out:

...
1x | function bar() {
2x |   return true;
   | }
...

This will allow you to write unit tests that test just the method you want, and continue to have integration and end-to-end testing that doesn't effect your code coverage results.

Roadmap

  • nothing selector
  • selector for named functions
  • selector for anonymous functions
  • selector for es6 arrow anonymous functions
1.9.1

8 years ago

1.8.1

8 years ago

1.0.0

8 years ago