public void CreateNewTask() { if (_schedulerViewModel.CurrentEnvironment?.Connection != null && !_schedulerViewModel.CurrentEnvironment.Connection.IsConnected) { ShowServerDisconnectedPopup(); return; } if (_schedulerViewModel.IsDirty) { _schedulerViewModel.PopupController.Show(Core.SchedulerUnsavedTaskMessage, Core.SchedulerUnsavedTaskHeader, MessageBoxButton.OK, MessageBoxImage.Error, null, false, true, false, false, false, false); return; } var dev2DailyTrigger = new Dev2DailyTrigger(new TaskServiceConvertorFactory(), new DailyTrigger()); var scheduleTrigger = SchedulerFactory.CreateTrigger(TaskState.Ready, dev2DailyTrigger); ScheduledResource scheduledResource = new ScheduledResource(Core.SchedulerNewTaskName + _newTaskCounter, SchedulerStatus.Enabled, scheduleTrigger.Trigger.Instance.StartBoundary, scheduleTrigger, string.Empty, Guid.NewGuid().ToString()); scheduledResource.OldName = scheduledResource.Name; var newres = _schedulerViewModel.ScheduledResourceModel.ScheduledResources[_schedulerViewModel.ScheduledResourceModel.ScheduledResources.Count == 1 ? 0 : _schedulerViewModel.ScheduledResourceModel.ScheduledResources.Count - 1]; _schedulerViewModel.ScheduledResourceModel.ScheduledResources[_schedulerViewModel.ScheduledResourceModel.ScheduledResources.Count == 1 ? 0 : _schedulerViewModel.ScheduledResourceModel.ScheduledResources.Count - 1] = scheduledResource; _schedulerViewModel.ScheduledResourceModel.ScheduledResources.Add(newres); _newTaskCounter++; _schedulerViewModel.NotifyOfPropertyChange(() => _schedulerViewModel.TaskList); _schedulerViewModel.SelectedTask = _schedulerViewModel.ScheduledResourceModel.ScheduledResources[_schedulerViewModel.ScheduledResourceModel.ScheduledResources.Count == 1 ? 1 : _schedulerViewModel.ScheduledResourceModel.ScheduledResources.Count - 2]; _schedulerViewModel.WorkflowName = string.Empty; _schedulerViewModel.SelectedTask.IsNew = true; ViewModelUtils.RaiseCanExecuteChanged(_schedulerViewModel.NewCommand); }
private StringBuilder RunOutput() { var esbMethod = new GetScheduledResources(); _factory = new Mock <IServerSchedulerFactory>(); var security = new Mock <ISecurityWrapper>(); esbMethod.SecurityWrapper = security.Object; var model = new Mock <IScheduledResourceModel>(); var ws = new Mock <IWorkspace>(); var trigger = new ScheduleTrigger(TaskState.Disabled, new Dev2DailyTrigger(new TaskServiceConvertorFactory(), new DailyTrigger(21)), new Dev2TaskService(new TaskServiceConvertorFactory()), new TaskServiceConvertorFactory()); var res = new ScheduledResource("a", SchedulerStatus.Enabled, DateTime.Now, trigger, "dave"); _factory.Setup( a => a.CreateModel(GlobalConstants.SchedulerFolderId, It.IsAny <ISecurityWrapper>())).Returns(model.Object); model.Setup(a => a.GetScheduledResources()).Returns(new ObservableCollection <IScheduledResource>() { res }); esbMethod.SchedulerFactory = _factory.Object; var output = esbMethod.Execute(new Dictionary <string, StringBuilder>(), ws.Object); return(output); }
ExecuteMessage RunOutput(bool expectCorrectInput, bool hasUserNameAndPassword, bool delete) { const string username = "******"; const string password = "******"; var esbMethod = new SaveScheduledResource(); var security = new Mock <ISecurityWrapper>(); esbMethod.SecurityWrapper = security.Object; var factory = new Mock <IServerSchedulerFactory>(); var model = new Mock <IScheduledResourceModel>(); var ws = new Mock <IWorkspace>(); var trigger = new ScheduleTrigger(TaskState.Disabled, new Dev2DailyTrigger(new TaskServiceConvertorFactory(), new DailyTrigger(21)), new Dev2TaskService(new TaskServiceConvertorFactory()), new TaskServiceConvertorFactory()); var res = new ScheduledResource("a", SchedulerStatus.Enabled, DateTime.Now, trigger, "dave", Guid.NewGuid().ToString()); var inp = new Dictionary <string, StringBuilder>(); factory.Setup( a => a.CreateModel(GlobalConstants.SchedulerFolderId, It.IsAny <ISecurityWrapper>())).Returns(model.Object); var serialiser = new Dev2JsonSerializer(); if (expectCorrectInput) { model.Setup(a => a.Save(It.IsAny <ScheduledResource>(), username, password)).Verifiable(); inp.Add("Resource", serialiser.SerializeToBuilder(res)); } if (hasUserNameAndPassword) { inp.Add("UserName", new StringBuilder("user")); inp.Add("Password", new StringBuilder("pass")); } if (delete) { model.Setup(a => a.DeleteSchedule(It.IsAny <IScheduledResource>())).Verifiable(); inp.Add("PreviousResource", serialiser.SerializeToBuilder(res)); } esbMethod.SchedulerFactory = factory.Object; var output = esbMethod.Execute(inp, ws.Object); if (expectCorrectInput && hasUserNameAndPassword) { model.Verify(a => a.Save(It.IsAny <ScheduledResource>(), username, password)); } if (delete) { model.Verify(a => a.DeleteSchedule(It.IsAny <IScheduledResource>())); } return(serialiser.Deserialize <ExecuteMessage>(output)); }
public void ScheduledResource_Constructor() { var trigger = new Mock <IScheduleTrigger>().Object; var res = new ScheduledResource("bob", SchedulerStatus.Enabled, DateTime.MaxValue, trigger, "rory", Guid.NewGuid().ToString()); Assert.AreEqual("bob", res.Name); Assert.AreEqual(SchedulerStatus.Enabled, res.Status); Assert.AreEqual(DateTime.MaxValue, res.NextRunDate); Assert.AreEqual(trigger, res.Trigger); Assert.AreEqual("rory", res.WorkflowName); }
public void ScheduledResource_Constructor() { IScheduleTrigger trigger = new Mock<IScheduleTrigger>().Object; ScheduledResource res = new ScheduledResource("bob", SchedulerStatus.Enabled, DateTime.MaxValue, trigger, "rory"); Assert.AreEqual("bob", res.Name); Assert.AreEqual(SchedulerStatus.Enabled, res.Status); Assert.AreEqual(DateTime.MaxValue, res.NextRunDate); Assert.AreEqual(trigger, res.Trigger); Assert.AreEqual("rory", res.WorkflowName); }
public void ScheduledResource_Properties() { IScheduleTrigger trigger = new Mock <IScheduleTrigger>().Object; var res = new ScheduledResource("bob", SchedulerStatus.Enabled, DateTime.MaxValue, trigger, "rory"); res.Password = "******"; Assert.AreEqual("PWD", res.Password); res.UserName = "******"; Assert.AreEqual("User", res.UserName); res.RunAsapIfScheduleMissed = false; Assert.IsFalse(res.RunAsapIfScheduleMissed); res.NumberOfHistoryToKeep = 25; Assert.AreEqual(25, res.NumberOfHistoryToKeep); res.AllowMultipleIstances = true; Assert.AreEqual(true, res.AllowMultipleIstances); res.OldName = "bob"; Assert.AreEqual("bob", res.OldName); }
public void ScheduledResource_Properties() { IScheduleTrigger trigger = new Mock<IScheduleTrigger>().Object; var res = new ScheduledResource("bob", SchedulerStatus.Enabled, DateTime.MaxValue, trigger, "rory"); res.Password = "******"; Assert.AreEqual("PWD", res.Password); res.UserName = "******"; Assert.AreEqual("User", res.UserName); res.RunAsapIfScheduleMissed = false; Assert.IsFalse(res.RunAsapIfScheduleMissed); res.NumberOfHistoryToKeep = 25; Assert.AreEqual(25, res.NumberOfHistoryToKeep); res.AllowMultipleIstances = true; Assert.AreEqual(true, res.AllowMultipleIstances); res.OldName = "bob"; Assert.AreEqual("bob", res.OldName); }
private List <IResourceHistory> RunOutput(bool expectCorrectInput) { var esbMethod = new GetScheduledResourceHistory(); var security = new Mock <ISecurityWrapper>(); esbMethod.SecurityWrapper = security.Object; var factory = new Mock <IServerSchedulerFactory>(); var model = new Mock <IScheduledResourceModel>(); var ws = new Mock <IWorkspace>(); var history = new List <IResourceHistory> { new ResourceHistory("", new List <IDebugState> { new DebugState() }, new EventInfo(DateTime.MinValue, TimeSpan.MaxValue, DateTime.MaxValue, ScheduleRunStatus.Error, "115"), "leon") }; var trigger = new ScheduleTrigger(TaskState.Disabled, new Dev2DailyTrigger(new TaskServiceConvertorFactory(), new DailyTrigger(21)), new Dev2TaskService(new TaskServiceConvertorFactory()), new TaskServiceConvertorFactory()); var res = new ScheduledResource("a", SchedulerStatus.Enabled, DateTime.Now, trigger, "dave"); Dictionary <string, StringBuilder> inp = new Dictionary <string, StringBuilder>(); factory.Setup( a => a.CreateModel(GlobalConstants.SchedulerFolderId, It.IsAny <ISecurityWrapper>())).Returns(model.Object); Dev2JsonSerializer serialiser = new Dev2JsonSerializer(); if (expectCorrectInput) { model.Setup(a => a.CreateHistory(It.IsAny <ScheduledResource>())).Returns(history).Verifiable(); inp.Add("Resource", serialiser.SerializeToBuilder(res)); } esbMethod.SchedulerFactory = factory.Object; var output = esbMethod.Execute(inp, ws.Object); return(serialiser.Deserialize <List <IResourceHistory> >(output)); }
public void CreateNewTask() { if (CurrentEnvironment != null) { Dev2Logger.Log.Info(String.Format("Delete Schedule Environment: {0} ", CurrentEnvironment.Name)); } var dev2DailyTrigger = new Dev2DailyTrigger(new TaskServiceConvertorFactory(), new DailyTrigger()); var scheduleTrigger = _schedulerFactory.CreateTrigger(TaskState.Ready, dev2DailyTrigger); ScheduledResource scheduledResource = new ScheduledResource(NewTaskName + _newTaskCounter, SchedulerStatus.Enabled, scheduleTrigger.Trigger.Instance.StartBoundary, scheduleTrigger, string.Empty) { IsDirty = true }; scheduledResource.OldName = scheduledResource.Name; ScheduledResourceModel.ScheduledResources.Add(scheduledResource); _newTaskCounter++; NotifyOfPropertyChange(() => TaskList); SelectedTask = ScheduledResourceModel.ScheduledResources.Last(); WorkflowName = string.Empty; SelectedTask.IsNew = true; }
private ExecuteMessage RunOutput(bool expectCorrectInput) { var esbMethod = new DeleteScheduledResource(); var factory = new Mock <IServerSchedulerFactory>(); var model = new Mock <IScheduledResourceModel>(); var ws = new Mock <IWorkspace>(); var trigger = new ScheduleTrigger(TaskState.Disabled, new Dev2DailyTrigger(new TaskServiceConvertorFactory(), new DailyTrigger(21)), new Dev2TaskService(new TaskServiceConvertorFactory()), new TaskServiceConvertorFactory()); var res = new ScheduledResource("a", SchedulerStatus.Enabled, DateTime.Now, trigger, "dave"); var security = new Mock <ISecurityWrapper>(); esbMethod.SecurityWrapper = security.Object; Dictionary <string, StringBuilder> inp = new Dictionary <string, StringBuilder>(); factory.Setup( a => a.CreateModel(GlobalConstants.SchedulerFolderId, It.IsAny <ISecurityWrapper>())).Returns(model.Object); Dev2JsonSerializer serialiser = new Dev2JsonSerializer(); if (expectCorrectInput) { model.Setup(a => a.DeleteSchedule(It.IsAny <ScheduledResource>())).Verifiable(); inp.Add("Resource", serialiser.SerializeToBuilder(res)); } esbMethod.SchedulerFactory = factory.Object; var output = esbMethod.Execute(inp, ws.Object); if (expectCorrectInput) { model.Verify(a => a.DeleteSchedule(It.IsAny <ScheduledResource>())); } return(serialiser.Deserialize <ExecuteMessage>(output)); }