コード例 #1
0
ファイル: cards_app.py プロジェクト: maddencs/cards
def create_game(game_type, room_id):
    if request.method == 'GET':
        dealer = Player()
        session.add(dealer)
        game = Game(game_type)
        session.add(game)
        deck = Hand()
        session.add(deck)
        game.deck = deck
        if game_type == 'Blackjack':
            i = 1
            while i <= 5:
                seat = Seat(i)
                game.seats.append(seat)
                session.commit()
                i += 1
        game.time = datetime.datetime.now()
        game.dealer = dealer
        dealer_hand = Hand()
        dealer.hands.append(dealer_hand)
        game.players.append(current_user)
        session.commit()
        if room_id != 0:
            room = session.query(GameRoom).filter(GameRoom.id == room_id).all()[0]
            room.current_game = game
            return redirect(url_for('game_room', room_id=room_id))
        else:
            room = GameRoom()
            room.current_game = game
            session.commit()
            return redirect(url_for('game_room', room_id=room.id))
コード例 #2
0
ファイル: tests.py プロジェクト: maddencs/cards
 def test_blackjack_player_wins(self):
     player = Player('cory','password')
     game = Game('Blackjack')
     hand = Hand()
     player.bank = 100
     player.hands.append(hand)
     game.hands.append(hand)
     game.players.append(player)
     bank_before_bet = player.bank
     # cards_app.session.commit()
     cards_app.session.flush()
     bet(hand, 50)
     cards = [Card(sequence=1), Card(sequence=10)]
     hand.cards.extend(cards)
     count_blackjack(hand)
     evaluate_hit(hand)
     # player wins with nautral evaluate_hit
     assert player.bank == bank_before_bet - 50
     # player stands on 18, dealer stands on 17
     hand.cards = [Card(sequence=10), Card(sequence=8)]
     bet(hand, 50)
     game.dealer = Player('cory','password')
     dealer = game.dealer
     dealer.cards = [Card(sequence=10), Card(sequence=17)]
     dealer_hand = Hand()
     dealer_hand.cards = dealer.cards
コード例 #3
0
ファイル: tests.py プロジェクト: maddencs/cards
 def test_blackjack_payout(self):
     player = Player('cory','password')
     game = Game('Blackjack')
     hand = Hand()
     game.players = []
     player.bank = 100
     player.hands = [hand]
     hand.bet = 0
     game.deck = Hand()
     game.dealer = Player('cory','password')
     game.dealer.hands.append(Hand())
     game.hands.append(game.dealer.hands[0])
     player.hands.append(hand)
     game.hands.append(hand)
     game.deck.cards = piece_maker(suits, card_values, 1)
     game.players.append(player)
     cards_app.session.flush()
     # testing player AND dealer get blackjack
     hand.cards = [Card(sequence=1), Card(sequence=10)]
     game.dealer.hands[0].cards = [Card(sequence=1), Card(sequence=10)]
     bet(hand, 50)
     count_blackjack(hand)
     blackjack_dealer(game)
     assert player.bank == 100
     # Player gets 15 and dealer gets 15, dealer hits and breaks because deck is unshuffled and king on top
     player.bank = 100
     hand.cards = [Card(sequence=10), Card(sequence=5)]
     game.dealer.hands[0].cards = [Card(sequence=10), Card(sequence=5)]
     bet(hand, 50)
     hand.is_expired = False
     count_blackjack(hand)
     blackjack_dealer(game)
     assert player.bank == 150
     # player gets blackjack, dealer doesn't
     hand.is_expired = False
     hand.bet = 0
     player.bank = 100
     hand.cards = [Card(sequence=10), Card(sequence=1)]
     game.dealer.hands[0].cards = [Card(sequence=10), Card(sequence=10)]
     bet(hand, 50)
     count_blackjack(hand)
     blackjack_dealer(game)
     assert player.bank == 175
     # player broke, loses bet
     hand.is_expired = False
     hand.bet = 0
     player.bank = 100
     hand.cards = [Card(sequence=10), Card(sequence=10), Card(sequence=10)]
     game.dealer.hands[0].cards = [Card(sequence=10), Card(sequence=10)]
     bet(hand, 50)
     count_blackjack(hand)
     blackjack_dealer(game)
     blackjack_payout(game)
     assert player.bank == 50
コード例 #4
0
ファイル: tests.py プロジェクト: maddencs/cards
 def test_blackjack_dealer(self):
     player = Player('cory','password')
     game = Game('Blackjack')
     hand = Hand()
     game.players = []
     player.bank = 100
     game.deck = Hand()
     game.dealer = Player('cory','password')
     game.dealer.hands.append(Hand())
     game.hands.append(game.dealer.hands[0])
     player.hands.append(hand)
     game.hands.append(hand)
     game.deck.cards = piece_maker(suits, card_values, 1)
     game.players.append(player)
     cards_app.session.flush()
     player.hands[0].cards = [Card(sequence=10), Card(sequence=8)]
     game.dealer.hands[0].cards = [Card(sequence=6), Card(sequence=1)]
     bet(player.hands[0], 50)
     count_blackjack(player.hands[0])
     blackjack_dealer(game)
     blackjack_payout(game)
     # blackjack dealer should break after hitting on he soft 17
     assert player.bank == 150