コード例 #1
0
ファイル: ts_card.py プロジェクト: BlackCorsair/klondike-XP
class TestCard(unittest.TestCase):
    def setUp(self):
        self.cardSUT = CardBuilder().build()

    def tearDown(self):
        self.cardSUT = None

    def testFlipChangesFacedUp(self):
        previous = self.cardSUT.isFacedUp()
        self.assertNotEqual(previous, self.cardSUT.flip().isFacedUp())

    def testIsNextToCardTruePlus1(self):
        self.assertTrue(self.cardSUT.isNextToCard(
            CardBuilder().setNumber(Number.THREE).build()))

    def testIsNextToCardTrueLess1(self):
        self.assertTrue(self.cardSUT.isNextToCard(
            CardBuilder().setNumber(Number.ACE).build()))

    def testIsNextToCardTrueEquals(self):
        self.assertTrue(self.cardSUT.isNextToCard(
            CardBuilder().setNumber(Number.TWO).build()))

    def testIsNextToCardFalse(self):
        self.assertFalse(self.cardSUT.isNextToCard(
            CardBuilder().setNumber(Number.FOUR).build()))

    def testIsNextToCardNonPossible(self):
        self.assertIsNone(self.cardSUT.isNextToCard(1))

    def testIsFacedUpFalse(self):
        self.assertFalse(self.cardSUT.isFacedUp())
コード例 #2
0
ファイル: ts_card.py プロジェクト: BlackCorsair/klondike-XP
 def setUp(self):
     self.cardSUT = CardBuilder().build()
コード例 #3
0
ファイル: ts_card.py プロジェクト: BlackCorsair/klondike-XP
 def testIsNextToCardFalse(self):
     self.assertFalse(self.cardSUT.isNextToCard(
         CardBuilder().setNumber(Number.FOUR).build()))
コード例 #4
0
ファイル: ts_card.py プロジェクト: BlackCorsair/klondike-XP
 def testIsNextToCardTrueLess1(self):
     self.assertTrue(self.cardSUT.isNextToCard(
         CardBuilder().setNumber(Number.ACE).build()))
コード例 #5
0
ファイル: ts_card.py プロジェクト: BlackCorsair/klondike-XP
 def testIsNextToCardTrueEquals(self):
     self.assertTrue(self.cardSUT.isNextToCard(
         CardBuilder().setNumber(Number.TWO).build()))
コード例 #6
0
 def addNCards(self, N):
     for n in range(0, N):
         self.cards.append(CardBuilder().build())
     return self
コード例 #7
0
 def build(self):
     s = Stock()
     for i in range(0, self.numberOfCards):
         s.push(CardBuilder().build())
     return s
コード例 #8
0
 def testFitsInFalseButIsComplete(self):
     self.foundationSUT.push(CardBuilder().setNumber(Number.KING).build())
     self.assertFalse(self.foundationSUT.fitsIn(CardBuilder()
                                                .setSuit(SuitBuilder()
                                                         .build()).build()))
コード例 #9
0
 def testFitsInTrueStockEmptyAndCardIsSameSuit(self):
     self.assertTrue(self.foundationSUT.fitsIn(CardBuilder().build()))
コード例 #10
0
 def testIsCompleteTrue(self):
     self.foundationSUT.push(CardBuilder().setNumber(Number.KING).build())
     self.assertTrue(self.foundationSUT.isComplete())
コード例 #11
0
 def testFitsInFalseDifferentSuit(self):
     self.assertFalse(self.foundationSUT.fitsIn(
         CardBuilder().setSuit(SuitBuilder().
                               setInitial('h').build()).build()))
コード例 #12
0
 def testAddToTopWhenTopFacedDownRaiseError(self):
     with pytest.raises(Exception):
         self.pileSUT.addToTop(CardBuilder().setFaceUp().build())
コード例 #13
0
 def testPushWhenEmpty(self):
     self.stack.push(CardBuilder().build())
     self.assertEqual(type(CardBuilder().setFaceUp().build()),
                      type(self.stack.pop()))
コード例 #14
0
 def testPopWhenNotEmpty(self):
     self.assertEqual(type(CardBuilder().setFaceUp().build()),
                      type(CardStackBuilder().addNCards(1).build().pop()))
コード例 #15
0
 def setNumber(self, n):
     self.number = n
     for i in range(0, self.number):
         self.cards.append(CardBuilder().build())
     return self
コード例 #16
0
 def setFacedUpCards(self, n):
     self.numberOfFacedUpCards = n
     for i in range(0, self.numberOfFacedUpCards):
         self.cards.append(CardBuilder().setFaceUp().build())
     return self