def test_crear_bloque_x_ejercicio_ejercicio_invalido(db): # Arrange ej_x_bloque = EjercicioXBloque(ejercicio=Ejercicio("Ejercicio No Existe"), repeticiones=12, carga=22.1) with pytest.raises(ValidationError) as excinfo: # ACT err, code = BloqueService.create_ejercicio_x_bloque(ej_x_bloque)
def test_crear_bloque_x_ejercicio_valido(db): # Arrange ej_x_bloque = EjercicioXBloque(ejercicio=Ejercicio("Traditional Push-ups"), repeticiones=10, carga=20.1) # Act exb = BloqueService.create_ejercicio_x_bloque(ej_x_bloque) # Assert assert exb.ejercicio.nombre == "Traditional Push-ups" assert exb.ejercicio.patron.nombre == "Tren Superior" assert exb.repeticiones == 10 assert exb.carga == 20.1
def test_crear_bloque_valido(db): # Arrange ej_x_bloque = EjercicioXBloque(ejercicio=Ejercicio("Traditional Push-ups"), repeticiones=10, carga=20.1) bloque = Bloque(ejercicios=[ej_x_bloque], num_bloque=1, series=4) # Act bloque = BloqueService.create_bloque(bloque) # Assert assert bloque.series == 4 assert bloque.num_bloque == 1 assert len(bloque.ejercicios) == 1
def test_create_sesion(db): # Arrange ej_x_bloque = EjercicioXBloque( ejercicio=Ejercicio("Traditional Push-ups"), repeticiones=10, carga=20.1 ) bloque = Bloque(ejercicios=[ej_x_bloque], num_bloque=1, series=4) sesion = Sesion( fecha_empezado=str(datetime.utcnow()), fecha_finalizado=str(datetime.utcnow() + timedelta(hours=1)), bloques=[bloque], ) # Act sesion = SesionService.create_sesion(sesion) # Assert assert len(sesion.bloques) == 1
def test_crear_mesociclo_valido(db): # Arrange create_usuario_db(db) ej_x_bloque = EjercicioXBloque( ejercicio=Ejercicio("Traditional Push-ups"), repeticiones=10, carga=20.1 ) bloque = Bloque(ejercicios=[ej_x_bloque], num_bloque=1, series=4) sesion = Sesion( fecha_empezado=str(datetime.utcnow()), fecha_finalizado=str(datetime.utcnow() + timedelta(hours=1)), bloques=[bloque], ) mesociclo = Mesociclo( usuario=Usuario.query.first(), nivel=Nivel.query.first(), objetivo=Objetivo.query.first(), organizacion=2, principal_tren_inferior=5, principal_tren_superior=2, semanas_por_mesociclo=4, sesiones_por_semana=3, sesiones=[sesion], ) # Act mesociclo = MesocicloService.create_mesociclo(mesociclo) # Assert assert mesociclo.usuario.username == "usuarioprueba" assert mesociclo.objetivo.descripcion == "Hipertrofia" assert mesociclo.organizacion.descripcion == "Full Body" assert mesociclo.principal_tren_superior.nombre == "Traditional Push-ups" assert mesociclo.semanas_por_mesociclo == 4 assert len(mesociclo.sesiones) == 1
def create_reference_data(db): # Patrones trenSuperior = PatronMovimiento(nombre="Tren Superior") trenInferior = PatronMovimiento(nombre="Tren Inferior") zonaMedia = PatronMovimiento(nombre="Zona Media") db.session.add_all([trenSuperior, trenInferior, zonaMedia]) # Ejercicios traditionalPullUps = Ejercicio(nombre="Traditional Push-ups", patron=trenSuperior) diamondPushUps = Ejercicio(nombre="Diamond Push-ups", patron=trenSuperior) pullUps = Ejercicio(nombre="Pull-ups", patron=trenSuperior) chinUps = Ejercicio(nombre="Chin-ups", patron=trenSuperior) bulgarianSquats = Ejercicio(nombre="Bulgarian Squats", patron=trenInferior) skateSquats = Ejercicio(nombre="Skate Squats", patron=trenInferior) cossakSquats = Ejercicio(nombre="Cossak Squats", patron=trenInferior) hollowPress = Ejercicio(nombre="Hollow Press", patron=zonaMedia) botesMov = Ejercicio(nombre="Botes Movimiento", patron=zonaMedia) lAbs = Ejercicio(nombre="L-Abs", patron=zonaMedia) db.session.add_all( [ traditionalPullUps, diamondPushUps, pullUps, chinUps, bulgarianSquats, skateSquats, cossakSquats, hollowPress, botesMov, lAbs, ] ) # Niveles principiante = Nivel("Principiante") intermedio = Nivel("Intermedio") avanzado = Nivel("Avanzado") db.session.add_all([principiante, intermedio, avanzado]) # Generos masculino = Genero("Masculino") femenino = Genero("Femenino") otro = Genero("Otro") db.session.add_all([masculino, femenino, otro]) # Estados Mesociclo activo = EstadoMesociclo("Activo") terminado = EstadoMesociclo("Terminado") cancelado = EstadoMesociclo("Cancelado") db.session.add_all([activo, terminado, cancelado]) # Organizaciones fullBody = Organizacion("Full Body") tsti = Organizacion("Tren Superior / Tren Inferior") combinado = Organizacion("Combinado") db.session.add_all([fullBody, tsti, combinado]) # Objetivos acondicionamientoGeneral = Objetivo("Acondicionamiento General") hipertrofia = Objetivo("Hipertrofia") fuerza = Objetivo("Fuerza") db.session.add_all([acondicionamientoGeneral, hipertrofia, fuerza]) db.session.commit()
def seed_reference_data(): "Add seed data to the database." # Patrones traccion = PatronMovimiento(nombre="Tracción") empuje = PatronMovimiento(nombre="Empuje") rodilla = PatronMovimiento(nombre="Rodilla") cadera = PatronMovimiento(nombre="Cadera") core = PatronMovimiento(nombre="Core") db.session.add_all([traccion, rodilla, core, empuje, cadera]) # Ejercicios traditionalPullUps = Ejercicio(nombre="Traditional Push-ups", patron=traccion) diamondPushUps = Ejercicio(nombre="Diamond Push-ups", patron=traccion) pullUps = Ejercicio(nombre="Pull-ups", patron=traccion) chinUps = Ejercicio(nombre="Chin-ups", patron=traccion) bulgarianSquats = Ejercicio(nombre="Bulgarian Squats", patron=rodilla) skateSquats = Ejercicio(nombre="Skate Squats", patron=rodilla) cossakSquats = Ejercicio(nombre="Cossak Squats", patron=rodilla) hollowPress = Ejercicio(nombre="Hollow Press", patron=core) botesMov = Ejercicio(nombre="Botes Movimiento", patron=core) lAbs = Ejercicio(nombre="L-Abs", patron=core) db.session.add_all([ traditionalPullUps, diamondPushUps, pullUps, chinUps, bulgarianSquats, skateSquats, cossakSquats, hollowPress, botesMov, lAbs, ]) # Niveles principiante = Nivel("Principiante") intermedio = Nivel("Intermedio") avanzado = Nivel("Avanzado") db.session.add_all([principiante, intermedio, avanzado]) # Generos masculino = Genero("Masculino") femenino = Genero("Femenino") otro = Genero("Otro") db.session.add_all([masculino, femenino, otro]) # Estados Mesociclo activo = EstadoMesociclo("Activo") terminado = EstadoMesociclo("Terminado") cancelado = EstadoMesociclo("Cancelado") db.session.add_all([activo, terminado, cancelado]) # Organizaciones fullBody = Organizacion("Full Body") tsti = Organizacion("Tren Superior / Tren Inferior") combinado = Organizacion("Combinado") db.session.add_all([fullBody, tsti, combinado]) # Objetivos acondicionamientoGeneral = Objetivo("Acondicionamiento General") hipertrofia = Objetivo("Hipertrofia") fuerza = Objetivo("Fuerza") db.session.add_all([acondicionamientoGeneral, hipertrofia, fuerza]) db.session.commit()