public void CreateTreasureDeck_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();

            //Assert
            Assert.IsInstanceOfType(deckList, typeof(List <TreasureCard>));
        }
        public void HasHelicopterList_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();
            var hasCard  = deckList.Any(x => x.TreasureCardType == TreasureCardType.HelicopterLift.ToString());

            //Assert
            Assert.IsTrue(hasCard);
        }
        public void SandbagCountIsTwo_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList  = factory.Create();
            var cardCount = deckList.Count(x => x.TreasureCardType == TreasureCardType.SandBags.ToString());

            //Assert
            Assert.AreEqual(cardCount, 2);
        }
        public void Are28TreasureCards_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();


            //Assert
            Assert.AreEqual(28, deckList.Count);
        }
        public void EarthStoneCountIsFive_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList  = factory.Create();
            var cardCount = deckList.Count(x => x.TreasureCardType == TreasureCardType.EarthStone.ToString());

            //Assert
            Assert.AreEqual(cardCount, 5);
        }
        public void HasStatueOfTheWind_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();
            var hasCard  = deckList.Any(x => x.TreasureCardType == TreasureCardType.StatueOfTheWind.ToString());

            //Assert
            Assert.IsTrue(hasCard);
        }
        public void WaterRisesCountIsThree_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList  = factory.Create();
            var cardCount = deckList.Count(x => x.TreasureCardType == TreasureCardType.WaterRises.ToString());

            //Assert
            Assert.AreEqual(cardCount, 3);
        }
        public void HelicopterListValues_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();
            var card     = deckList.FirstOrDefault(x => x.TreasureCardType == TreasureCardType.HelicopterLift.ToString());

            //Assert
            Assert.AreNotEqual(card.Id, Guid.Empty);
            Assert.AreEqual(card.Name, CardConstants.HELICOPTERLIFT_NAME);
            Assert.AreEqual(card.Description, CardConstants.HELICOPTERLIFT_DESCRIPTION);
            Assert.AreEqual(card.Action, CardConstants.HELICOPTERLIFT_ACTION);
            Assert.AreEqual(card.TreasureCardType, TreasureCardType.HelicopterLift.ToString());
        }
        public void SandbagValues_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();
            var card     = deckList.FirstOrDefault(x => x.TreasureCardType == TreasureCardType.SandBags.ToString());

            //Assert
            Assert.AreNotEqual(card.Id, Guid.Empty);
            Assert.AreEqual(card.Name, CardConstants.SANDBAG_NAME);
            Assert.AreEqual(card.Description, CardConstants.SANDBAG_DESCRIPTION);
            Assert.AreEqual(card.Action, CardConstants.SANDBAG_ACTION);
            Assert.AreEqual(card.TreasureCardType, TreasureCardType.SandBags.ToString());
        }
        public void EarthStoneValues_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();
            var card     = deckList.FirstOrDefault(x => x.TreasureCardType == TreasureCardType.EarthStone.ToString());

            //Assert
            Assert.AreNotEqual(card.Id, Guid.Empty);
            Assert.AreEqual(card.Name, CardConstants.EARTH_STONE_NAME);
            Assert.AreEqual(card.Description, "");
            Assert.AreEqual(card.Action, "");
            Assert.AreEqual(card.TreasureCardType, TreasureCardType.EarthStone.ToString());
        }
        public void StatueOfTheWindValues_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();
            var card     = deckList.FirstOrDefault(x => x.TreasureCardType == TreasureCardType.StatueOfTheWind.ToString());

            //Assert
            Assert.AreNotEqual(card.Id, Guid.Empty);
            Assert.AreEqual(card.Name, CardConstants.STATUE_OF_THE_WIND_NAME);
            Assert.AreEqual(card.Description, "");
            Assert.AreEqual(card.Action, "");
            Assert.AreEqual(card.TreasureCardType, TreasureCardType.StatueOfTheWind.ToString());
        }
        public void CrystalOfFireValues_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();
            var card     = deckList.FirstOrDefault(x => x.TreasureCardType == TreasureCardType.CrystalOfFire.ToString());

            //Assert
            Assert.AreNotEqual(card.Id, Guid.Empty);
            Assert.AreEqual(card.Name, CardConstants.CRYSTAL_OF_FIRE_NAME.ToString());
            Assert.AreEqual(card.Description, "");
            Assert.AreEqual(card.Action, "");
            Assert.AreEqual(card.TreasureCardType, TreasureCardType.CrystalOfFire.ToString());
        }
Ejemplo n.º 13
0
        public void NoOneHasAnyCards()
        {
            //Arrange
            var canWin = new CanWin_OnePlayerHasHelicopterCard();

            var islandTile          = CreateIslandTile();
            var treasureDeckFactory = new TreasureDeckFactory();
            var playerTreasureCards = new TreasureDrawDeckFactory(treasureDeckFactory.Create()).Create();

            //Act
            var result = canWin.CanWin(islandTile, playerTreasureCards);

            //Assert
            Assert.AreEqual(result.IsValid, false);
            Assert.AreEqual(result.ErrorMessage, CanWinConstants.NO_HELICOTER_LIFT_CARD);
        }
Ejemplo n.º 14
0
        public void PlayerOneHasOneSandBagCard()
        {
            //Arrange
            var canWin     = new CanWin_OnePlayerHasHelicopterCard();
            var islandTile = CreateIslandTile();

            var treasureDeckFactory = new TreasureDeckFactory();
            var playerTreasureCards = new TreasureDrawDeckFactory(treasureDeckFactory.Create()).Create();

            playerTreasureCards.First(x => x.Name == CardConstants.SANDBAG_NAME.ToString()).DeckTheCardIsIn = Enum.TeasureCardDeckId.PlayerOneDeck.ToString();

            //Act
            var result = canWin.CanWin(islandTile, playerTreasureCards);

            //Assert
            Assert.AreEqual(result.IsValid, false);
            Assert.AreEqual(result.ErrorMessage, CanWinConstants.NO_HELICOTER_LIFT_CARD.ToString());
        }
Ejemplo n.º 15
0
        public void PlayerFourHasOneHelicopterCard()
        {
            //Arrange
            var canWin     = new CanWin_OnePlayerHasHelicopterCard();
            var islandTile = CreateIslandTile();

            var treasureDeckFactory = new TreasureDeckFactory();
            var playerTreasureCards = new TreasureDrawDeckFactory(treasureDeckFactory.Create()).Create();

            playerTreasureCards.First(x => x.Name == CardConstants.HELICOPTERLIFT_NAME).DeckTheCardIsIn = Enum.TeasureCardDeckId.PlayerFourDeck.ToString();

            //Act
            var result = canWin.CanWin(islandTile, playerTreasureCards);

            //Assert
            Assert.AreEqual(result.IsValid, true);
            Assert.AreEqual(result.ErrorMessage, null);
        }
        public void Last5NotEarthStoneTreasureCards_IsValid()
        {
            //Arrange
            var factory = new TreasureDeckFactory();

            //Act
            var deckList = factory.Create();


            //Assert
            var cardOne   = deckList.ElementAt(27).Name == CardConstants.EARTH_STONE_NAME;
            var cardTwo   = deckList.ElementAt(26).Name == CardConstants.EARTH_STONE_NAME;
            var cardThree = deckList.ElementAt(25).Name == CardConstants.EARTH_STONE_NAME;
            var cardFour  = deckList.ElementAt(24).Name == CardConstants.EARTH_STONE_NAME;
            var cardFive  = deckList.ElementAt(23).Name == CardConstants.EARTH_STONE_NAME;

            var asdf = (cardOne && cardTwo && cardThree && cardFour && cardFive);

            Assert.IsFalse(asdf);
        }