public void Setup() { _apiUserService = new Mock <IApiUserRepository>(); _campaignRepository = new Mock <ICampaignRepository>(); _dateTimeWrapper = new Mock <IDateTime>(); _fixture = new CampaignService(_apiUserService.Object, _campaignRepository.Object, _dateTimeWrapper.Object); const string apiToken = "qwerty1234"; _apiUserService.Setup(m => m.GetToken()).Returns(apiToken); MpPledgeCampaignSummaryDto dto = new MpPledgeCampaignSummaryDto() { PledgeCampaignId = _pledgeCampaignId, NoCommitmentCount = 1100, NoCommitmentAmount = 1200000.00M, TotalGiven = 38000000.00M, TotalCommitted = 95000000.00M, StartDate = new DateTime(2015, 11, 15), EndDate = new DateTime(2018, 12, 31), NotStartedCount = 1800, BehindCount = 3200, OnPaceCount = 1400, AheadCount = 500, CompletedCount = 390, TotalCount = 1800 + 3200 + 1400 + 500 + 390 }; _campaignRepository.Setup(m => m.GetPledgeCampaignSummary(apiToken, dto.PledgeCampaignId)).Returns(dto); }
public void ShouldGetPledgeCampaignSummary() { const string token = "xyz789"; const int pledgeCampaignId = 12345; var dto = new MpPledgeCampaignSummaryDto() { PledgeCampaignId = pledgeCampaignId, NoCommitmentCount = 1100, NoCommitmentAmount = 1200000.00M, TotalGiven = 38000000.00M, TotalCommitted = 95000000.00M, StartDate = new DateTime(2015, 11, 15), EndDate = new DateTime(2018, 12, 31), NotStartedCount = 1800, BehindCount = 3200, OnPaceCount = 1400, AheadCount = 500, CompletedCount = 390, TotalCount = 1800 + 3200 + 1400 + 500 + 390 }; var listOfList = new List <List <MpPledgeCampaignSummaryDto> > { new List <MpPledgeCampaignSummaryDto> { dto } }; _ministryPlatformRest.Setup(m => m.UsingAuthenticationToken(token)).Returns(_ministryPlatformRest.Object); _ministryPlatformRest.Setup(m => m.GetFromStoredProc <MpPledgeCampaignSummaryDto>( CampaignRepository.CampaignSummaryProcName, It.Is <Dictionary <string, object> >(parms => parms.Count == 1 && parms["@Pledge_Campaign_ID"].Equals(pledgeCampaignId)) )).Returns(listOfList); var result = _fixture.GetPledgeCampaignSummary(token, pledgeCampaignId); Assert.AreEqual(dto.PledgeCampaignId, result.PledgeCampaignId); Assert.AreEqual(dto.TotalGiven, result.TotalGiven); Assert.AreEqual(dto.TotalCommitted, result.TotalCommitted); Assert.AreEqual(dto.TotalCount, result.TotalCount); }
// Retrieve overall summary info for the whole campaign, or throw if the campaign does not exist public MpPledgeCampaignSummaryDto GetPledgeCampaignSummary(string token, int pledgeCampaignId) { var parameters = new Dictionary <string, object> { { "@Pledge_Campaign_ID", pledgeCampaignId } }; var storedProcReturn = _ministryPlatformRest.UsingAuthenticationToken(token).GetFromStoredProc <MpPledgeCampaignSummaryDto>(CampaignSummaryProcName, parameters); MpPledgeCampaignSummaryDto summary = storedProcReturn.FirstOrDefault()?.FirstOrDefault(); if (summary == null) { throw new PledgeCampaignNotFoundException(pledgeCampaignId); } summary.PledgeCampaignId = pledgeCampaignId; return(summary); }