public void GetCustomerWinAtUnusualRate_WhenRepositoryDataIsNull_ReturnNull() { // Arrange var stubUnsettledRepository = MockRepository.GenerateStub<IUnsettledRepository>(); stubUnsettledRepository.Stub(x => x.GetData("")).IgnoreArguments().Return(null); // Act var sut = new UnsettledBetService(stubUnsettledRepository, null); var result = sut.GetCustomerWinAtUnusualRate(); // Assert Assert.IsNull(result); }
public void GetCustomerWinAtUnusualRate_WhenOneCustomerWinsAtUnusualRate_ReturnCustomerId3() { // Arrange var stubData = new List<IUnsettledBet> { new UnsettledBet { CustomerId = 1, Stake = 5m, ToWin = 7m}, new UnsettledBet { CustomerId = 2, Stake = 5m, ToWin = 50m}, new UnsettledBet { CustomerId = 3, Stake = 5m, ToWin = 100m} }; var stubUnsettledRepository = MockRepository.GenerateStub<IUnsettledRepository>(); stubUnsettledRepository.Stub(x => x.GetData("")).IgnoreArguments().Return(stubData); // Act var sut = new UnsettledBetService(stubUnsettledRepository, null); var result = sut.GetCustomerWinAtUnusualRate(); // Assert Assert.AreEqual(3, result.Where(x => x.CustomerId == 3).Select(x => x.CustomerId).First()); }
public void GetCustomerWinAtUnusualRate_WhenTwoCustomersWinsAtUnusualRate_ReturnCustomer2and3() { // Arrange var stubData = new List<IUnsettledBet> { new UnsettledBet { CustomerId = 1, Stake = 5m, ToWin = 20m}, new UnsettledBet { CustomerId = 2, Stake = 5m, ToWin = 50m}, new UnsettledBet { CustomerId = 3, Stake = 5m, ToWin = 100m} }; var stubUnsettledRepository = MockRepository.GenerateStub<IUnsettledRepository>(); stubUnsettledRepository.Stub(x => x.GetData("")).IgnoreArguments().Return(stubData); // Act var sut = new UnsettledBetService(stubUnsettledRepository, null); var result = sut.GetCustomerWinAtUnusualRate().ToList(); // Assert var expected = new[] { 2, 3 }; var actual = result.Where(x => x.CustomerId == 2 || x.CustomerId == 3).Select(i => i.CustomerId).Distinct().ToArray(); CollectionAssert.AreEqual(expected, actual); }