public void Handle_WhenAdvisoryDelayGreaterThanZero_ShouldSetAdvisoryDelay() { // Arrange const int delayTime = 100; Mock<IDateTime> dateTimeMock = new Mock<IDateTime>(); dateTimeMock.Setup(m => m.UtcNow).Returns(new DateTimeWrap(2016, 2, 1)); long expected = new DateTime(2016, 2, 1).Ticks + delayTime; var input = new JObject( new JProperty( "result", new JObject( new JProperty(JsonRpcConstants.ADVISORY_DELAY_PARAMETER_NAME, delayTime) ) ) ); // Act AdvisoryDelayHandler target = new AdvisoryDelayHandler(dateTimeMock.Object); var actual = target.Handle(null, input.ToString()); long advisoryDelay = UnitTestHelper.GetPrivateProperty<long>(target, "_advisoryDelay"); // Assert actual.Should().Be.True(); advisoryDelay.Should().Equal(expected); }
public void Handle_WhenAdvisoryDelayIsZero_ShouldSetAdvisoryDelayToZero() { // Arrange const long expected = 0; var input = new JObject( new JProperty("result", new JObject( new JProperty(JsonRpcConstants.ADVISORY_DELAY_PARAMETER_NAME, expected) )) ); // Act AdvisoryDelayHandler target = new AdvisoryDelayHandler(); var actual = target.Handle(null, input.ToString()); long advisoryDelay = UnitTestHelper.GetPrivateProperty<long>(target, "_advisoryDelay"); // Assert actual.Should().Be.True(); advisoryDelay.Should().Equal(expected); }