public void GetTopDonations_ShouldReturnAnEmptyListOfDonations_WhenThereAreNoDonations() { var donationsRepository = Substitute.For <IDonationRepository>(); donationsRepository.GetAll().Returns(Enumerable.Empty <Donation>()); var donationsService = new DonationsService(donationsRepository); IEnumerable <Donation> topDonations = donationsService.GetTopDonations(1); CollectionAssert.AreEqual(Enumerable.Empty <Donation>(), topDonations); }
public void GetTopDonations_ShouldReturnAListOfDonations_InDescendingOrderByAmount_WhenThereAreDonations() { var smallDonation = new Donation { Amount = 10m }; var largeDonation = new Donation { Amount = 100m }; var donations = new[] { smallDonation, largeDonation }; var donationsRepository = Substitute.For<IDonationRepository>(); donationsRepository.GetAll().Returns(donations); var donationsService = new DonationsService(donationsRepository); IEnumerable<Donation> topDonations = donationsService.GetTopDonations(5); CollectionAssert.AreEqual(new[] { largeDonation, smallDonation }, topDonations); }
public void GetTopDonations_ShouldReturnTheSpecifiedNumberOfDonations_WhenThereAreDonations() { var smallDonation = new Donation { Amount = 10m }; var largeDonation = new Donation { Amount = 100m }; var donations = new[] { smallDonation, largeDonation }; var donationsRepository = Substitute.For <IDonationRepository>(); donationsRepository.GetAll().Returns(donations); var donationsService = new DonationsService(donationsRepository); IEnumerable <Donation> topDonations = donationsService.GetTopDonations(1); CollectionAssert.AreEqual(new[] { largeDonation }, topDonations); }
public void GetTopDonations_ShouldReturnAnEmptyListOfDonations_WhenThereAreNoDonations() { var donationsRepository = Substitute.For<IDonationRepository>(); donationsRepository.GetAll().Returns(Enumerable.Empty<Donation>()); var donationsService = new DonationsService(donationsRepository); IEnumerable<Donation> topDonations = donationsService.GetTopDonations(1); CollectionAssert.AreEqual(Enumerable.Empty<Donation>(), topDonations); }