automutate-tests
TypeScript icon, indicating that this package has built-in type declarations

0.5.0 • Public • Published

automutate-tests

End-to-end test utilities for packages that rely on automutate.

Usage

automutate-tests exports a describeMutationTestCases function that takes in three arguments:

  1. Root path to search under for cases
  2. A method to create a mutation provider for each file.
  3. Names of files that test cases are composed of.

Its describe method takes in a a directory path containing test case directories.

Note that TestsFactory expects global describe and it functions to be declared. If you're using a runner like Mocha or Jasmine this will work. It also expects chai to be explicitly installed.

npm install --save-dev chai mocha

Sample Usage

Define a test file with JavaScript or TypeScript similar to the following:

import { describeMutationTestCases } from "automutate-tests";
import * as path from "path";

import { MyMutationsProvider } from "./MyMutationsProvider";

describeMutationTestCases(
    path.join(__dirname, "cases"),
    (fileName, settingsFileName) => new MyMutationsProvider(fileName, settingsFileName),
    {
        actual: "actual.txt",
        expected: "expected.txt",
        original: "original.txt",
        settings: "settings.txt"
    });
};

Then, create a directory named cases with at least one sub-directory ("case"). Each case should contain files named expected.txt and original.txt with your extension.

When tests are run, the original.txt file will be copied to an actual.txt file and mutated. It should then contain the same contents as the expected.txt file.

Package Sidebar

Install

npm i automutate-tests

Weekly Downloads

8

Version

0.5.0

License

MIT

Unpacked Size

31.9 kB

Total Files

31

Last publish

Collaborators

  • joshuakgoldberg