예제 #1
0
class TestPartida(unittest.TestCase):
    def setUp(self):
        self.f1 = Ficha()
        self.f2 = Ficha("black")
        self.j1 = Jugador(self.f1, "Player1")
        self.j2 = Jugador(self.f2, "Player2")
        self.t = Tablero()
        self.p = Partida(self.j1, self.j2)

    def test_init_partida(self):
        self.assertNotEquals(self.p.tablero._tableroLleno(), True)
        self.assertNotEquals(self.j1, self.j2)
        self.assertNotEquals(self.j1.ficha.rep, self.j2.ficha.rep)

    def test_partida_tablas(self):
        fin = False
        #while not fin:
        for f in xrange(self.t.h):
            for c in xrange(self.t.w):
                if (c + f) % 2: ##IMPAR
                    self.j = Jugada(c, self.j1)
                else: ## PAR
                    self.j = Jugada(c, self.j2)
                self.assertEquals(self.p.juegaTurno(self.j),True)
                fin = self.p.finPartida(self.j)
        self.assertEquals(self.p.tablas(), True)


    def test_partida_4raya(self):
        for f in xrange(self.t.h):
            for c in xrange(self.t.w):
                if (c + f) % 2: ##IMPAR
                    self.j = Jugada(f, self.j1)
                else: ## PAR
                    self.j = Jugada(c, self.j2)
                self.assertEquals(self.p.juegaTurno(self.j),True)
                fin = self.p.finPartida(self.j)
                print self.p.tablero, self.p.last, self.p.movimientos
                if self.p.movimientos == 13:
                    print "FIN: %s" % fin
                    self.assertEquals(fin, True)
                    break

        """
예제 #2
0
#! -*- coding:utf-8 -*-

from CuatroEnRaya import (Ficha, Jugada, Tablero,
                            Jugador, Partida)

f1 = Ficha("white")
j1 = Jugador(f1)

f2 = Ficha("black")
j2 = Jugador(f2)

p = Partida(j1,j2)

for c in xrange(p.tablero.h):
    print c, p.tablero.h
    for f in xrange(p.tablero.w):
        print f, p.tablero.w
        if (c % 2) > 0:
            j = Jugada(c, j1)
        else:
            j = Jugada(c, j2)
        res = p.juegaTurno(j)
        if not res:
            if p.finPartida(j):
               raise Exception

        print p.tablero