Esempio n. 1
0
def test_get_all():
    accion_repo = AccionRepository()
    evento_repo = EventoRepository()

    accion_repo.purge_table()
    a = Accion(idd=Idd(Idefier()),
               nombre="accion_buen_humor",
               script_url="git://script_url",
               tipo=TipoAccion(nombre="buenhumor"))
    a1 = Accion(idd=Idd(Idefier()),
                nombre="accion_buen_humor1",
                script_url="git://script_url",
                tipo=TipoAccion(nombre="buenhumor"))

    a2 = Accion(idd=Idd(Idefier()),
                nombre="accion_mal_humor",
                script_url="git://script_url",
                tipo=TipoAccion(nombre="malhumor"))
    accion_repo.append_accion(a, evento_repo)
    accion_repo.append_accion(a1, evento_repo)
    accion_repo.append_accion(a2, evento_repo)

    count = 0
    for acc in accion_repo.get_all_json():
        assert isinstance(acc, dict)
        count = count + 1
    assert count == 3
 def from_json(self, json_str_accion: str):
     json_accion = json.loads(json_str_accion)
     return Accion(
         idd=Idd(idefier=Idefier(), idd_str=json_accion['idd']),
         nombre=json_accion['nombre'],
         script_url=json_accion['script_url'],
         tipo=json_accion['tipo']
     )
Esempio n. 3
0
async def new_accion(request):
    logger.debug("Solicitada new_accion")
    comando_repo = ComandoRepository()
    r = await request.json()

    await comando_repo.send_comando(
        ComandoNuevaAccion(idd=Idd(Idefier()),
                           accion=Accion(idd=Idd(Idefier()),
                                         nombre=r['nombre'],
                                         script_url=r['script_url'],
                                         tipo=TipoAccion(r['tipo']))))
    return web.json_response()
Esempio n. 4
0
def test_get_by_id():

    accion_repo = AccionRepository()
    evento_repo = EventoRepository()
    accion_repo.purge_table()
    a = Accion(idd=Idd(Idefier()),
               nombre="nombreaccion",
               script_url="git://script_url",
               tipo=TipoAccion(nombre="buenhumor"))

    accion_repo.append_accion(a, evento_repo)
    a2 = Accion(idd=Idd(Idefier()),
                nombre="nombreaccion2",
                script_url="git://script_url2",
                tipo=TipoAccion(nombre="malhumor"))

    with pytest.raises(AccionNotFoundException):
        acc = accion_repo.get_accion_by_id(a2.idd)

    acc = accion_repo.get_accion_by_id(a.idd)
    assert acc.idd == a.idd
    assert acc.tipo == a.tipo
Esempio n. 5
0
def test_get_by_id():

    idefier = Idefier()
    accion = Accion(Idd(idefier), "nombre", "script_url", "enfado")
    evento_repo = EventoRepository()
    accion_repo = AccionRepository()

    accion_repo.append_accion(accion, evento_repo)
    acciones = accion_repo.get_all()

    #with pytest.raises(AccionNotFoundException):
    #    accion = accion_repo.get_accion_by_id(Idd(idefier, "estanoexiste"))
    print(acciones)
    id_str = acciones[0].idd

    accion = accion_repo.get_accion_by_id(Idd(idefier, id_str))
    assert accion.idd == id_str, "Deberia haber recuperado la accion con idd igual al que creo"
def test_get_all():
    idefier = Idefier()
    accion = Accion(Idd(idefier), "nombre", "script_url", "enfado")
    evento_repo = EventoRepository()
    accion_repo = AccionRepository()

    acciones = accion_repo.get_all_json()

    assert len(acciones) == 0, "Deberia mostrar ninguna accion"

    accion_repo.append_accion(accion, evento_repo)
    acciones = accion_repo.get_all_json()
    assert len(acciones) == 1, "Deberia mostrar una sola accion"

    accion_repo.append_accion(accion, evento_repo)
    acciones = accion_repo.get_all_json()
    assert len(acciones) == 2, "Deberia mostrar dos acciones"
Esempio n. 7
0
def new_accion():
    try:
        logger.debug("Solicitada new_accion")
        comando_repo = ComandoRepository()
        r = request.get_json(force=True)

        comando_repo.send_comando(
            ComandoNuevaAccion(idd=Idd(Idefier()),
                               accion=Accion(idd=Idd(Idefier()),
                                             nombre=r['nombre'],
                                             script_url=r['script_url'],
                                             tipo=TipoAccion(r['tipo']))))
        return {}
    except KeyError as ke:
        return ({"message": str(ke)}, 400)
    except Exception as ex:
        logger.error(ex)
        print_exc()
        return ({"message": str(ex)}, 500)
Esempio n. 8
0
def test_comando_nueva_accion():
    comando_repo = ComandoRepository()

    cna = ComandoNuevaAccion(idd=Idd(Idefier()),
                             accion=Accion(
                                 idd=Idd(Idefier()),
                                 nombre="nombreaccion",
                                 script_url="url",
                                 tipo=TipoAccion(nombre="buenhumor")))

    comando_repo.send_comando(cna)
    count = 0
    for ccna in comando_repo.next_comando():
        assert not ccna is None
        assert isinstance(ccna, ComandoNuevaAccion)
        assert ccna.accion.nombre == "nombreaccion"
        count = count + 1
        break
    assert count == 1
 def deserialize(accion: dict) -> Accion:
     return Accion(**accion)