Esempio n. 1
0
def main():

    # create NonRandom instance with seed
    nr = NonRandom()
    nr.set_seed(1)

    # create game and player
    wheel = Wheel(nr)
    table = Table()
    game = Game(wheel, table)
    player = Martingale(table)

    # assign default values to prevent future changes on them
    player.BASE_AMOUNT = 1
    player.BASE_BET = "Black"

    # create simulator instance
    simulator = Simulator(game, player)
    simulator.SAMPLES = 3

    # execute simulator
    simulator.gather()

    # print results
    print "\n"
    print "Maxima", simulator.maxima, "\n"
    print "Final", simulator.final, "\n"
    print "Durations", simulator.durations, "\n"
Esempio n. 2
0
def test_martingale_lucky():
    # black, red, red,red, black, black
    rng = NonRandom([2, 5, 9, 12, 11, 10])
    game = create_game(rng=rng)

    player = Martingale(game.table)
    player.set_stake(100)
    # win
    game.cycle(player)
    assert player.stake == 101
    game.cycle(player)
    # loose, bet 1
    assert player.stake == 100
    game.cycle(player)
    # loose, bet 2
    assert player.stake == 98
    game.cycle(player)
    # loose, bet 4
    assert player.stake == 94
    game.cycle(player)
    # win, gain 8, will bet 1
    assert player.stake == 102
    game.cycle(player)
    # win, gain 2, will bet 1
    assert player.stake == 103
Esempio n. 3
0
def test_martingale_lucky():
    # black, red, red,red, black, black
    rng = NonRandom([2, 5, 9, 12, 11, 10])
    game = create_game(rng=rng)

    player = Martingale(game.table)
    player.set_stake(100)
    # win
    game.cycle(player)
    assert player.stake == 101
    game.cycle(player)
    # loose, bet 1
    assert player.stake == 100
    game.cycle(player)
    # loose, bet 2
    assert player.stake == 98
    game.cycle(player)
    # loose, bet 4
    assert player.stake == 94
    game.cycle(player)
    # win, gain 8, will bet 1
    assert player.stake == 102
    game.cycle(player)
    # win, gain 2, will bet 1
    assert player.stake == 103
Esempio n. 4
0
 def test_Player_Martingale(self):
     playerMartingale = Martingale(self.currentTable)
     playerMartingale.initialBet = 5
     expectedStake = [205, 210, 215, 210, 200, 180, 220]
     """Expect Player to left the game because lack of funds."""
     for i in range(6):
         self.game.cycle(playerMartingale, 0)
         self.assertEqual(playerMartingale.stake, expectedStake[i])
Esempio n. 5
0
    def __init__(self):
        """Initialize Play state by setting Table, Wheel, Player, Game
        """
        self.wheel = Wheel()
        self.table = Table(self.wheel)

        # self.player = Player57(self.table)
        self.player = Martingale(self.table)
        self.game = Game(self.wheel, self.table)
Esempio n. 6
0
def test_martingale_cant_make_huge_bets():
    # Always red
    rng = NonRandom([1] * 4)
    game = create_game(rng=rng)

    player = Martingale(game.table)
    player.set_stake(32)
    player.bet_amount = 4

    for i in range(4):
        game.cycle(player)

    assert player.playing() is False
Esempio n. 7
0
def test_martingale_loose_all():
    # Always red
    rng = NonRandom([1] * 4)
    game = create_game(rng=rng)

    player = Martingale(game.table)
    player.set_stake(8)

    for i in range(4):
        game.cycle(player)

    assert player.stake > 0
    assert player.playing() is False
Esempio n. 8
0
def test_martingale_loose_all():
    # Always red
    rng = NonRandom([1] * 4)
    game = create_game(rng=rng)

    player = Martingale(game.table)
    player.set_stake(8)

    for i in range(4):
        game.cycle(player)

    assert player.stake > 0
    assert player.playing() is False
Esempio n. 9
0
    def setUp(self):

        # create NonRandom instance with seed
        nr = NonRandom()
        nr.set_seed(1)

        # create game and player
        wheel = Wheel(nr)
        table = Table()
        game = Game(wheel, table)
        player = Martingale(table)

        # assign default values to prevent future changes on them
        player.BASE_AMOUNT = 1
        player.BASE_BET = "Black"

        # create simulator instance
        self.simulator = Simulator(game, player)
        self.simulator.SAMPLES = 3
Esempio n. 10
0
    def test_martingale(self):
        print('Testing martingale')
        outcomes = [1, 1, 1, 2, 2]
        self.player = Martingale(self.table)

        for outcome in outcomes:
            self.player.placeBets()
            for bet in self.table.__iter__():
                print(bet.__repr__())
                if bet.outcome in self.wheel.get(outcome).outcomes:
                    print('Winner')
                    self.player.win(bet)
                else:
                    self.player.lose(bet)
                    print('Loser')
            self.table.clear()
        self.assertEqual(self.player.stake, 255, 'Should be 255')
Esempio n. 11
0
def test_martingale_cant_make_huge_bets():
    # Always red
    rng = NonRandom([1] * 4)
    game = create_game(rng=rng)

    player = Martingale(game.table)
    player.set_stake(32)
    player.bet_amount = 4

    for i in range(4):
        game.cycle(player)

    assert player.playing() is False
Esempio n. 12
0
class Play:
    def __init__(self):
        """Initialize Play state by setting Table, Wheel, Player, Game
        """
        self.wheel = Wheel()
        self.table = Table(self.wheel)

        # self.player = Player57(self.table)
        self.player = Martingale(self.table)
        self.game = Game(self.wheel, self.table)

    def run(self):
        """Play round of game.

        Parameters
        -------------
        player:Player,
            Player state for a round of the Game.
        """
        print(self.player.stake)
        if self.player.playing():
            self.game.cycle(self.player)
        print(self.player.stake)