//couldnt figure out how to make this work, but what it would do is test the deck stack
        public void TestConstructor()
        {
            IDeckFactory           deckFactory     = new StandardDeckFactory();
            IDeck                  deck            = deckFactory.CreateDeck();
            ISolitaireGameInstance game            = new SolitaireGameInstance(deck);
            IEventAggregator       eventAggregator = new EventAggregator();
            var viewModel = new OverflowCardStackViewModel(game, eventAggregator);

            Assert.AreEqual(viewModel.TopCard, game.OverflowStack[game.OverflowStack.Count - 1]);
예제 #2
0
        protected override void ConfigureContainer()
        {
            base.ConfigureContainer();

            Container.RegisterType <IEventAggregator, EventAggregator>(
                new ContainerControlledLifetimeManager());

            var deckFactory = new StandardDeckFactory();
            var deck        = deckFactory.CreateDeck();

            Container.RegisterInstance(deck, new ContainerControlledLifetimeManager());

            Container.RegisterType <ISolitaireGameInstance, SolitaireGameInstance>(
                new ContainerControlledLifetimeManager());
        }
예제 #3
0
        public void ShouldCreateStandardDeck()
        {
            const int expectedPlayingCards   = 28;
            const int expectedCharacterCards = 15;
            const int expectedOilCards       = 10;

            var deckFactory = new StandardDeckFactory(new StandardDeckToolBuilder(new StandardActionToolDuration()));
            var deck        = deckFactory.Get();

            Assert.AreEqual(expectedPlayingCards, deck.PlayingCards.Count);
            Assert.AreEqual(expectedCharacterCards, deck.CharacterCards.Count);
            Assert.AreEqual(expectedOilCards, deck.PlayingCards.Count(c =>
            {
                var tunnelCard = c as TunnelCard;
                return(tunnelCard != null && tunnelCard.HasOil);
            }));
        }