【发布时间】:2018-07-03 16:14:54
【问题描述】:
我正在尝试编写单元测试来测试搜索查询是否正确,换句话说,where 语句中编写的逻辑是否返回预期结果。
async function search(some_data){
return Event.findOne({
where: {
id: 123435,
[Op.or]: [
days: {
[Op.overlap]: some_data.days,
},
[Op.or]: [
{
startTime: {
[Op.gt]: some_data.start1,
},
endTime: {
[Op.lt]:some_data.end1,
},
},
{
startTime: {
[Op.lt]: some_data.start2,
[Op.lt]: some_data.end2,
},
endTime: {
[Op.gt]: some_data.end2,
[Op.gt]: some_data.start2,
},
},
],
],
},
})};
我需要测试不同输入的结果。
我不想把这个测试转成集成测试,用原来的db,所以我用了sequelize-mocklib,但这只返回我定义的结果,并没有运行真正的查询。
【问题讨论】:
标签: node.js unit-testing sequelize.js