public void Delete_Job_Run() { using (this.GivenRunningServerWithWebApi()) { var client = new JobbrClient(this.BackendAddress); var job = new Job(); this.JobStorage.AddJob(job); var trigger = new RecurringTrigger(); this.JobStorage.AddTrigger(job.Id, trigger); var jobRun = new JobRun { Job = new Job { Id = job.Id }, Trigger = new RecurringTrigger { Id = trigger.Id }, State = JobRunStates.Completed }; this.JobStorage.AddJobRun(jobRun); client.DeleteJobRun(jobRun.Id); var jobRun2 = this.JobStorage.GetJobRunById(jobRun.Id); Assert.IsTrue(jobRun2.Deleted); } }
public void Query_Jobs_Total_Items() { using (this.GivenRunningServerWithWebApi()) { var client = new JobbrClient(this.BackendAddress); this.JobStorage.AddJob(new Job { Title = "title1", Type = "Some.Type1", UniqueName = "unique1" }); this.JobStorage.AddJob(new Job { Title = "title2", Type = "Some.Type2", UniqueName = "unique2" }); this.JobStorage.AddJob(new Job { Title = "title3", Type = "Some.Type3", UniqueName = "unique3" }); this.JobStorage.AddJob(new Job { Title = "title4", Type = "Some.Type4", UniqueName = "unique4" }); this.JobStorage.AddJob(new Job { Title = "title5", Type = "Some.Type5", UniqueName = "unique5" }); var result = client.QueryJobs(); Assert.AreEqual(5, result.TotalItems); } }
public void GetJobRunsByTriggerId() { using (this.GivenRunningServerWithWebApi()) { var client = new JobbrClient(this.BackendAddress); var job = new Job(); this.JobStorage.AddJob(job); var trigger = new RecurringTrigger(); this.JobStorage.AddTrigger(job.Id, trigger); var jobRun = new JobRun { Job = new Job { Id = job.Id }, Trigger = new RecurringTrigger { Id = trigger.Id } }; this.JobStorage.AddJobRun(jobRun); var jobRun2 = new JobRun { Job = new Job { Id = job.Id }, Trigger = new RecurringTrigger { Id = trigger.Id } }; this.JobStorage.AddJobRun(jobRun2); var jobRuns = client.GetJobRunsByTriggerId(job.Id, trigger.Id); Assert.AreEqual(2, jobRuns.TotalItems); } }
public void GetJobRunById() { using (this.GivenRunningServerWithWebApi()) { var client = new JobbrClient(this.BackendAddress); var job = new Job(); this.JobStorage.AddJob(job); var trigger = new RecurringTrigger(); this.JobStorage.AddTrigger(job.Id, trigger); var jobRun = new JobRun { Job = new Job { Id = job.Id }, Trigger = new RecurringTrigger { Id = trigger.Id } }; this.JobStorage.AddJobRun(jobRun); var jobRunDto = client.GetJobRunById(jobRun.Id); Assert.IsNotNull(jobRunDto); Assert.AreEqual(jobRun.Id, jobRunDto.JobRunId); Assert.AreEqual(jobRun.Job.Id, jobRunDto.JobId); Assert.AreEqual(jobRun.Trigger.Id, jobRunDto.TriggerId); } }
public void ServerWithHostPathDash_AccessHostRootDash_NoError() { var host = $"http://localhost:{NextFreeTcpPort()}"; this.GivenRunningServerWithWebApi(host + "/path/"); var client = new JobbrClient(host + "/path"); Assert.IsTrue(client.IsAvailable()); }
public void ServerWithRootedHostPlain_AccessHostRootPlain_NoError() { var host = $"http://localhost:{NextFreeTcpPort()}"; this.GivenRunningServerWithWebApi(host); var client = new JobbrClient(host); Assert.IsTrue(client.IsAvailable()); }
public static void Main(string[] args) { var jobbrClient = new JobbrClient("http://localhost:1337"); var allJobs = jobbrClient.GetAllJobs(); if (allJobs.Count == 0) { Console.WriteLine("At least one job is required to run this demo. Press enter to quit..."); Console.ReadLine(); return; } var jobId = allJobs.First().Id; var trigger = jobbrClient.AddTrigger(jobId, new InstantTriggerDto { IsActive = true, UserDisplayName = "userName" }); Console.WriteLine("Got Trigger with Id:" + trigger.Id); var jobRuns = jobbrClient.GetJobRunsByTriggerId(jobId, trigger.Id); Console.WriteLine("There are {0} jobruns assigned to this trigger id.", jobRuns.Count); var jobRun = jobbrClient.GetJobRunById(jobRuns[0].JobRunId); Console.WriteLine("Current State: " + jobRun.State); Console.WriteLine("------------------------------------------------------------------------------"); Console.ReadLine(); var createdTrigger = jobbrClient.AddTrigger(jobId, new ScheduledTriggerDto { IsActive = true, UserDisplayName = "userName", StartDateTimeUtc = DateTime.UtcNow.AddMinutes(30) }); Console.WriteLine("Created FutureTrigger with Id:" + trigger.Id + ", IsActive: " + createdTrigger.IsActive); var futureTrigger = jobbrClient.GetTriggerById <ScheduledTriggerDto>(jobId, createdTrigger.Id); Console.WriteLine("Got FutureTrigger by Id:" + trigger.Id + ", IsActive: " + createdTrigger.IsActive); var disableTriggerInfo = new ScheduledTriggerDto() { Id = futureTrigger.Id, IsActive = false }; var dectivatedTrigger = jobbrClient.UpdateTrigger(jobId, disableTriggerInfo); Console.WriteLine("Disabled FutureTrigger width Id:" + trigger.Id + ", IsActive: " + dectivatedTrigger.IsActive); Console.WriteLine("Press enter to quit..."); Console.ReadLine(); }
public void RetrievingJobById() { using (this.GivenRunningServerWithWebApi()) { var client = new JobbrClient(this.BackendAddress); var job = new Job(); this.JobStorage.AddJob(job); var jobDto = client.GetJob(job.Id); Assert.IsTrue(job.Id > 0); Assert.AreEqual(job.Id, jobDto.Id); } }
public void AddRecurringTrigger() { using (this.GivenRunningServerWithWebApi()) { var client = new JobbrClient(this.BackendAddress); var job = new Job(); this.JobStorage.AddJob(job); var triggerDto = client.AddTrigger(job.Id, new RecurringTriggerDto { Comment = "test" }); Assert.IsNotNull(triggerDto); Assert.IsTrue(triggerDto.Id > 0); } }
public void GetRecurringTrigger() { using (this.GivenRunningServerWithWebApi()) { var client = new JobbrClient(this.BackendAddress); var job = new Job(); this.JobStorage.AddJob(job); var trigger = new RecurringTrigger(); this.JobStorage.AddTrigger(job.Id, trigger); var triggerDto = client.GetTriggerById <RecurringTriggerDto>(job.Id, trigger.Id); Assert.IsNotNull(triggerDto); Assert.AreEqual(trigger.Id, triggerDto.Id); } }
public void Get_JobRuns_By_State() { using (this.GivenRunningServerWithWebApi()) { var client = new JobbrClient(this.BackendAddress); var job = new Job(); this.JobStorage.AddJob(job); var trigger = new RecurringTrigger(); this.JobStorage.AddTrigger(job.Id, trigger); var jobRun = new JobRun { Job = new Job { Id = job.Id }, Trigger = new RecurringTrigger { Id = trigger.Id }, State = JobRunStates.Completed }; this.JobStorage.AddJobRun(jobRun); var jobRun2 = new JobRun { Job = new Job { Id = job.Id }, Trigger = new RecurringTrigger { Id = trigger.Id }, State = JobRunStates.Completed }; this.JobStorage.AddJobRun(jobRun2); var jobRun3 = new JobRun { Job = new Job { Id = job.Id }, Trigger = new RecurringTrigger { Id = trigger.Id }, State = JobRunStates.Failed }; this.JobStorage.AddJobRun(jobRun3); var jobRuns = client.QueryJobRunsByState("Completed"); Assert.AreEqual(2, jobRuns.TotalItems); } }
public void UpdateScheduledTrigger() { using (this.GivenRunningServerWithWebApi()) { var client = new JobbrClient(this.BackendAddress); var job = new Job(); this.JobStorage.AddJob(job); var trigger = new ScheduledTrigger(); this.JobStorage.AddTrigger(job.Id, trigger); var triggerDto = client.UpdateTrigger(job.Id, new ScheduledTriggerDto { Id = trigger.Id, IsActive = true }); Assert.IsNotNull(triggerDto); Assert.IsTrue(triggerDto.IsActive); } }