public void WhenAwardingPromoOnClient_ClientSaveDataIsUpdated() { MockBackend.GetTimeInMs().Returns(1000); ILoginPromotionData mockData = Substitute.For <ILoginPromotionData>(); ISingleLoginPromoProgressSaveData mockProgress = Substitute.For <ISingleLoginPromoProgressSaveData>(); LoginPromoPopupHelper systemUnderTest = CreateSystem(); systemUnderTest.AwardPromoOnClient(mockProgress, mockData); mockProgress.Received().OnAwarded(1000); }
public void ShouldShowPromo_ReturnsAsExpected(bool i_doesHaveUI, bool i_hasRewardsRemaining, bool i_hasClaimedRewardToday, bool i_expected) { ISingleLoginPromoProgressSaveData mockData = Substitute.For <ISingleLoginPromoProgressSaveData>(); LoginPromoPopupHelper systemUnderTest = CreateSystem(); MockAllPromosPM.DoesHaveDisplayForPromo(Arg.Any <string>()).Returns(i_doesHaveUI); mockData.HasRewardBeenClaimedToday(MockBackend).Returns(i_hasClaimedRewardToday); mockData.AreRewardsRemaining(Arg.Any <ILoginPromotionData>()).Returns(i_hasRewardsRemaining); bool shouldShow = systemUnderTest.ShouldShowPromoAsPopup(mockData, Substitute.For <ILoginPromotionData>()); Assert.AreEqual(i_expected, shouldShow); }
public void WhenAwardingPromoOnServer_ProperBackendCall_IsMade() { ILoginPromotionData mockData = Substitute.For <ILoginPromotionData>(); mockData.GetId().Returns("TestId"); LoginPromoPopupHelper systemUnderTest = CreateSystem(); systemUnderTest.AwardPromoOnServer(mockData); MockBackend.Received().MakeCloudCall(BackendMethods.UPDATE_LOGIN_PROMO_PROGRESS, Arg.Is <Dictionary <string, string> >(x => x.ContainsKey(LoginPromoPopupHelper.PROMO_ID) && x[LoginPromoPopupHelper.PROMO_ID] == "TestId"), Arg.Any <Callback <Dictionary <string, string> > >()); }
private LoginPromoPopupHelper CreateSystem() { LoginPromoPopupHelper systemUnderTest = new LoginPromoPopupHelper(MockRewardSpawner, MockBackend, MockAllPromosPM); return(systemUnderTest); }