私はいくつかのタスクのためにモカテストを書いています。関数Aが返ってから3分後に値Bをチェックしたいと思います。だから、私は実際に3分待たずに時間を変えるのに役立つものを探しています。 私は確認コードが3分か後に除去されるかどうかを確認する必要があり、私は私のRedisのデータベースにこのラインを持っている:Sinonを使ってRedisがキーを期限切れにする
RedisClient.expire(data._id, 180);
と私のテストファイルで、私はテストがあります。
it('should send a confirmation code for: 00989130000963', function (done) {
api
.post(settings.UserRegister)
.set("ping-client", "M")
.set("type","register")
.expect(200)
.send(postData)
.end(function (err, res, body) {
if (err) {
throw err;
}
if (res.body.result === "WAIT") {
if (res.body.confirmHeader !== "") {
clock.tick(180*1000 + 100)
console.log(clock)
done();
}
throw new Error("no header set");
} else {
throw new Error("not in the wait state");
}
});
しかし、clock.tickは期待どおりに動作しません。このテストの後、古いものは削除する必要があるため、ユーザーは確認コードを再度要求することができますが、古いものはRedisに残っているようです。
私たちに見せるためのコードはありますか? – MarcoL
ようこそStackOverflowへ。人々があなたに手伝ってもらうために、質問にあなたの作業(コードなど)を入れて、すでに行った作業を表示してください。その後、私たちはあなたを助けてくれるでしょう:) – deeveeABC