permutest

0.0.1 • Public • Published

Permutest

Permutest is a testing utility that makes the testing of all possible combinations/permuations of multiple variables much saner and clean.

npm install permutest

Permutest is independent of any testing framework or library and can be used for other things besides testing as well.

Example

var assert = require('assert');
var permutest = require('permutest');

permutest(function(set) {
  var firstName = set(["Chris", "Kevin"]);
  var lastName = set(["Andrejewski", "Undisclosed", "Withheld"]);
  var fullName = firstName + " " + lastName;
  assert(nameIsLongEnough(fullName));
});

The above is equivalent to the following.

var assert = require('assert');

var firstName = "Chris";
var lastName = "Andrejewski";
var fullName = firstName + " " + lastName;
assert(nameIsLongEnough(fullName));

var firstName = "Chris";
var lastName = "Undisclosed";
var fullName = firstName + " " + lastName;
assert(nameIsLongEnough(fullName));

var firstName = "Chris";
var lastName = "Withheld";
var fullName = firstName + " " + lastName;
assert(nameIsLongEnough(fullName));

var firstName = "Kevin";
var lastName = "Andrejewski";
var fullName = firstName + " " + lastName;
assert(nameIsLongEnough(fullName));

var firstName = "Kevin";
var lastName = "Undisclosed";
var fullName = firstName + " " + lastName;
assert(nameIsLongEnough(fullName));

var firstName = "Kevin";
var lastName = "Withheld";
var fullName = firstName + " " + lastName;
assert(nameIsLongEnough(fullName));

But who the heck would want to write and maintain that instead of just using Permutest.

TODO

The only feature that I would like to add to the Permutest package is a static analysis and compilation tool that expands out Permutest tests into their long and tedious forms. This would involve writing a command-line script and generating the AST to find calls to permutest() and so on from there to generate the test code in place. This would be useful for inspecting individual test cases.

Contributing

We can always have more tests: if you find a bug, create an issue or be fabulous and fix the problem and write the tests up yourself in a coherent pull request.

Run tests with the npm test command.

Please check out my other repositories if I have earned it. I thank you for reading.

Package Sidebar

Install

npm i permutest

Weekly Downloads

0

Version

0.0.1

License

ISC

Last publish

Collaborators

  • andrejewski