UNPKG

cypress-mongodb

Version:
78 lines 2.73 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.findOne = findOne; exports.findOneAndUpdate = findOneAndUpdate; exports.findOneAndDelete = findOneAndDelete; exports.findMany = findMany; const mongodb_1 = require("mongodb"); const bson_1 = require("bson"); async function findOne(args) { args.query = (0, bson_1.deserialize)(Buffer.from(args.query)); return mongodb_1.MongoClient.connect(args.uri).then(async (client) => { try { const result = await client .db(args.database) .collection(args.collection) .findOne(args.query, args.options); if (result !== null) return (0, bson_1.serialize)(result); return null; } finally { await client.close(); } }); } async function findOneAndUpdate(args) { args.filter = (0, bson_1.deserialize)(Buffer.from(args.filter)); args.document = (0, bson_1.deserialize)(Buffer.from(args.document)); return mongodb_1.MongoClient.connect(args.uri).then(async (client) => { try { const result = await client .db(args.database) .collection(args.collection) .findOneAndUpdate(args.filter, args.document, args.options); if (result !== null) return (0, bson_1.serialize)(result); return null; } finally { await client.close(); } }); } async function findOneAndDelete(args) { args.filter = (0, bson_1.deserialize)(Buffer.from(args.filter)); args.options = (0, bson_1.deserialize)(Buffer.from(args.options)); return mongodb_1.MongoClient.connect(args.uri).then(async (client) => { try { const result = await client .db(args.database) .collection(args.collection) .findOneAndDelete(args.filter, args.options); if (result !== null) return (0, bson_1.serialize)(result); return null; } finally { await client.close(); } }); } async function findMany(args) { args.query = (0, bson_1.deserialize)(Buffer.from(args.query)); return mongodb_1.MongoClient.connect(args.uri).then(async (client) => { try { const result = await client .db(args.database) .collection(args.collection) .find(args.query, args.options) .toArray(); return (0, bson_1.serialize)(Object.fromEntries(result.entries())); } finally { await client.close(); } }); } //# sourceMappingURL=find.js.map