private TimeSpan ProcessDelay(TimeSpan delay, double playbackSpeed) { var sw = new Stopwatch(); var reader = new Mock<IRecordedMessageReader>(); var engine = new RecordedMessageDelayEngine(reader.Object); reader.SetupGet(x => x.PlaybackSpeed).Returns(playbackSpeed); sw.Start(); var processed = engine.Process(new SetNextMessageDelayMessage(delay)); sw.Stop(); Assert.True(processed); reader.VerifyAll(); return sw.Elapsed; }