Beispiel #1
0
class TestPila(unittest.TestCase):

    def setUp(self):
        self.pila = Pila()
        self.d1 = 'dummy1'
        self.d2 = 'dummy2'
        self.d3 = 'dummy3'
        self.d4 = 'dummy4'

    def test_inicio(self):
        self.assertIsInstance(self.pila._datos, ListaConPyLista)

    def test_poner(self):
        self.pila.poner(self.d1)
        expected = str([self.d1])
        self.assertEqual(expected, str(self.pila))

        self.pila.poner(self.d2)
        expected = str([self.d1, self.d2])
        self.assertEqual(expected, str(self.pila))

        self.pila.poner(self.d3)
        expected = str([self.d1, self.d2, self.d3])
        self.assertEqual(expected, str(self.pila))

        self.pila.poner(self.d4)
        expected = str([self.d1, self.d2, self.d3, self.d4])
        self.assertEqual(expected, str(self.pila))

    def test_sacar(self):
        self.pila.poner(self.d1)
        self.pila.poner(self.d2)
        self.pila.poner(self.d3)
        self.pila.poner(self.d4)

        self.assertEqual(self.d4, self.pila.sacar())
        self.assertEqual(self.d3, self.pila.sacar())
        self.assertEqual(self.d2, self.pila.sacar())
        self.assertEqual(self.d1, self.pila.sacar())
        self.assertRaises(IndexError, self.pila.sacar)

    def test_tope(self):
        self.pila.poner(self.d1)
        self.assertEqual(self.d1, self.pila.tope())

        self.pila.poner(self.d2)
        self.assertEqual(self.d2, self.pila.tope())

        self.pila.poner(self.d3)
        self.assertEqual(self.d3, self.pila.tope())

        self.pila.poner(self.d4)
        self.assertEqual(self.d4, self.pila.tope())

    def test_EsVacia_si(self):
        self.assertTrue(self.pila.esVacia())

        self.pila.poner(self.d1)
        elem = self.pila.sacar()

        self.assertTrue(self.pila.esVacia())

    def test_EsVacia_no(self):
        self.pila.poner(self.d1)
        self.assertFalse(self.pila.esVacia())

        self.pila.poner(self.d2)
        self.assertFalse(self.pila.esVacia())

        elem = self.pila.sacar()
        self.assertFalse(self.pila.esVacia())
Beispiel #2
0
# Socket para enviar trabajo a los workers
workers = context.socket(zmq.PUSH)
workers.bind("tcp://*:5000")

# Socket para recibir trabajo desde el sink para ser distribuido
newWork = context.socket(zmq.PULL)
newWork.connect("tcp://localhost:7000")

print("Press enter when workers are ready ...")
_ = input()

pila = Pila()
tablero = [[0, 7, 0, 0, 2, 0, 0, 5, 0], [0, 0, 3, 0, 0, 0, 0, 0, 0],
           [0, 0, 0, 0, 3, 0, 9, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0],
           [4, 0, 0, 0, 0, 0, 0, 9, 0], [0, 0, 0, 1, 7, 0, 0, 0, 3],
           [0, 0, 5, 0, 0, 0, 0, 0, 7], [3, 0, 0, 0, 8, 6, 0, 0, 0],
           [0, 0, 1, 0, 0, 0, 0, 0, 0]]
dic = {"tablero": tablero, "n": None, "x": None, "y": None, "prof": 0}
pila.agregar(dic)

while True:

    if not pila.vacia():
        workers.send_json(pila.sacar())
    else:
        print("no hay")

    m = newWork.recv_json()
    pila.agregar(m)
Beispiel #3
0
class TestPila(unittest.TestCase):
    def setUp(self):
        self.pila = Pila()
        self.d1 = 'dummy1'
        self.d2 = 'dummy2'
        self.d3 = 'dummy3'
        self.d4 = 'dummy4'

    def test_inicio(self):
        self.assertIsInstance(self.pila._datos, ListaConPyLista)

    def test_poner(self):
        self.pila.poner(self.d1)
        expected = str([self.d1])
        self.assertEqual(expected, str(self.pila))

        self.pila.poner(self.d2)
        expected = str([self.d1, self.d2])
        self.assertEqual(expected, str(self.pila))

        self.pila.poner(self.d3)
        expected = str([self.d1, self.d2, self.d3])
        self.assertEqual(expected, str(self.pila))

        self.pila.poner(self.d4)
        expected = str([self.d1, self.d2, self.d3, self.d4])
        self.assertEqual(expected, str(self.pila))

    def test_sacar(self):
        self.pila.poner(self.d1)
        self.pila.poner(self.d2)
        self.pila.poner(self.d3)
        self.pila.poner(self.d4)

        self.assertEqual(self.d4, self.pila.sacar())
        self.assertEqual(self.d3, self.pila.sacar())
        self.assertEqual(self.d2, self.pila.sacar())
        self.assertEqual(self.d1, self.pila.sacar())
        self.assertRaises(IndexError, self.pila.sacar)

    def test_tope(self):
        self.pila.poner(self.d1)
        self.assertEqual(self.d1, self.pila.tope())

        self.pila.poner(self.d2)
        self.assertEqual(self.d2, self.pila.tope())

        self.pila.poner(self.d3)
        self.assertEqual(self.d3, self.pila.tope())

        self.pila.poner(self.d4)
        self.assertEqual(self.d4, self.pila.tope())

    def test_EsVacia_si(self):
        self.assertTrue(self.pila.esVacia())

        self.pila.poner(self.d1)
        elem = self.pila.sacar()

        self.assertTrue(self.pila.esVacia())

    def test_EsVacia_no(self):
        self.pila.poner(self.d1)
        self.assertFalse(self.pila.esVacia())

        self.pila.poner(self.d2)
        self.assertFalse(self.pila.esVacia())

        elem = self.pila.sacar()
        self.assertFalse(self.pila.esVacia())