protected void CreateHistory()
{
if (this.Repository != null)
{
IJob job = new TestJob() { Id = Guid.NewGuid() };
WorkerRecord workerRecord = new WorkerRecord()
{
ApplicationName = BlueCollarSection.Section.ApplicationName,
MachineAddress = Machine.Address,
MachineName = Machine.Name,
Name = "Test Worker",
QueueNames = "*",
Signal = WorkerSignal.Stop,
Status = WorkerStatus.Working,
Startup = WorkerStartupType.Automatic,
UpdatedOn = DateTime.UtcNow
};
this.Repository.CreateWorker(workerRecord, null);
WorkingRecord workingRecord = new WorkingRecord()
{
ApplicationName = workerRecord.ApplicationName,
Data = JsonConvert.SerializeObject(job),
JobName = job.Name,
JobType = job.GetType().FullName + ", " + job.GetType().Assembly.GetName().Name,
QueueName = "*",
QueuedOn = DateTime.UtcNow,
Signal = WorkingSignal.Cancel,
StartedOn = DateTime.UtcNow,
TryNumber = 1,
WorkerId = workerRecord.Id.Value
};
this.Repository.CreateWorking(workingRecord, null);
HistoryRecord historyRecord = new HistoryRecord()
{
ApplicationName = workingRecord.ApplicationName,
Data = workingRecord.Data,
FinishedOn = DateTime.UtcNow,
JobName = workingRecord.JobName,
JobType = workingRecord.JobType,
QueuedOn = workingRecord.QueuedOn,
QueueName = workingRecord.QueueName,
StartedOn = workingRecord.StartedOn,
Status = HistoryStatus.Succeeded,
TryNumber = workingRecord.TryNumber,
WorkerId = workingRecord.WorkerId
};
this.Repository.CreateHistory(historyRecord, null);
Assert.IsNotNull(historyRecord.Id);
}
}