Teste de unidade C # - Thread.Sleep (x) - Como zombar do relógio do sistema

Eu tenho que testar um método que faz uma certa quantidade de trabalho após um intervalo.

while (running)
{
    ...
    // Work
    ...
    Thread.Sleep(Interval);
}

O intervalo é passado como parâmetro para a classe, para que eu possa passar 0 ou 1, mas estava interessado em como zombar do relógio do sistema, se esse não fosse o caso.

No meu teste, eu gostaria de poder simplesmente definir o tempo para o TimeSpanIntervalo e faça com que o fio seja ativado.

Eu nunca escrevi testes para código que atua sobre o encadeamento em execução antes e tenho certeza de que existem algumas armadilhas a serem evitadas - sinta-se à vontade para elaborar qual abordagem você usa.

Obrigado!

questionAnswers(2)

yourAnswerToTheQuestion