Exemple #1
0
    def test_cerrar_fase(self, rol_de_proyecto, rs_admin, fase,
                         resultado_esperado):
        """
        Prueba unitaria encargada de probar el funcionamiento del metodo cerrar de la clase Fase,
        encargada de verificar si una fase del proyecto puede ser cerrada.

        Resultado Esperado:
            -Que el atributo de la Fase fase_cerrada cambie su valor a True

        Mensajes de Error:
            -La fase anterior {self.fase_anterior.nombre} todavia esta sin cerrar, si la fase anterior no esta cerrada
            -El item {item.version.nombre} no esta en una Linea Base, si el item no esta en una linea base
            -El item {item.version.nombre} no es trazable a la siguiente fase, si el item no tiene sucesores
        """
        rol_de_proyecto_factory(tc.rol_de_proyecto)
        user_factory(tc.user['username'], tc.user['password'],
                     tc.user['email'], rs_admin.nombre)
        user_factory(tc.user2['username'], tc.user2['password'],
                     tc.user2['email'], rs_admin.nombre)
        user_factory(tc.gerente['username'], tc.gerente['password'],
                     tc.gerente['email'], rs_admin.nombre)
        proyecto = proyecto_factory(tc.proyecto)
        fase = Fase.objects.get(nombre=fase)
        with pytest.raises(Exception) as excinfo:
            fase.cerrar()
        condicion = all(mensaje in resultado_esperado
                        for mensaje in list(excinfo.value.args)[0])
        assert condicion, f'El metodo no lanza las exceptiones corresponientes, se espera los siguientes mensajes: \n' \
                          f'{resultado_esperado}'
Exemple #2
0
    def test_es_ultima_fase(self, rol_de_proyecto, rs_admin, fase,
                            resultado_esperado):
        """
        Prueba unitaria encargada de probar el funcionamiento del metodo es_ultima_fase, de la clase Fase,
        encargada de verificar si la fase del proyecto es la ultima.

        Resultado Esperado:
            -Que retorne verdadero si la fase es la ultima del proyecto

        Mensajes de Error:
            -'El metodo lanza una respuesta incorrecta, se esperaba un {resultado_esperado}, pero devuelve un {condicion}
        """
        rol_de_proyecto_factory(tc.rol_de_proyecto)
        user_factory(tc.user['username'], tc.user['password'],
                     tc.user['email'], rs_admin.nombre)
        user_factory(tc.user2['username'], tc.user2['password'],
                     tc.user2['email'], rs_admin.nombre)
        user_factory(tc.gerente['username'], tc.gerente['password'],
                     tc.gerente['email'], rs_admin.nombre)
        proyecto = proyecto_factory(tc.proyecto)
        fase = Fase.objects.get(nombre=fase)
        condicion = fase.es_ultima_fase()
        assert condicion == resultado_esperado, f'El metodo lanza una respuesta incorrecta, se esperaba un {resultado_esperado}' \
                                                f' pero devuelve un {condicion}'
Exemple #3
0
def usuario(rs_admin):
    return user_factory('usuario_test', 'password123', '*****@*****.**',
                        rs_admin.nombre)
Exemple #4
0
def gerente(rs_admin):
    return user_factory(tc.gerente['username'], tc.gerente['password'],
                        tc.gerente['email'], tc.gerente['rol_de_sistema'])
Exemple #5
0
def usuario2(rs_admin):
    return user_factory(tc.user2['username'], tc.user2['password'],
                        tc.user2['email'], tc.user2['rol_de_sistema'])
Exemple #6
0
def gerente(rs_admin):
    return user_factory('gerente', 'password123', '*****@*****.**',
                        rs_admin.nombre)
Exemple #7
0
def usuario_participante(rs_admin):
    return user_factory(tc.user['username'], tc.user['password'],
                        tc.user['email'], rs_admin.nombre)