Я использую Jest Framework для создания юнит-тестов. Когда я запускаю их. в конце появляется сообщение:
"Jest не завершил свою работу через одну секунду после завершения тестового прогона. Обычно это означает, что существуют асинхронные операции, которые не были остановлены в ваших тестах. Рассмотрите возможность запуска Jest с --detectOpenHandles
для устранения этой проблемы. "
Для выхода я использую команду" --forceExit ". Кроме того, я пытался найти проблему с --detectOpenHandles
, но ничего не показывалось.
Я не могу найти то, что не закрыто, сеанс, драйвер или что-то еще. Как это можно исправить?
const neo4j = require("neo4j-driver");
const driver = neo4j.v1.driver(
`bolt://${host}`,
neo4j.v1.auth.basic(username, password)
);
beforeAll(async () => {
await cleanDB();
});
afterAll(async () => {
await cleanDB();
driver.close();
});
async function cleanDB() {
await runQuery(`...query`);
}
async function runQuery(query) {
const session = driver.session();
return session
.writeTransaction(tx => tx.run(query))
.then(result => {
session.close();
return result;
})
.catch(error => {
session.close();
return { error };
});
}
describe(`bla-bla-bla`, function() {
beforeAll(async () => {
await dataBaseLoader(data);
});
test(`bla-bla-bla`, async function() {
const result = await runQuery(
'...query' );
//Body of Test
expect(result).toStrictEqual(expected);
});