public void Runner_CallingDispose_SourceChangedDoesntTriggerDrawView() { var sourceMonitor = new Mock<ISourceMonitor>(MockBehavior.Loose); var viewController = new Mock<IViewController>(MockBehavior.Loose); var solution = "solution.sln"; var activeDocument = String.Empty; var cursorPosition = 0; var content = "content"; var viewGenerator = new Mock<IViewGenerator>(MockBehavior.Loose); viewGenerator .Setup(generator => generator.GenerateViewAsync(solution, activeDocument, cursorPosition)) .Returns(Task.FromResult(content)); var runner = new Runner(sourceMonitor.Object, viewController.Object, viewGenerator.Object); runner.Dispose(); sourceMonitor.Raise(mock => mock.SourceChanged += null, new SourceMonitorArgs(solution, activeDocument, cursorPosition)); viewController.Verify(mock => mock.Draw(content), Times.Never()); }
public void Runner_CallingDisposeTwice_DoesntFail() { var sourceMonitor = new Mock<ISourceMonitor>(); var viewController = new Mock<IViewController>(); var viewGenerator = new Mock<IViewGenerator>(MockBehavior.Loose); var runner = new Runner(sourceMonitor.Object, viewController.Object, viewGenerator.Object); runner.Dispose(); runner.Dispose(); }