Exemple #1
0
        public void WhenTwoCardsAreLeftCardShouldBeDrawn()
        {
            var haveStateMock = new Mock <IStateManager>();
            var roundState    = new TwoCardsLeftRoundState(haveStateMock.Object);

            Assert.True(roundState.ShouldDrawCard);
        }
Exemple #2
0
        public void WhenTwoCardsAreLeftRulesShouldNotBeObserved()
        {
            var haveStateMock = new Mock <IStateManager>();
            var roundState    = new TwoCardsLeftRoundState(haveStateMock.Object);

            Assert.False(roundState.ShouldObserveRules);
        }
Exemple #3
0
        public void WhenTwoCardsAreLeftItIsNotPossibleToChangeTheTrump()
        {
            var haveStateMock = new Mock <IStateManager>();
            var roundState    = new TwoCardsLeftRoundState(haveStateMock.Object);

            Assert.False(roundState.CanChangeTrump);
        }
Exemple #4
0
        public void WhenTwoCardsAreLeftItIsPossibleToAnnounce20Or40()
        {
            var haveStateMock = new Mock <IStateManager>();
            var roundState    = new TwoCardsLeftRoundState(haveStateMock.Object);

            Assert.True(roundState.CanAnnounce20Or40);
        }
        public void WhenTwoCardsAreLeftItIsNotPossibleToCloseTheGame()
        {
            var haveStateMock = new Mock <IStateManager>();
            var roundState    = new TwoCardsLeftRoundState(haveStateMock.Object);

            Assert.IsFalse(roundState.CanClose);
        }
Exemple #6
0
        public void PlayHandWhenTwoCardsAreLeftShouldMoveTheGameToTheFinalRoundState()
        {
            var haveStateMock = new Mock <IStateManager>();
            var roundState    = new TwoCardsLeftRoundState(haveStateMock.Object);

            roundState.PlayHand(0);
            haveStateMock.Verify(x => x.SetState(It.IsAny <FinalRoundState>()), Times.Once);
        }
        public void CanCloseGameShouldReturnFalseWhenThePlayerIsFirstButTheStateDoesNotPermitClosing()
        {
            var haveStateMock = new Mock <IStateManager>();
            var roundState    = new TwoCardsLeftRoundState(haveStateMock.Object);

            var canCloseGame = CloseGameActionValidator.CanCloseGame(true, roundState);

            Assert.IsFalse(canCloseGame);
        }
Exemple #8
0
        public void CloseShouldNotChangeGameState()
        {
            // It is not allowed to close the game in this state
            var haveStateMock = new Mock <IStateManager>();
            var roundState    = new TwoCardsLeftRoundState(haveStateMock.Object);

            roundState.Close();
            haveStateMock.Verify(x => x.SetState(It.IsAny <BaseRoundState>()), Times.Never);
        }
Exemple #9
0
        public void CloneShouldReturnObjectOfTypePlayerTurnContext()
        {
            var haveStateMock           = new Mock <IStateManager>();
            var state                   = new TwoCardsLeftRoundState(haveStateMock.Object);
            var playerTurnContext       = new PlayerTurnContext(state, new Card(CardSuit.Diamond, CardType.Ace), 2, 0, 0);
            var clonedPlayerTurnContext = playerTurnContext.DeepClone();

            Assert.IsInstanceOf <PlayerTurnContext>(clonedPlayerTurnContext);
        }