예제 #1
0
 def test_GivenAGame_WhenMoveFromPileToFoundation_ThenError(self):
     pileNumber = 1
     cardToMove = CardBuilder().suit(Suit.PIKES).number(Number.ACE).faceUp().build()
     game = GameBuilder()\
            .cardInPile(pileNumber, CardBuilder().faceUp().build())\
            .cardInPile(pileNumber, cardToMove)\
            .build()
     self.assertEqual(
         game.moveFromPileToFoundation(pileNumber, Suit.HEARTS), Error.NO_FIT_FOUNDATION)
예제 #2
0
 def test_GivenAGame_WhenMoveFromPileToFoundation_ThenCardIsMoved(self):
     pileNumber = 1
     cardToMove = CardBuilder().suit(Suit.PIKES).number(Number.ACE).faceUp().build()
     game = GameBuilder()\
            .cardInPile(pileNumber, CardBuilder().faceUp().build())\
            .cardInPile(pileNumber, cardToMove)\
            .build()
     self.assertIsNone(game.moveFromPileToFoundation(pileNumber, Suit.PIKES))
     self.assertNotEqual(game.getPiles()[pileNumber-1].getTop(), cardToMove)
     self.assertEqual(game.getFoundations()[Suit.PIKES].getTop(), cardToMove)
     self.assertTrue(game.getPiles()[pileNumber-1].getTop().isFaceUp())        
예제 #3
0
 def test_GivenAGameWithEmptyPile_WhenMoveFromPileToFoundation_ThenError(self):
     pileNumber = 1
     game = GameBuilder().pileEmpty(pileNumber).build()
     self.assertEqual(game.moveFromPileToFoundation(pileNumber, Suit.PIKES), Error.EMPTY_PILE)