public void Compute_ShouldReturnBids_WhenBelowMinimalAcceptedSpeed_ZeroLimit() { // Arrange var complier = new SignOfAttackCondition(_serviceProvider.Object); var orders = new List <BidEntry>() { new BidEntry() { Price = 1, Alive = true, AcceptedSpeed = 1, LimitSpeed = 4 }, new BidEntry() { Price = 2, Alive = true, LimitSpeed = 0, AcceptedSpeed = 2 } }; var config = new ApiConfiguration() { PriceThreshold = 1, LimitSpeed = 10, MinimalAcceptedSpeed = 4 }; // Act var data = complier.Compute(orders, config); // Assert Assert.AreEqual(0, data.Count()); }
public void Compute_ShouldReturnBids_WhenWithinThreashold() { // Arrange var complier = new SignOfAttackCondition(_serviceProvider.Object); var orders = new List <BidEntry>() { new BidEntry() { NiceHashId = "21", Price = 21.5, Alive = true, AcceptedSpeed = 1 }, new BidEntry() { NiceHashId = "20", Price = 22, Alive = true, LimitSpeed = 10 } }; var config = new ApiConfiguration() { PriceThreshold = 1, LimitSpeed = 11 }; // Act var data = complier.Compute(orders, config); // Assert Assert.AreEqual(1, data.Count()); Assert.AreEqual("21", data.First().BidEntry.NiceHashId); }
public void Compute_ShouldReturnEmptyList_WhenNothingMeetsCondition(int id) { // Arrange var complier = new SignOfAttackCondition(_serviceProvider.Object); var config = new ApiConfiguration() { PriceThreshold = 1, LimitSpeed = 10 }; // Act var data = complier.Compute(GetSignBidSet(id), config); // Assert Assert.IsFalse(data.Any()); }
public void Compute_ShouldReturnBidsUpdate_WhenBidSeen() { // Arrange var complier = new SignOfAttackCondition(_serviceProvider.Object); var orders = new List <BidEntry>() { new BidEntry() { NiceHashId = "11", Price = 11, Alive = true, AcceptedSpeed = 1 }, new BidEntry() { NiceHashId = "11", Price = 22, Alive = true, LimitSpeed = 0 } }; var config = new ApiConfiguration() { PriceThreshold = 1, LimitSpeed = 10 }; // Act var data = complier.Compute(orders, config); var data1 = complier.Compute(orders, config); // Assert Assert.AreEqual(1, data.Count()); Assert.AreEqual(1, data1.Count()); Assert.IsTrue(data1.First().Message.Contains("Progress")); }
public void Compute_ShouldReturnBids_WhenMetCondition_HasLimit() { // Arrange var complier = new SignOfAttackCondition(_serviceProvider.Object); var orders = new List <BidEntry>() { new BidEntry() { NiceHashId = "15", Price = 1, Alive = true, AcceptedSpeed = 1, LimitSpeed = 1 }, new BidEntry() { NiceHashId = "16", Price = 2, Alive = true, LimitSpeed = 10 } }; var config = new ApiConfiguration() { PriceThreshold = 1, LimitSpeed = 10 }; // Act var data = complier.Compute(orders, config); // Assert Assert.AreEqual(1, data.Count()); Assert.IsNotEmpty(data.First().Message); Assert.IsNotEmpty(data.First().Condition); }