public void NoOptionsSet() { var options = new PollJobOptions(); options.Validate(); Assert.Null(options.GetEffectiveDeadline()); }
public void DeadlineAndTimeout() { var options = new PollJobOptions { Deadline = DateTimeOffset.UtcNow, Timeout = TimeSpan.FromDays(1) }; Assert.Throws <ArgumentException>(() => options.Validate()); }
public void Deadline() { var deadline = new DateTimeOffset(2016, 6, 19, 2, 3, 4, TimeSpan.FromHours(1)); var options = new PollJobOptions { Deadline = deadline }; options.Validate(); Assert.Equal(deadline, options.GetEffectiveDeadline()); }
public void Timeout() { var timeout = TimeSpan.FromDays(2); var options = new PollJobOptions { Timeout = timeout }; var now = DateTime.UtcNow; var effectiveDeadline = options.GetEffectiveDeadline(); var tolerance = TimeSpan.FromSeconds(1); Assert.InRange(effectiveDeadline.Value, now + timeout - tolerance, now + timeout + tolerance); }