Я пытаюсь создать свой первый тест с шуткой.
user_model_test.js
const mongoose = require('mongoose')
const User = require('../user_model')
describe('user model tests', () => {
beforeAll( async () => {
await mongoose.connect('mongodb://localhost/supertest21')
})
afterAll( async () => {
await mongoose.connection.close()
})
it("has a module", () => {
expect(User).toBeDefined()
})
})
user_model.js
const mongoose = require('mongoose')
const Schema = mongoose.Schema
const userSchema = new Schema({
username: {
type: String,
required: true
},
password: {
type: String,
required: true
},
email: {
type: String,
required: true
}
})
const User = mongoose.model('User', userSchema, 'user')
module.exports = User
Когда я запускаю свой тест с --detectOpenHandles
, я получаю эту ошибку:
Jest has detected the following 1 open handle potentially keeping Jest from exiting:
● PROMISE
17 | })
18 |
> 19 | const User = mongoose.model('User', userSchema, 'user')
| ^
20 |
21 | module.exports = User
at Function.init (node_modules/mongoose/lib/model.js:970:16)
at Mongoose.Object.<anonymous>.Mongoose.model (node_modules/mongoose/lib/index.js:396:11)
at Object.<anonymous> (libs/user/user_model.js:19:23)
at Object.<anonymous> (libs/user/__tests__/user_model_test.js:3:14)
Я знаю, что есть что-то, что связано с инициализацией mongoose.model. Когда я передаю 4-й параметр в mongoose.model, чтобы пропустить инициализацию, ошибка обещания не отображается, но тест никогда не закрывается и не закрывается. показать больше ошибок. Есть идеи?