public void ScheduledResourceModel_HistoryTest_CorrectTaskEventsSelected() { // setup var log = new MockTaskEventLog { new MockTaskEvent(Guid.NewGuid(), 12, "Task Started", new DateTime(2000, 1, 1), "12345", "dave"), new MockTaskEvent(Guid.NewGuid(), 12, "2", new DateTime(2001, 1, 1), "12346", "dave"), new MockTaskEvent(Guid.NewGuid(), 12, "3", new DateTime(2002, 1, 1), "12347", "dave"), new MockTaskEvent(Guid.NewGuid(), 12, "Task Completed", new DateTime(2003, 1, 1), "12348", "dave") }; var dirHelper = new Mock <IDirectoryHelper>(); var fileHelper = new Mock <IFileHelper>(); var res = new Mock <IScheduledResource>(); //setup expectancies dirHelper.Setup(a => a.GetFiles(@"c:\")).Returns(new[] { "b_12345_Bob" }); fileHelper.Setup(a => a.ReadAllText("b_12345_Bob")).Returns(""); res.Setup(a => a.Name).Returns("Bob"); _convertorFactory.Setup(a => a.CreateTaskEventLog(It.IsAny <string>())).Returns(log); //construct var model = new ScheduledResourceModel(_mockService.Object, _folderId, _agentPath, _convertorFactory.Object, @"c:\", _wrapper.Object); IList <IResourceHistory> history = model.CreateHistory(res.Object); Assert.AreEqual(2, history.Count); Assert.AreEqual(new DateTime(2003, 1, 1), history.First().TaskHistoryOutput.StartDate); Assert.AreEqual(new DateTime(2000, 1, 1), history.Last().TaskHistoryOutput.EndDate); }
public void ScheduledResourceModel_HistoryTestStatusFailedWindowsSchedulerError() { //setup var log = new MockTaskEventLog { new MockTaskEvent(Guid.NewGuid(), 104, "Task Started", new DateTime(2000, 1, 1), "12345", "dave"), new MockTaskEvent(Guid.NewGuid(), 104, "2", new DateTime(2001, 1, 1), "12346", "dave"), new MockTaskEvent(Guid.NewGuid(), 104, "3", new DateTime(2002, 1, 1), "12347", "dave"), new MockTaskEvent(Guid.NewGuid(), 104, "Task Completed", new DateTime(2003, 1, 1), "12348", "dave") }; // this should return two history items without any debug output var mockDirectory = new Mock <IDirectory>(); var fileHelper = new Mock <IFile>(); var res = new Mock <IScheduledResource>(); //expectations mockDirectory.Setup(a => a.GetFiles(@"c:\")).Returns(new[] { "b_12345_Bob" }); fileHelper.Setup(a => a.ReadAllText("b_12345_Bob")) .Returns("[{\"$type\":\"Dev2.Diagnostics.Debug.DebugState, Dev2.Diagnostics\",\"ID\":\"cd902be2-a202-4d54-8c07-c5f56bae97fe\",\"ParentID\":\"00000000-0000-0000-0000-000000000000\",\"ServerID\":\"00000000-0000-0000-0000-000000000000\",\"EnvironmentID\":\"00000000-0000-0000-0000-000000000000\",\"ClientID\":\"00000000-0000-0000-0000-000000000000\",\"StateType\":64,\"DisplayName\":\"dave\",\"HasError\":true,\"ErrorMessage\":\"Service [ dave ] not found.\",\"Version\":\"\",\"Name\":\"DynamicServicesInvoker\",\"ActivityType\":0,\"Duration\":\"00:00:00\",\"DurationString\":\"PT0S\",\"StartTime\":\"2014-03-20T17:23:14.0224329+02:00\",\"EndTime\":\"2014-03-20T17:23:14.0224329+02:00\",\"Inputs\":[],\"Outputs\":[],\"Server\":\"\",\"WorkspaceID\":\"00000000-0000-0000-0000-000000000000\",\"OriginalInstanceID\":\"00000000-0000-0000-0000-000000000000\",\"OriginatingResourceID\":\"00000000-0000-0000-0000-000000000000\",\"IsSimulation\":false,\"Message\":null,\"NumberOfSteps\":0,\"Origin\":\"\",\"ExecutionOrigin\":0,\"ExecutionOriginDescription\":null,\"ExecutingUser\":null,\"SessionID\":\"00000000-0000-0000-0000-000000000000\"}]"); res.Setup(a => a.Name).Returns("Bob"); _convertorFactory.Setup(a => a.CreateTaskEventLog(It.IsAny <string>())).Returns(log); //test var model = new ScheduledResourceModel(_mockService.Object, _folderId, _agentPath, _convertorFactory.Object, @"c:\", _wrapper.Object, a => a.WorkflowName, fileHelper.Object, mockDirectory.Object); var history = model.CreateHistory(res.Object); Assert.AreEqual(1, history.Count); Assert.AreEqual(ScheduleRunStatus.Error, history.Last().TaskHistoryOutput.Success); }
public void ScheduledResourceModel_HistoryTestDebugCreated_StatusFailureIfDebugHasError() { //setup var log = new MockTaskEventLog { new MockTaskEvent(Guid.NewGuid(), 12, "Task Started", new DateTime(2000, 1, 1), "12345", "dave"), new MockTaskEvent(Guid.NewGuid(), 12, "2", new DateTime(2001, 1, 1), "12346", "dave"), new MockTaskEvent(Guid.NewGuid(), 12, "3", new DateTime(2002, 1, 1), "12347", "dave"), new MockTaskEvent(Guid.NewGuid(), 12, "Task Completed", new DateTime(2003, 1, 1), "12348", "dave") }; // this should return two history items without any debug output var mockDirectory = new Mock <IDirectory>(); var fileHelper = new Mock <IFile>(); var res = new Mock <IScheduledResource>(); //expectations mockDirectory.Setup(a => a.GetFiles(@"c:\")).Returns(new[] { "b_12345_Bob" }); fileHelper.Setup(a => a.ReadAllText("b_12345_Bob")) .Returns("[{\"$type\":\"Dev2.Diagnostics.Debug.DebugState, Dev2.Diagnostics\",\"ID\":\"05d4e815-61bf-49ad-b46c-b6f0e0e2e839\",\"ParentID\":\"00000000-0000-0000-0000-000000000000\",\"ServerID\":\"00000000-0000-0000-0000-000000000000\",\"EnvironmentID\":\"00000000-0000-0000-0000-000000000000\",\"ClientID\":\"00000000-0000-0000-0000-000000000000\",\"StateType\":64,\"DisplayName\":\"BUGS/Bug_11889\",\"HasError\":true,\"ErrorMessage\":\"Service [ BUGS/Bug_11889 ] not found.\",\"Version\":\"\",\"Name\":\"EsbServiceInvoker\",\"ActivityType\":0,\"Duration\":\"00:00:00\",\"DurationString\":\"PT0S\",\"StartTime\":\"2014-07-24T12:49:28.4006805+02:00\",\"EndTime\":\"2014-07-24T12:49:28.4006805+02:00\",\"Inputs\":[],\"Outputs\":[],\"Server\":\"\",\"WorkspaceID\":\"00000000-0000-0000-0000-000000000000\",\"OriginalInstanceID\":\"00000000-0000-0000-0000-000000000000\",\"OriginatingResourceID\":\"00000000-0000-0000-0000-000000000000\",\"IsSimulation\":false,\"Message\":null,\"NumberOfSteps\":0,\"Origin\":\"\",\"ExecutionOrigin\":0,\"ExecutionOriginDescription\":null,\"ExecutingUser\":null,\"SessionID\":\"00000000-0000-0000-0000-000000000000\",\"WorkSurfaceMappingId\":\"00000000-0000-0000-0000-000000000000\"}]"); res.Setup(a => a.Name).Returns("Bob"); _convertorFactory.Setup(a => a.CreateTaskEventLog(It.IsAny <string>())).Returns(log); //test var model = new ScheduledResourceModel(_mockService.Object, _folderId, _agentPath, _convertorFactory.Object, @"c:\", _wrapper.Object, a => a.WorkflowName, fileHelper.Object, mockDirectory.Object); var history = model.CreateHistory(res.Object); Assert.AreEqual(1, history.Count); Assert.AreEqual(1, history.Last().DebugOutput.Count); Assert.AreEqual("Bob", history.Last().UserName); }
public void ScheduledResourceModel_HistoryTestDebugCreated() { var startTime = new DateTime(2000, 1, 1); var endTime = new DateTime(2003, 1, 1); //setup var log = new MockTaskEventLog { new MockTaskEvent(Guid.NewGuid(), 12, "Task Started", startTime, "12345", "dave"), new MockTaskEvent(Guid.NewGuid(), 12, "2", new DateTime(2001, 1, 1), "12345", "dave"), new MockTaskEvent(Guid.NewGuid(), 12, "3", new DateTime(2002, 1, 1), "12345", "dave"), new MockTaskEvent(Guid.NewGuid(), 12, "Task Completed", endTime, "12345", "dave") }; // this should return two history items without any debug output var dirHelper = new Mock <IDirectoryHelper>(); var fileHelper = new Mock <IFileHelper>(); var res = new Mock <IScheduledResource>(); //expectations dirHelper.Setup(a => a.GetFiles(@"c:\")).Returns(new[] { "b_12345_Bob" }); const string content = "[{\"$type\":\"Dev2.Diagnostics.Debug.DebugState, Dev2.Diagnostics\",\"ID\":\"cd902be2-a202-4d54-8c07-c5f56bae97fe\",\"ParentID\":\"00000000-0000-0000-0000-000000000000\",\"ServerID\":\"00000000-0000-0000-0000-000000000000\",\"EnvironmentID\":\"00000000-0000-0000-0000-000000000000\",\"ClientID\":\"00000000-0000-0000-0000-000000000000\",\"StateType\":64,\"DisplayName\":\"dave\",\"HasError\":false,\"ErrorMessage\":\"Service [ dave ] not found.\",\"Version\":\"\",\"Name\":\"DynamicServicesInvoker\",\"ActivityType\":0,\"Duration\":\"00:00:00\",\"DurationString\":\"PT0S\",\"StartTime\":\"2014-03-20T17:23:14.0224329+02:00\",\"EndTime\":\"2014-03-20T17:23:14.0224329+02:00\",\"Inputs\":[],\"Outputs\":[],\"Server\":\"\",\"WorkspaceID\":\"00000000-0000-0000-0000-000000000000\",\"OriginalInstanceID\":\"00000000-0000-0000-0000-000000000000\",\"OriginatingResourceID\":\"00000000-0000-0000-0000-000000000000\",\"IsSimulation\":false,\"Message\":null,\"NumberOfSteps\":0,\"Origin\":\"\",\"ExecutionOrigin\":0,\"ExecutionOriginDescription\":null,\"ExecutingUser\":null,\"SessionID\":\"00000000-0000-0000-0000-000000000000\"}]"; fileHelper.Setup(a => a.ReadAllText("b_12345_Bob")) .Returns(content); res.Setup(a => a.Name).Returns("Bob"); _convertorFactory.Setup(a => a.CreateTaskEventLog(It.IsAny <string>())).Returns(log); //test // ReSharper disable UseObjectOrCollectionInitializer var model = new ScheduledResourceModel(_mockService.Object, _folderId, _agentPath, _convertorFactory.Object, // ReSharper restore UseObjectOrCollectionInitializer @"c:\", _wrapper.Object, a => a.WorkflowName); model.DirectoryHelper = dirHelper.Object; model.FileHelper = fileHelper.Object; //var history = RunOutput(startTime, endTime, "Bob"); var serializer = new Dev2JsonSerializer(); var debugStates = serializer.Deserialize <List <IDebugState> >(content).First(); IList <IResourceHistory> history = model.CreateHistory(res.Object); Assert.AreEqual(1, history.Count); Assert.AreEqual(debugStates.StartTime, history.First().DebugOutput.First().StartTime); Assert.AreEqual(debugStates.EndTime, history.First().DebugOutput.First().EndTime); Assert.AreEqual(history.Last().DebugOutput.Count, 1); Assert.AreEqual("Bob", history.Last().UserName); }