from server.model.hand import Hand from server.model.card import Value, Color, Card def carre(value) -> Hand: return Hand([ Card(value, Color.Hearts), Card(value, Color.Clubs), Card(value, Color.Diamonds), Card(value, Color.Spades) ]) def full(value_aux: Value, value_par: Value) -> Hand: return Hand([ Card(value_aux, Color.Hearts), Card(value_aux, Color.Clubs), Card(value_aux, Color.Spades), Card(value_par, Color.Hearts), Card(value_par, Color.Clubs) ]) def brelan(value) -> Hand: return Hand([ Card(value, Color.Hearts), Card(value, Color.Clubs), Card(value, Color.Diamonds) ]) def pair(value) -> Hand: return Hand([ Card(value, Color.Hearts), Card(value, Color.Clubs) ]) def single(low_value) -> Hand: return Hand([ Card(low_value, Color.Hearts) ]) def double_pair(value: Value, other: Value = None): # Ensure no carre if not other or other == value: other = Value.Two if value == Value.Three else Value.Three assert other != value return Hand([ # Pair of value Card(value, Color.Hearts), Card(value, Color.Clubs), # And pair of twos or threes Card(other, Color.Hearts), Card(other, Color.Clubs) ])