@testurio/adapter-mongo
v0.5.0
Published
MongoDB adapter for Testurio DataSource
Maintainers
Readme
@testurio/adapter-mongo
MongoDB adapter for Testurio DataSource.
Installation
npm install @testurio/adapter-mongoUsage
import { TestScenario, testCase, DataSource } from 'testurio';
import { MongoAdapter } from '@testurio/adapter-mongo';
const db = new DataSource('database', {
adapter: new MongoAdapter({
url: 'mongodb://localhost:27017',
database: 'testdb',
}),
});
const scenario = new TestScenario({
name: 'MongoDB Test',
components: [db],
});
const tc = testCase('should query documents', (test) => {
const mongo = test.use(db);
// Setup test data
mongo.exec('insert user', async (db) => {
await db.collection('users').insertOne({ name: 'John', email: '[email protected]' });
});
// Query and assert
mongo.exec('get user', async (db) => {
return db.collection('users').findOne({ name: 'John' });
}).assert('user should exist', (user) => user?.email === '[email protected]');
// Cleanup
mongo.exec('cleanup', async (db) => {
await db.collection('users').deleteOne({ name: 'John' });
});
});Configuration
const adapter = new MongoAdapter({
url: 'mongodb://localhost:27017',
database: 'mydb',
});Client Type
The exec callback receives a MongoDB Db instance.
License
MIT
