public async void Can_get_completed_bonus_redemptions() { var manualBonus = CreateFirstDepositBonus(mode: IssuanceMode.ManualByPlayer); var info = CreateTemplateInfo(BonusType.ReloadDeposit, IssuanceMode.AutomaticWithCode); var reloadTemplate = CreateTemplate(info); var reloadBonus = CreateBonus(reloadTemplate); MakeDeposit(_player.Id, bonusId: manualBonus.Id); MakeDeposit(_player.Id, bonusCode: reloadBonus.Code); manualBonus.DurationEnd = manualBonus.DurationEnd.AddDays(-2); BonusRepository.SaveChanges(); var result = await ApiProxy.GetCompletedBonusesAsync(_player.Id); result.Should().NotBeEmpty(); result.Count.Should().Be(2); }
public async void Can_cancel_bonus_redemption() { var player = CreatePlayer(); var bonus = CreateFirstDepositBonus(mode: IssuanceMode.AutomaticWithCode); bonus.Template.Wagering.HasWagering = true; bonus.Template.Wagering.Multiplier = 2; BonusRepository.SaveChanges(); MakeDeposit(player.Id, bonusCode: bonus.Code); var redemption = player.Wallets.SelectMany(w => w.BonusesRedeemed).Single(br => br.Bonus.Id == bonus.Id); var result = await ApiProxy.CancelBonusRedemptionAsync(new CancelBonusRedemption { PlayerId = player.Id, RedemptionId = redemption.Id }); result.Should().NotBeNull(); result.Success.Should().BeTrue(); }