일부 작업에 대한 모카 테스트를 작성 중이며 함수 A가 반환 된 후 3 분 후에 값 B를 확인하려고합니다. 그래서 저는 실제로 3 분을 기다리지 않기 때문에 시간을 바꾸는 데 도움이되는 것을 찾고 있습니다. 내가 확인 코드가 삼분 후 여부를 제거되는지 여부를 확인해야합니다, 내 레디 스 데이터베이스에이 라인이 있습니다Sinon을 사용하여 Redis가 키를 만료 시키게합니다.
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");
}
});
:
RedisClient.expire(data._id, 180);
내 테스트 파일을 나는 검사를 그러나 clock.tick은 예상대로 작동하지 않습니다.이 테스트가 끝나면 사용자는 확인 코드를 다시 요청할 수 있습니다. 이전 코드는 삭제해야하기 때문에 다시 시도해야하지만 이전 버전은 여전히 Redis에있는 것으로 보입니다.
Google에 표시 할 코드가 있습니까? – MarcoL
StackOverflow에 오신 것을 환영합니다. 사람들이 당신을 도울 수 있도록하기 위해 이미 작업 한 내용을 보여주는 질문에 자신의 코드 (예 : 코드)를 넣어야합니다. 그러면 우리는 당신을 도울 가능성이 더 높습니다 :) – deeveeABC