def testExportarImportar(self): "exporta el primer modelo para importarlo" nombreArchivo = ("Documents/export.txt") modelos = ModeladorDao.getModelos() modelo = modelos[len(modelos) - 1] jsonModelo = ModeladorDao.exportarModelo(modelo["idModelo"], nombreArchivo) #print ("Modelo inicial\n%s\n" % str(jsonModelo)) objetosExportados = len( ModeladorDao.getObjetosByModelo(modelo["idModelo"])) idModeloImportado = ModeladorDao.importarModelo(jsonModelo) jsonModelo = ModeladorDao.exportarModelo(idModeloImportado) #print ("Modelo importado\n%s\n" % str(jsonModelo)) objetosImportados = len( ModeladorDao.getObjetosByModelo(idModeloImportado)) if objetosImportados != objetosExportados: self.fail("Importacion o exportacion fallaron")
def testGenerarScriptSql(self): "generacion script" archivo = open(config.APP_ROOT + '/test/Seguridad.txt', 'r') strImport = archivo.read() #print("JSON "+ strImport[:150]) jsonModelo = json.loads(strImport) idModeloImportado = ModeladorDao.importarModelo(jsonModelo) generado = ModeladorDao.generarModelo(idModeloImportado, 'SCRIPT_SQL') #print("TESTGENERARSCRIPTSQL " + repr(generado)) if generado is None: self.fail("respuesta None ") if 'error' in generado: self.fail("respuesta con error " + generado['error']) if not ('archivos' in generado): self.fail("respuesta no contiene lista de archivos") if len(generado['archivos']) == 0: self.fail("no se generaron archivos") if not ('create table' in generado['archivos'][0]['contenido']): self.fail("contenido de archivo no esperado")
def server_importar_modelo_html (): salida = ("") strImport =("") fileImport = None try: nombreArchivo = request.forms.get("nombreArchivo") if nombreArchivo is None: fileImport = request.files.get("modeloImportado").file strImport = fileImport.read().decode("utf-8") else: fileImport = open( "%s/%s"%(config.FS_ROOT,nombreArchivo) ,'r') strImport = fileImport.read() jsonModelo = json.loads(strImport) salida = str(ModeladorDao.importarModelo( jsonModelo ) ) except (Exception) as ex: salida = (repr(ex) + "*" +strImport ) print(repr(ex)) finally: if not(fileImport is None): fileImport.close() fileImport = None return salida