public DonationYearsDTO GetDonationYearsForAuthenticatedUser(string userToken) { var donations = _mpDonorRepository.GetDonationsForAuthenticatedUser(userToken, null, null); var years = new HashSet <string>(); if (donations != null && donations.Any()) { years.UnionWith(donations.Select(d => d.donationDate.Year.ToString())); } var donationYears = new DonationYearsDTO(); donationYears.AvailableDonationYears.AddRange(years.ToList()); return(donationYears); }
private DonationYearsDTO GetDonationYearsForDonor(MpContactDonor donor) { var donorIds = GetDonorIdsForDonor(donor); var donations = _mpDonorRepository.GetDonations(donorIds, null); var softCreditDonations = _mpDonorRepository.GetSoftCreditDonations(donorIds); var years = new HashSet <string>(); if (softCreditDonations != null && softCreditDonations.Any()) { years.UnionWith(softCreditDonations.Select(d => d.donationDate.Year.ToString())); } if (donations != null && donations.Any()) { years.UnionWith(donations.Select(d => d.donationDate.Year.ToString())); } var donationYears = new DonationYearsDTO(); donationYears.AvailableDonationYears.AddRange(years.ToList()); return(donationYears); }
public void TestGetDonationYears() { var donationYears = new List <string> { "1999", "2010", "2038" }; var dto = new DonationYearsDTO(); dto.AvailableDonationYears.AddRange(donationYears); gatewayDonationServiceMock.Setup(mocked => mocked.GetDonationYearsForAuthenticatedUser(authType + " " + authToken)).Returns(dto); var response = fixture.GetDonationYears(); gatewayDonationServiceMock.VerifyAll(); Assert.IsNotNull(response); Assert.IsInstanceOf <OkNegotiatedContentResult <DonationYearsDTO> >(response); var r = (OkNegotiatedContentResult <DonationYearsDTO>)response; Assert.IsNotNull(r.Content); Assert.AreSame(dto, r.Content); }