Exemple #1
0
        public void Handle_DonatingServerNotSucceeded_ThrowServerException()
        {
            donationMananger.Setup(dm => dm.DonateServer(It.IsAny <DonationType>(), It.IsAny <string>()))
            .ReturnsAsync(new DonateServerResult(false,
                                                 DonationDictionary.CalculateCredits(DonationType.FiftyPLN)));

            Assert.That(() => donateServerCommand.Handle(new DonateServerRequest
            {
                DonationType = DonationType.FiftyPLN
            }, CancellationToken.None), Throws.TypeOf <ServerException>());
        }
Exemple #2
0
        public async Task <DonateServerResult> DonateServer(DonationType donationType, string code)
        {
            var token = await VerifyAndGetPaymentToken(code);

            using (var transaction = database.BeginTransaction().Transaction)
            {
                var _ = await userManager.AddCredits(DonationDictionary.CalculateCredits(donationType),
                                                     httpContextReader.CurrentUserId) ?? throw new DatabaseException();

                await ExecuteOrderTransaction(donationType, code, token);

                transaction.Complete();

                return(new DonateServerResult(true, DonationDictionary.CalculateCredits(donationType)));
            }
        }
Exemple #3
0
        public void SetUp()
        {
            donationMananger = new Mock <IDonationManager>();
            var httpContextReader = new Mock <IHttpContextReader>();
            var notifier          = new Mock <INotifier>();
            var hubManager        = new Mock <IHubManager <NotifierHub> >();

            rewardReferrerSystem = new Mock <IRewardReferrerSystem>();
            var mapper = new Mock <IMapper>();

            donationMananger.Setup(dm => dm.DonateServer(It.IsAny <DonationType>(), It.IsAny <string>()))
            .ReturnsAsync(new DonateServerResult(true, DonationDictionary.CalculateCredits(DonationType.FiftyPLN)));
            donationMananger.Setup(dm => dm.DonateServerDlcBrain(It.IsAny <string>()))
            .ReturnsAsync(new DonateServerResult(true, 0));
            rewardReferrerSystem.Setup(r => r.Reward(RewardReferrerType.ServerDonated, It.IsAny <int>())).ReturnsAsync(
                new RewardReferrerResult(true, It.IsAny <int>(), RewardReferrerType.ServerDonated, It.IsAny <int>()));

            donateServerCommand = new DonateServerCommand(donationMananger.Object, httpContextReader.Object,
                                                          notifier.Object, hubManager.Object, rewardReferrerSystem.Object, mapper.Object);
        }