Node.js library based on Nock to record HTTP interactions in Mocha tests.
This library requires Node 10 or higher.
Install with NPM:
npm install -D mocha-cassettes
Import the Cassettes
module in your test:
import { Cassettes } from 'mocha-cassettes';
Create an instance while providing a path to the folder where your recorded cassettes should reside:
describe('Feature', function () {
const cassette = new Cassettes('./test/cassettes');
});
Now create the actual test:
cassette.createTest('get request', async () => {
const response = await got('http://localhost/test');
expect(response.body).to.be.equal('ok');
}).register(this);
If the cassette does not exist, it will be recorded for you once you run the test. All subsequent test runs will utilize the recorded cassette. Set the environment variable NO_CASSETTE_MOCKING
to ignore all mocking code.
Here is the full example:
import { Cassettes } from 'mocha-cassettes';
describe('Feature', function () {
const cassette = new Cassettes('./test/cassettes');
cassette.createTest('get request', async () => {
const response = await got('http://localhost/test');
expect(response.body).to.be.equal('ok');
}).register(this);
});
This library is based on mocha-tape-deck and licensed under the MIT License.
Copyright (c) Ilya Krukowski, Roman Kutanov