public void ThenVersionNumberIncrementIsNotCalled(int validCards, int invalidCards) { List <IValidationResult> results = new List <IValidationResult>(); for (int i = 0; i < validCards; i++) { results.Add(new ValidationResult() { ErrorMessage = Guid.NewGuid().ToString(), Valid = true }); } for (int i = 0; i < invalidCards; i++) { results.Add(new ValidationResult() { ErrorMessage = Guid.NewGuid().ToString(), Valid = false }); } // Shuffle list using linq IValidCardsData stub = new ValidCardsDataStub(results.OrderBy(a => Guid.NewGuid()).ToArray()); CardGatewaySpy spy = new CardGatewaySpy(new CardDummy(), true); IncrementVersionNumberSpy versionNumberSpy = new IncrementVersionNumberSpy(22); new AddCards(stub, spy, new PackGatewayDummy(), versionNumberSpy, new PublishEndPointSpy()).Execute(new string[results.Count]); Assert.False(versionNumberSpy.Called); }
public void ThenNewVersionNumberIsAddedToAllCardsOnAdd(int newVersionNumber) { List <string> cardDatas = new List <string>(); List <ICard> cardsToReturn = new List <ICard>(); List <IValidationResult> results = new List <IValidationResult>(); for (int i = 0; i < 10; i++) { cardDatas.Add(Guid.NewGuid().ToString()); cardsToReturn.Add(new CardStub(Guid.NewGuid().ToString(), "Title", "Description", "Image", new ICardOption[0], "Heavy")); results.Add(new ValidationResult { Valid = true, ValidCardData = cardsToReturn[i] }); } IncrementVersionNumberSpy spy = new IncrementVersionNumberSpy(newVersionNumber); CardGatewaySpy cardGatewaySpy = new CardGatewaySpy(new CardDummy(), false); new AddCards(new ValidCardsDataStub(results.ToArray()), new CardGatewayDummy(), new PackGatewayDummy(), spy, new PublishEndPointSpy()).Execute(new string[results.Count]); foreach (ICard card in cardGatewaySpy.AddCardHistory) { Assert.True(card.VersionAdded == newVersionNumber); } Assert.True(spy.Called); }
public void ThenNewVersionNumberIsAddedToAllCardsOnAdd(int newVersionNumber) { IncrementVersionNumberSpy spy = new IncrementVersionNumberSpy(newVersionNumber); CardStub stub = new CardStub("Card", " ", " ", " ", new ICardOption[0], " "); CardGatewaySpy cardGatewaySpy = new CardGatewaySpy(stub, false); new AddCard(new ValidCardDataStub(true, stub), cardGatewaySpy, new PackGatewayDummy(), spy) .Execute("Valid Json"); Assert.True(cardGatewaySpy.CardAdded.VersionAdded == newVersionNumber); }
public void ThenCardIsFetchedAndUpdated(int version, string cardID) { ICard existingCard = new CardStub(cardID, "Title", "Description", "Image", new ICardOption[0], "Heavy"); CardGatewaySpy spy = new CardGatewaySpy(existingCard, true); IncrementVersionNumberSpy stub = new IncrementVersionNumberSpy(version); new RemoveCard(spy, stub).Execute(cardID); Assert.True(spy.GetCardID == cardID); Assert.True(spy.UpdateCardCalled); }
public void ThenIncrementVersionNumberIsCalled() { IncrementVersionNumberSpy spy = new IncrementVersionNumberSpy(0); CardStub stub = new CardStub("Card", " ", " ", " ", new ICardOption[0], " "); CardGatewaySpy cardGatewaySpy = new CardGatewaySpy(stub, false); new AddCard(new ValidCardDataStub(true, stub), cardGatewaySpy, new PackGatewayDummy(), spy) .Execute("Valid Json"); Assert.True(cardGatewaySpy.HasCardCalled); Assert.True(spy.Called); }
public void ThenNewPackIsCreatedWithCardID(string cardID, int newVersionNumber, int cardIsnPack) { IncrementVersionNumberSpy spy = new IncrementVersionNumberSpy(newVersionNumber); CardStub stub = new CardStub(cardID, " ", " ", " ", new ICardOption[0], " "); CardGatewaySpy cardGatewaySpy = new CardGatewaySpy(stub, false); PackGatewayFake packGatewayFake = new PackGatewayFake(new string[0]); new AddCard(new ValidCardDataStub(true, stub), cardGatewaySpy, packGatewayFake, spy) .Execute("Valid Json"); Assert.True(packGatewayFake.SetCardsHistory.ContainsKey(newVersionNumber)); Assert.True(packGatewayFake.SetCardsHistory[newVersionNumber].Contains(cardID)); }
public void ThenCardIsUpdatedWithIncrementedVersion(int newVersion, string cardID) { ICard existingCard = new CardStub(cardID, "Title", "Description", "Image", new ICardOption[0], "Heavy"); existingCard.VersionAdded = newVersion - 1; CardGatewaySpy spy = new CardGatewaySpy(existingCard, true); IncrementVersionNumberSpy incrementVersionNumberSpy = new IncrementVersionNumberSpy(newVersion); new RemoveCard(spy, incrementVersionNumberSpy).Execute(cardID); Assert.True(spy.GetCardID == cardID); Assert.True(spy.UpdateCardCalled); Assert.True(incrementVersionNumberSpy.Called); Assert.True(spy.UpdateCardCardAdded.VersionRemoved == newVersion); }