vitest-mms
Version:
mongodb-memory-server integration for vitest
24 lines (20 loc) • 541 B
JavaScript
;
var node_crypto = require('node:crypto');
var vitest = require('vitest');
var mongoose = require('mongoose');
let connection;
vitest.afterAll(async () => {
if (connection) {
await connection.close();
}
});
const mmsTest = vitest.test.extend({
connection: async ({}, use) => {
if (!connection) {
const uri = vitest.inject("MONGO_URI");
connection = await mongoose.createConnection(uri).asPromise();
}
await use(connection.useDb(node_crypto.randomUUID()));
}
});
exports.mmsTest = mmsTest;