Ejemplo n.º 1
0
 def test_encode_player_without_holecard(self):
     player = setup_player()
     hsh = DataEncoder.encode_player(player)
     self.eq(player.name, hsh["name"])
     self.eq(player.uuid, hsh["uuid"])
     self.eq(player.stack, hsh["stack"])
     self.eq("folded", hsh["state"])
     self.false("hole_card" in hsh)
Ejemplo n.º 2
0
 def test_encode_player_without_holecard(self):
     player = setup_player()
     hsh = DataEncoder.encode_player(player)
     self.eq(player.name, hsh["name"])
     self.eq(player.uuid, hsh["uuid"])
     self.eq(player.stack, hsh["stack"])
     self.eq("folded", hsh["state"])
     self.false("hole_card" in hsh)
Ejemplo n.º 3
0
 def test_encode_player_without_holecard(self):
     player = setup_player()
     hsh = DataEncoder.encode_player(player)
     self.eq(player.name, hsh['name'])
     self.eq(player.uuid, hsh['uuid'])
     self.eq(player.stack, hsh['stack'])
     self.eq('folded', hsh['state'])
     self.false('hole_card' in hsh)
Ejemplo n.º 4
0
 def build_round_start_message(self, round_count, player_pos, seats):
   player = seats.players[player_pos]
   hole_card = DataEncoder.encode_player(player, holecard=True)["hole_card"]
   message = {
       "message_type": self.ROUND_START_MESSAGE,
       "round_count": round_count,
       "hole_card": hole_card
   }
   message.update(DataEncoder.encode_seats(seats))
   return self.__build_notification_message(message)
Ejemplo n.º 5
0
 def build_round_start_message(self, round_count, player_pos, seats):
     player = seats.players[player_pos]
     hole_card = DataEncoder.encode_player(player,
                                           holecard=True)["hole_card"]
     message = {
         "message_type": self.ROUND_START_MESSAGE,
         "round_count": round_count,
         "hole_card": hole_card
     }
     message.update(DataEncoder.encode_seats(seats))
     return self.__build_notification_message(message)
Ejemplo n.º 6
0
 def build_ask_message(self, player_pos, state):
   players = state["table"].seats.players
   player = players[player_pos]
   hole_card = DataEncoder.encode_player(player, holecard=True)["hole_card"]
   valid_actions = ActionChecker.legal_actions(players, player_pos, state["small_blind_amount"])
   message = {
       "message_type" : self.ASK_MESSAGE,
       "hole_card": hole_card,
       "valid_actions": valid_actions,
       "round_state": DataEncoder.encode_round_state(state),
       "action_histories": DataEncoder.encode_action_histories(state["table"])
   }
   return self.__build_ask_message(message)
Ejemplo n.º 7
0
 def build_ask_message(self, player_pos, state):
     players = state["table"].seats.players
     player = players[player_pos]
     hole_card = DataEncoder.encode_player(player,
                                           holecard=True)["hole_card"]
     valid_actions = ActionChecker.legal_actions(
         players, player_pos, state["small_blind_amount"])
     message = {
         "message_type": self.ASK_MESSAGE,
         "hole_card": hole_card,
         "valid_actions": valid_actions,
         "round_state": DataEncoder.encode_round_state(state),
         "action_histories":
         DataEncoder.encode_action_histories(state["table"])
     }
     return self.__build_ask_message(message)
Ejemplo n.º 8
0
 def build_ask_message(self, player_pos, state):
     players = state['table'].seats.players
     player = players[player_pos]
     hole_card = DataEncoder.encode_player(player,
                                           holecard=True)['hole_card']
     valid_actions = ActionChecker.legal_actions(
         players, player_pos, state['small_blind_amount'])
     message = {
         'message_type': self.ASK_MESSAGE,
         'hole_card': hole_card,
         'valid_actions': valid_actions,
         'round_state': DataEncoder.encode_round_state(state),
         'action_histories':
         DataEncoder.encode_action_histories(state['table'])
     }
     return self.__build_ask_message(message)
Ejemplo n.º 9
0
 def test_encode_seats(self):
     seats = setup_seats()
     hsh = DataEncoder.encode_seats(seats)
     self.eq(3, len(hsh["seats"]))
     self.eq(DataEncoder.encode_player(seats.players[0]), hsh["seats"][0])
Ejemplo n.º 10
0
 def test_encode_player_with_holecard(self):
     player = setup_player()
     hsh = DataEncoder.encode_player(player, holecard=True)
     self.eq([str(card) for card in player.hole_card], hsh["hole_card"])
Ejemplo n.º 11
0
 def test_encode_winners(self):
     winners = [setup_player() for _ in range(2)]
     hsh = DataEncoder.encode_winners(winners)
     self.eq(2, len(hsh["winners"]))
     self.eq([DataEncoder.encode_player(p) for p in winners],
             hsh["winners"])
Ejemplo n.º 12
0
 def test_encode_seats(self):
     seats = setup_seats()
     hsh = DataEncoder.encode_seats(seats)
     self.eq(3, len(hsh["seats"]))
     self.eq(DataEncoder.encode_player(seats.players[0]), hsh["seats"][0])
Ejemplo n.º 13
0
 def test_encode_player_with_holecard(self):
     player = setup_player()
     hsh = DataEncoder.encode_player(player, holecard=True)
     self.eq([str(card) for card in player.hole_card], hsh["hole_card"])
Ejemplo n.º 14
0
 def test_encode_winners(self):
     winners = [setup_player() for _ in range(2)]
     hsh = DataEncoder.encode_winners(winners)
     self.eq(2, len(hsh["winners"]))
     self.eq([DataEncoder.encode_player(p) for p in winners], hsh["winners"])