Я пытаюсь протестировать некоторые из моих функций базы данных с помощью jest. В настоящее время у меня есть javascript файл с различными функциями. Эти функции подключаются к базе данных в начале каждой, выполняют поиск в БД и возвращают массив. Я пытаюсь просто вызвать эти функции из моего jest-файла и проверить возвращаемое значение этих функций, но я получаю эту ошибку:
MongoParseError: неверный URI, не может быть проанализирован
Мои функции отлично работают вне вызова из моего тестового файла, поэтому я могу только предположить, что есть некоторая проблема с НЕ подключением к базе данных из тестового файла.
Пример подключения функции к база данных
export async function getPrograms(programId): Promise<any> {
console.log("calling get programs");
console.log(programId);
const db = await commonDb.getInstance();
console.log("Database: ", db);
programId = programId ? programId : "";
const regex = new RegExp(`.*${programId}.*`, "i");
const programs = await db
.collection(COLLECTIONS.COMMON.PROGRAMS)
.find({ _id: regex })
.toArray();
if (programs.length > 0) {
console.log(programs);
return programs;
}
return null;
}
Пример теста, который я пытаюсь запустить, который выдает ошибку
import {
getPrograms
} from "../../../src/classes/programs";
test("calling getPrograms with no programId gives all programs", async() => {
const programs = await getPrograms("someId");
expect(programs).toBe(["someProgram"]);
});