BlueCollar.Test.RepositoryTests.GetWorkingSignals C# (CSharp) Method

GetWorkingSignals() protected method

Get working signals tests.
protected GetWorkingSignals ( ) : void
return void
        protected void GetWorkingSignals()
        {
            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);

                SignalsRecord signals = this.Repository.GetWorkingSignals(workerRecord.Id.Value, null, null);
                Assert.IsNotNull(signals);
                Assert.IsFalse(string.IsNullOrEmpty(signals.QueueNames));
                Assert.AreEqual(WorkingSignal.None, signals.WorkingSignal);

                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);

                signals = this.Repository.GetWorkingSignals(workerRecord.Id.Value, workingRecord.Id.Value, null);
                Assert.IsNotNull(signals);
                Assert.AreEqual(WorkingSignal.Cancel, signals.WorkingSignal);
            }
        }