public async Task Given_A_Card_Name_Should_Invoke_CardByName_Method_Once() { // Arrange const string cardName = "Blue-Eyes White Dragon"; _cardRepository.CardByName(Arg.Any <string>()).Returns(new Card()); // Act await _sut.CardByName(cardName); // Assert await _cardRepository.Received(1).CardByName(Arg.Is(cardName)); }
private async Task AddCardsToBanlist(List <BanlistCard> banlistCards, YugiohBanlistSection forbiddenBanSection, long banlistId, IEnumerable <Limit> cardlimits, string limit) { var selectedLimit = cardlimits.Single(l => l.Name.Equals(limit, StringComparison.OrdinalIgnoreCase)); if (selectedLimit != null) { foreach (var cardName in forbiddenBanSection.Content) { var card = await _cardRepository.CardByName(cardName); if (card != null && !banlistCards.Any(blc => blc.BanlistId == banlistId && blc.CardId == card.Id)) { banlistCards.Add(new BanlistCard { BanlistId = banlistId, CardId = card.Id, LimitId = selectedLimit.Id }); } } } }
public Task <Card> CardByName(string name) { return(_cardRepository.CardByName(name)); }
public async Task Given_A_BanlistId_And_BanlistSections_Should_Invoke_Update_Method_Once() { // Arrange var yugiohBanlistSections = new List <YugiohBanlistSection> { new YugiohBanlistSection { Title = "Forbidden", Content = new List <string> { "Dark Hole" } }, new YugiohBanlistSection { Title = "Limited", Content = new List <string> { "Raigeki" } }, new YugiohBanlistSection { Title = "Semi-Limited", Content = new List <string> { "One For One" } }, new YugiohBanlistSection { Title = "Unlimited", Content = new List <string> { "Macro" } } }; _limitRepository.GetAll().Returns(new List <Limit> { new Limit { Id = 1, Name = "Forbidden" }, new Limit { Id = 2, Name = "Limited" }, new Limit { Id = 3, Name = "Semi-Limited" }, new Limit { Id = 4, Name = "Unlimited" } }); _cardRepository.CardByName(Arg.Any <string>()).Returns(new Card { Id = 432 }); // Act await _sut.Update(123, yugiohBanlistSections); // Assert await _banlistCardRepository.Received(1).Update(Arg.Any <long>(), Arg.Any <List <BanlistCard> >()); }