def aplicarCambios(idsolicituddecambio): """Funcion que aplica cambios segun el tipo de solicitud cuando ya todos los miembros han votado""" solicitud = getSolicitudDeCambio(idsolicituddecambio) item = CtrlFase.getItem(solicitud.iditem) idlineabase = item.idlineabase lb = CtrlLineaBase.getLB(idlineabase) faseactual=lb.idfase fase = session.query(Fase).filter(Fase.idfase==lb.idfase).first() faseList = session.query(Fase).filter(and_(Fase.posicionfase >= fase.posicionfase,Fase.idproyecto == fase.idproyecto)).all() idfaseList = [] for f in faseList: idfaseList.append(f.idfase) lineabaseList = session.query(LineaBase).filter(and_(LineaBase.estado=='cerrado',LineaBase.idfase.in_(idfaseList))).all() for lb in lineabaseList: revisionLineaBase(lb.idlineabase) if solicitud.tipo == 'eliminar': CtrlFase.eliminarItem(solicitud.iditem) elif solicitud.tipo == 'reversionar' or solicitud.tipo == 'modificar': versionAnt = CtrlFase.getVersionActual(solicitud.iditem) versionNva = session.query(VersionItem).filter(VersionItem.idversionitem==solicitud.idversionitem).first() versionNva.estado = 'actual' session.commit()
def test_eliminarLineaBase(self): #crear escenario idusuario=CtrlAdmUsr.insertarUsr('username', 'password', 'nombre', 'apellido', '10101010', '1000') idtipoitem=CtrlAdmTipoItem.crearTipoItem('nombre','descripcion') CtrlAdmTipoItem.agregarAtributo(idtipoitem,'nombre','VARCHAR','pordefecto') CtrlAdmRol.insertarPermiso('200','nombre','descripcion') idrol=CtrlAdmRol.insertarRol('nombre','descripcion',[200]) idproyecto=CtrlAdmProy.crearProy('nombre','descripcion',10000,'username') idfase=CtrlAdmProy.crearFase('nombre','descripcion',idproyecto) CtrlAdmProy.asignarRolesFase([idrol],idfase) CtrlAdmProy.asignarTiposAFase(idfase,[idtipoitem]) CtrlAdmProy.setProyIniciado(idproyecto) idlb=CtrlLineaBase.crearLB(idfase) idusuario=CtrlAdmUsr.insertarUsr('USERNAME', 'PASSWORD', 'NOMBRE', 'APELLIDO', '10101010', '1000') rv=self.login('USERNAME', 'PASSWORD') #prueba rv=self.eliminarLineaBase(opcion='Eliminar Linea Base', fase= idfase, idlineabase= idlb) assert 'Linea Base Eliminada' in rv.data
def test_eliminarLineaBase(self): # crear escenario idusuario = CtrlAdmUsr.insertarUsr("username", "password", "nombre", "apellido", "10101010", "1000") idtipoitem = CtrlAdmTipoItem.crearTipoItem("nombre", "descripcion") CtrlAdmTipoItem.agregarAtributo(idtipoitem, "nombre", "VARCHAR", "pordefecto") CtrlAdmRol.insertarPermiso("200", "nombre", "descripcion") idrol = CtrlAdmRol.insertarRol("nombre", "descripcion", [200]) idproyecto = CtrlAdmProy.crearProy("nombre", "descripcion", 10000, "username") idfase = CtrlAdmProy.crearFase("nombre", "descripcion", idproyecto) CtrlAdmProy.asignarRolesFase([idrol], idfase) CtrlAdmProy.asignarTiposAFase(idfase, [idtipoitem]) CtrlAdmProy.setProyIniciado(idproyecto) idlb = CtrlLineaBase.crearLB(idfase) idusuario = CtrlAdmUsr.insertarUsr("USERNAME", "PASSWORD", "NOMBRE", "APELLIDO", "10101010", "1000") rv = self.login("USERNAME", "PASSWORD") # prueba rv = self.eliminarLineaBase(opcion="Eliminar Linea Base", fase=idfase, idlineabase=idlb) assert "Linea Base Eliminada" in rv.data