MongoDB Module¶
MongoDB is an open source NoSQL database management program. NoSQL is used as an alternative to traditional relational databases. NoSQL databases are quite useful for working with large sets of distributed data. MongoDB is a tool that can manage document-oriented information, store or retrieve information.
Install¶
npm install @testcontainers/mongodb --save-dev
Examples¶
await using mongodbContainer = await new MongoDBContainer(image).start();
const db = mongoose.createConnection(mongodbContainer.getConnectionString(), { directConnection: true });
const fooCollection = db.collection("foo");
const obj = { value: 1 };
const session = await db.startSession();
await session.withTransaction(async () => await fooCollection.insertOne(obj));
const result = await fooCollection.findOne({ value: 1 });
expect(result).toEqual(obj);
await db.close();
await using mongodbContainer = await new MongoDBContainer(IMAGE)
.withUsername("mongo_user")
.withPassword("mongo_password")
.start();
const db = mongoose.createConnection(mongodbContainer.getConnectionString(), { directConnection: true });
const result = await db.collection("testcontainers").insertOne({ title: "testcontainers" });
const resultId = result.insertedId.toString();
expect(resultId).toBeTruthy();
const rsStatus = await db.db?.admin().replSetGetStatus();
expect(rsStatus?.set).toBe("rs0");
await db.close();