Refactor mongodb infra module to remove unneeded code

GitOrigin-RevId: f907753dffd67ed279815693c37498ec255f1353
This commit is contained in:
andrew rumble 2024-08-16 16:34:14 +01:00 committed by Copybot
parent 56f70b3246
commit 777acc4040

View file

@ -40,30 +40,17 @@ async function waitForDb() {
const db = {}
let clientPromise
async function getClient() {
if (!clientPromise) {
clientPromise = mongodb.MongoClient.connect(
const mongoClient = new mongodb.MongoClient(
Settings.mongo.url,
Settings.mongo.options
)
}
return await clientPromise
}
)
addConnectionDrainer('mongodb', async () => {
const client = await getClient()
await client.close()
await mongoClient.close()
})
async function getInternalDb() {
const client = await getClient()
return client.db()
}
async function setupDb() {
const internalDb = await getInternalDb()
const internalDb = mongoClient.db()
db.contacts = internalDb.collection('contacts')
db.deletedFiles = internalDb.collection('deletedFiles')
@ -121,17 +108,19 @@ async function setupDb() {
db.onboardingDataCollection = internalDb.collection(
'onboardingDataCollection'
)
await mongoClient.connect()
}
async function getCollectionNames() {
const internalDb = await getInternalDb()
const internalDb = mongoClient.db()
const collections = await internalDb.collections()
return collections.map(collection => collection.collectionName)
}
async function dropTestDatabase() {
const internalDb = await getInternalDb()
const internalDb = mongoClient.db()
const dbName = internalDb.databaseName
const env = process.env.NODE_ENV
@ -148,7 +137,7 @@ async function dropTestDatabase() {
* WARNING: Consider using a pre-populated collection from `db` to avoid typos!
*/
async function getCollectionInternal(name) {
const internalDb = await getInternalDb()
const internalDb = mongoClient.db()
return internalDb.collection(name)
}