public void JobRemovedFromContainerAfterRemovalTimeElapsed() { var wait = new ManualResetEvent(false); var asyncFunc = new Mock<IAsyncCommand>(); var timeSpan = new Mock<IAsyncCommandItemTimeSpan>(); ILog logger = GetLogger(); asyncFunc.Setup(a => a.Progress.Status).Returns(StatusEnum.Finished); timeSpan.Setup(t => t.Time).Returns(new TimeSpan(0, 0, 0, 0, 1)); var container = new AsyncCommandContainer(timeSpan.Object, logger); container.Add(asyncFunc.Object, "", asyncFunc.Object.GetType()); container.SetInactive("", asyncFunc.Object.GetType()); container.GetContainerItem("", asyncFunc.Object.GetType()).OnItemRemoved += () => wait.Set(); wait.WaitOne(3000); Assert.IsFalse(container.Exists("", asyncFunc.Object.GetType())); }
public void SettingInactiveJobWhenRunningThrowsException() { var func = new Mock<IAsyncCommand>(); ILog logger = GetLogger(); func.Setup(f => f.Progress).Returns(new FuncStatus { Status = StatusEnum.Running }); var container = new AsyncCommandContainer(new AsyncCommandItemTimeSpan(), logger); container.Add(func.Object, "", func.Object.GetType()); container.SetInactive("", func.Object.GetType()); }