public void Insert_CallsHelperAndRepository(CollectionDirection direction) { var helperMock = new Mock <ICardsHelper>(); var repositoryMock = new Mock <IDeckRepository>(); repositoryMock.Setup(x => x.GetDeck(It.IsAny <string>())) .Returns(new Deck { Piles = new List <Pile> { new Pile { Hash = "First", Cards = new List <Card>() } } }); var hashidsMock = new Mock <IHashids>(); var interractor = new PileCardsInterractor(repositoryMock.Object, helperMock.Object, hashidsMock.Object); interractor.Insert(It.IsAny <string>(), "First", direction, new Card()); repositoryMock.Verify(x => x.GetDeck(It.IsAny <string>())); helperMock.Verify(x => x.Insert(direction, It.IsAny <List <Card> >(), It.IsAny <Card>())); repositoryMock.Verify(x => x.Update(It.IsAny <Deck>())); }
public void Generate_WhenDeckFound__ReturnsEmptyPile() { var helperMock = new Mock <ICardsHelper>(); var repositoryMock = new Mock <IDeckRepository>(); repositoryMock.Setup(x => x.GetDeck(It.IsAny <string>())) .Returns(new Deck { Piles = new List <Pile> { new Pile { Hash = "First", Cards = new List <Card>() } } }); var hashidsMock = new Mock <IHashids>(); var interractor = new PileCardsInterractor(repositoryMock.Object, helperMock.Object, hashidsMock.Object); var pile = interractor.Generate("hash"); Assert.NotNull(pile); Assert.IsNotEmpty(pile.Hash); Assert.That(pile.Cards.Count == 0); }