我正在尝试使用sequelize编写测试,我想在每次测试之前截断所有表。如果可能的话,我不想写那个或在每个测试文件中运行它。有谁知道这样做的方法?
似乎jest应该支持类似的东西。
我目前正在尝试使用globalSetup,但这是一个beforeAll。
我还有另一个问题,那就是当我运行globalSetup时,我会这样做:
module.exports = () => {
sequelize.db.sync({ force: true })
}
两次中哪一次有效。所以当我需要它来运行同步时,我猜这是异步运行。
答案 0 :(得分:0)
一种方式:
sequelize.db.sync({ force: true }).then(() => {
// write you test code here
// Or
// or call the function from here to perform your test
})
或者您也可以这样做:
// trunk.js
module.exports = () => {
sequelize.db.sync({ force: true })
}
// test.js
const trunk = require('./trunk');
module.exports = () => {
trunk.then(() => {
// write you test code here
})
}