All files / src/lib db.ts

0% Statements 0/10
0% Branches 0/2
0% Functions 0/1
0% Lines 0/10

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24                                               
import { MongoClient, MongoError } from "mongodb";
import { packageJSON } from "./packageJSON";
import { envPromise } from "./env";
import { NoThrow } from "@/utils/NoThrow";
 
export const dbClientPromise = (async function () {
    const envResult = await envPromise;
 
    if (envResult.isErr()) {
        return envResult;
    }
 
    const env = envResult.value;
 
    const mongoClient = new MongoClient(env.MONGODB_URI, { appName: packageJSON.name });
 
    try {
        const mongoClientConnected = await mongoClient.connect();
        return NoThrow.success(mongoClientConnected);
    } catch (err) {
        return NoThrow.error(err as MongoError);
    }
})();