def setUp(self): shutil.rmtree('ODKFiles/ODK Briefcase Storage/', ignore_errors=True) if os.path.isfile('ODKFiles/odkBCExportNew.csv'): os.remove('ODKFiles/odkBCExportNew.csv') if os.path.isfile('ODKFiles/odkBCExportPrev.csv'): os.remove('ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/previous_bc_export.csv', 'ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/another_bc_export.csv', 'ODKFiles/odkBCExportNew.csv') self.old_mtimePrev = os.path.getmtime('ODKFiles/odkBCExportPrev.csv') self.old_mtimeNew = os.path.getmtime('ODKFiles/odkBCExportNew.csv') if not os.path.isfile('ODK-Briefcase-v1.18.0.jar'): downloadBriefcase() if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP') self.dbFileName = 'Pipeline.db' self.dbDirectory = '.' self.dbKey = 'enilepiP' self.useDHIS = True self.pl = Pipeline(self.dbFileName, self.dbDirectory, self.dbKey, self.useDHIS) settings = self.pl.config() settingsPipeline = settings['pipeline'] settingsODK = settings['odk'] settingsOpenVA = settings['openVA'] settingsDHIS = settings['dhis'] self.odkBC = self.pl.runODK(settingsODK, settingsPipeline) self.new_mtimePrev = os.path.getmtime('ODKFiles/odkBCExportPrev.csv') self.new_mtimeNew = os.path.getmtime('ODKFiles/odkBCExportNew.csv')
def setUpClass(cls): if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP') if os.path.isfile('who_cod.R'): os.remove('who_cod.R') # if os.path.isfile('tariff_cod.py'): # os.remove('tariff_cod.py') pipelineRunDate = datetime.datetime(2018, 9, 1, 9, 0, 0).strftime('%Y_%m_%d_%H:%M:%S') xferDB = TransferDB(dbFileName='Pipeline.db', dbDirectory='.', dbKey='enilepiP', plRunDate=pipelineRunDate) conn = xferDB.connectDB() cls.cod_who = xferDB.configDHIS(conn, 'InSilicoVA') cls.cod_tariff = xferDB.configDHIS(conn, 'SmartVA') with open("who_cod.R", "w", newline="") as f: f.write("data(causetextV5, package='InterVA5')\n") f.write( "write.csv(causetextV5, file='who_cod.csv', row.names=FALSE)\n" ) rArgs = ["R", "CMD", "BATCH", "--vanilla", "who_cod.R"] subprocess.run(args=rArgs, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, check=True) who = read_csv("who_cod.csv", index_col=0) index_who_causes = [i for i in who.index if "b_" in i] cls.who_causes = who.loc[index_who_causes, who.columns[0]].tolist()
def setUpClass(cls): if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP') pl = Pipeline('Pipeline.db', '.', 'enilepiP', True) settings = pl.config() cls.settingsPipeline = settings['pipeline'] cls.settingsODK = settings['odk'] cls.settingsOpenVA = settings['openVA'] cls.settingsDHIS = settings['dhis']
def setUpClass(cls): if os.path.isfile('ODKFiles/odkBCExportNew.csv'): os.remove('ODKFiles/odkBCExportNew.csv') if os.path.isfile('ODKFiles/odkBCExportPrev.csv'): os.remove('ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/odkExport_phmrc-1.csv', 'ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/odkExport_phmrc-2.csv', 'ODKFiles/odkBCExportNew.csv') if not os.path.isfile('smartva'): downloadSmartVA() if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP') # pipelineRunDate = datetime.datetime.now() pipelineRunDate = datetime.datetime(2018, 9, 1, 9, 0, 0). \ strftime('%Y_%m_%d_%H:%M:%S') xferDB = TransferDB(dbFileName = 'copy_Pipeline.db', dbDirectory = '.', dbKey = 'enilepiP', plRunDate = pipelineRunDate) conn = xferDB.connectDB() c = conn.cursor() sql = 'UPDATE Pipeline_Conf SET algorithm = ?, algorithmMetadataCode = ?' par = ('SmartVA', 'SmartVA|2.0.0_a8|PHMRCShort|1|PHMRCShort|1') c.execute(sql, par) settingsPipeline = xferDB.configPipeline(conn) settingsODK = xferDB.configODK(conn) settingsSmartVA = xferDB.configOpenVA(conn, 'SmartVA', settingsPipeline.workingDirectory) conn.rollback() conn.close() cls.staticRunDate = datetime.datetime(2018, 9, 1, 9, 0, 0). \ strftime('%Y_%m_%d_%H:%M:%S') shutil.rmtree( os.path.join('OpenVAFiles', cls.staticRunDate), ignore_errors = True ) cliSmartVA = OpenVA(vaArgs = settingsSmartVA, pipelineArgs = settingsPipeline, odkID = settingsODK.odkID, runDate = cls.staticRunDate) zeroRecords = cliSmartVA.copyVA() cls.completed = cliSmartVA.getCOD() cls.svaOut = os.path.join( 'OpenVAFiles', cls.staticRunDate, '1-individual-cause-of-death/individual-cause-of-death.csv' )
def setUpClass(cls): if os.path.isfile('ODKFiles/odkBCExportNew.csv'): os.remove('ODKFiles/odkBCExportNew.csv') if os.path.isfile('ODKFiles/odkBCExportPrev.csv'): os.remove('ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/previous_bc_export.csv', 'ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/another_bc_export.csv', 'ODKFiles/odkBCExportNew.csv') if os.path.isfile('Check_InSilicoVA_Pipeline.db'): os.remove('Check_InSilicoVA_Pipeline.db') createTransferDB('Check_InSilicoVA_Pipeline.db', '.', 'enilepiP') # pipelineRunDate = datetime.datetime.now() pipelineRunDate = datetime.datetime(2018, 9, 1, 9, 0, 0). \ strftime('%Y_%m_%d_%H:%M:%S') xferDB = TransferDB(dbFileName = 'Check_InSilicoVA_Pipeline.db', dbDirectory = '.', dbKey = 'enilepiP', plRunDate = pipelineRunDate) conn = xferDB.connectDB() c = conn.cursor() sql = 'UPDATE Pipeline_Conf SET algorithm = ?, algorithmMetadataCode = ?' par = ('InSilicoVA', 'InSilicoVA-2016|1.0.0|InterVA|5|2016 WHO Verbal Autopsy Form|v1_4_1') c.execute(sql, par) sql = 'UPDATE InSilicoVA_Conf SET data_type = ?' par = ('WHO2016',) c.execute(sql, par) settingsPipeline = xferDB.configPipeline(conn) settingsODK = xferDB.configODK(conn) settingsInSilicoVA = xferDB.configOpenVA(conn, 'InSilicoVA', settingsPipeline.workingDirectory) # conn.rollback() conn.close() cls.staticRunDate = datetime.datetime(2018, 9, 1, 9, 0, 0). \ strftime('%Y_%m_%d_%H:%M:%S') cls.rScript = os.path.join('OpenVAFiles', cls.staticRunDate, 'Rscript_' + cls.staticRunDate + '.R') cls.rOutFile = os.path.join('OpenVAFiles', cls.staticRunDate, 'Rscript_' + cls.staticRunDate + '.Rout') rOpenVA = OpenVA(vaArgs = settingsInSilicoVA, pipelineArgs = settingsPipeline, odkID = settingsODK.odkID, runDate = cls.staticRunDate) zeroRecords = rOpenVA.copyVA() rOpenVA.rScript() cls.completed = rOpenVA.getCOD()
def setUpClass(cls): if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP') if os.path.isfile('OpenVAFiles/newStorage.csv'): os.remove('OpenVAFiles/newStorage.csv') shutil.copy('OpenVAFiles/sample_newStorage.csv', 'OpenVAFiles/newStorage.csv') nowDate = datetime.datetime.now() pipelineRunDate = nowDate.strftime('%Y-%m-%d_%H:%M:%S') xferDB = TransferDB(dbFileName='Pipeline.db', dbDirectory='.', dbKey='enilepiP', plRunDate=pipelineRunDate) conn = xferDB.connectDB() c = conn.cursor() c.execute('DELETE FROM VA_Storage;') conn.commit() conn.close() pl = Pipeline('Pipeline.db', '.', 'enilepiP', True) settings = pl.config() settingsPipeline = settings['pipeline'] settingsODK = settings['odk'] settingsOpenVA = settings['openVA'] settingsDHIS = settings['dhis'] pl.storeResultsDB() xferDB = TransferDB(dbFileName='Pipeline.db', dbDirectory='.', dbKey='enilepiP', plRunDate=pipelineRunDate) conn = xferDB.connectDB() c = conn.cursor() sql = 'SELECT id FROM VA_Storage' c.execute(sql) vaIDs = c.fetchall() conn.close() vaIDsList = [j for i in vaIDs for j in i] cls.s1 = set(vaIDsList) dfNewStorage = read_csv('OpenVAFiles/newStorage.csv') dfNewStorageID = dfNewStorage['odkMetaInstanceID'] cls.s2 = set(dfNewStorageID)
def setUpClass(cls): shutil.rmtree('ODKFiles/ODK Briefcase Storage/', ignore_errors=True) if os.path.isfile('ODKFiles/odkBCExportNew.csv'): os.remove('ODKFiles/odkBCExportNew.csv') if os.path.isfile('ODKFiles/odkBCExportPrev.csv'): os.remove('ODKFiles/odkBCExportPrev.csv') if not os.path.isfile('ODK-Briefcase-v1.18.0.jar'): downloadBriefcase() if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP') pl = Pipeline('Pipeline.db', '.', 'enilepiP', True) settings = pl.config() settingsPipeline = settings['pipeline'] settingsODK = settings['odk'] settingsOpenVA = settings['openVA'] settingsDHIS = settings['dhis'] cls.odkBC = pl.runODK(settingsODK, settingsPipeline)
def setUpClass(cls): if os.path.isfile('InterVA_Pipeline.db'): os.remove('InterVA_Pipeline.db') createTransferDB('InterVA_Pipeline.db', '.', 'enilepiP') nowDate = datetime.datetime.now() pipelineRunDate = nowDate.strftime('%Y-%m-%d_%H:%M:%S') xferDB = TransferDB(dbFileName='InterVA_Pipeline.db', dbDirectory='.', dbKey='enilepiP', plRunDate=pipelineRunDate) conn = xferDB.connectDB() c = conn.cursor() sql = 'UPDATE Pipeline_Conf SET algorithm = ?, algorithmMetadataCode = ?' par = ('InterVA', 'InterVA5|5|InterVA|5|2016 WHO Verbal Autopsy Form|v1_4_1') c.execute(sql, par) conn.commit() conn.close() cls.pl = Pipeline('copy_Pipeline.db', '.', 'enilepiP', True) settings = cls.pl.config() settingsPipeline = settings['pipeline'] settingsODK = settings['odk'] settingsOpenVA = settings['openVA'] settingsDHIS = settings['dhis'] if os.path.isfile('ODKFiles/odkBCExportNew.csv'): os.remove('ODKFiles/odkBCExportNew.csv') if os.path.isfile('ODKFiles/odkBCExportPrev.csv'): os.remove('ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/previous_bc_export.csv', 'ODKFiles/odkBCExportNew.csv') shutil.copy('ODKFiles/another_bc_export.csv', 'ODKFiles/odkBCExportNew.csv') if os.path.isfile('OpenVAFiles/recordStorage.csv'): os.remove('OpenVAFiles/recordStorage.csv') if os.path.isfile('OpenVAFiles/entityAttributeValue.csv'): os.remove('OpenVAFiles/entityAttributeValue.csv') cls.rOut = cls.pl.runOpenVA(settingsOpenVA, settingsPipeline, settingsODK.odkID, cls.pl.pipelineRunDate)
def setUpClass(cls): if os.path.isfile('ODKFiles/odkBCExportNew.csv'): os.remove('ODKFiles/odkBCExportNew.csv') if os.path.isfile('ODKFiles/odkBCExportPrev.csv'): os.remove('ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/zeroRecords_bc_export.csv', 'ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/zeroRecords_bc_export.csv', 'ODKFiles/odkBCExportNew.csv') if os.path.isfile('OpenVAFiles/openVA_input.csv'): os.remove('OpenVAFiles/openVA_input.csv') if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP') # pipelineRunDate = datetime.datetime.now() pipelineRunDate = datetime.datetime(2018, 9, 1, 9, 0, 0). \ strftime('%Y_%m_%d_%H:%M:%S') xferDB = TransferDB(dbFileName = 'Pipeline.db', dbDirectory = '.', dbKey = 'enilepiP', plRunDate = pipelineRunDate) conn = xferDB.connectDB() settingsPipeline = xferDB.configPipeline(conn) settingsODK = xferDB.configODK(conn) settingsInterVA = xferDB.configOpenVA(conn, 'InterVA', settingsPipeline.workingDirectory) cls.staticRunDate = datetime.datetime(2018, 9, 1, 9, 0, 0). \ strftime('%Y_%m_%d_%H:%M:%S') shutil.rmtree( os.path.join('OpenVAFiles', cls.staticRunDate), ignore_errors = True ) rOpenVA = OpenVA(vaArgs = settingsInterVA, pipelineArgs = settingsPipeline, odkID = settingsODK.odkID, runDate = cls.staticRunDate) cls.zeroRecords = rOpenVA.copyVA()
def setUpClass(cls): if os.path.isfile('OpenVAFiles/openVA_input.csv'): os.remove('OpenVAFiles/openVA_input.csv') if os.path.isfile('ODKFiles/odkBCExportNew.csv'): os.remove('ODKFiles/odkBCExportNew.csv') if os.path.isfile('ODKFiles/odkBCExportPrev.csv'): os.remove('ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/odkExport_prev_who_v151.csv', 'ODKFiles/odkBCExportPrev.csv') shutil.copy('ODKFiles/odkExport_new_who_v151.csv', 'ODKFiles/odkBCExportNew.csv') if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP') pl = Pipeline('Pipeline.db', '.', 'enilepiP', True) settings = pl.config() settingsPipeline = settings['pipeline'] settingsODK = settings['odk'] settingsOpenVA = settings['openVA'] settingsDHIS = settings['dhis'] cls.rOut = pl.runOpenVA(settingsOpenVA, settingsPipeline, settingsODK.odkID, pl.pipelineRunDate)
def setUpClass(cls): shutil.rmtree('DHIS/blobs/', ignore_errors = True) shutil.copy('OpenVAFiles/sampleEAV.csv', 'OpenVAFiles/entityAttributeValue.csv') shutil.copy('OpenVAFiles/sample_recordStorage.csv', 'OpenVAFiles/recordStorage.csv') # Define valid parameters for SwissTPH DHIS2 Server. dirOpenVA = 'OpenVAFiles' dhisURL = 'https://va30se.swisstph-mis.ch' # dhisURL = 'https://va25.swisstph-mis.ch' dhisUser = '******' dhisPassword = '******' dhisOrgUnit = 'SCVeBskgiK6' # parameters for connecting to DB (assuming DB is in tests folder) dbFileName = 'Pipeline.db' dbKey = 'enilepiP' wrong_dbKey = 'wrongKey' # dbDirectory = os.path.abspath(os.path.dirname(__file__)) dbDirectory = '.' if not os.path.isfile('Pipeline.db'): createTransferDB(dbFileName, dbDirectory, dbKey) pipelineRunDate = datetime.datetime.now() xferDB = TransferDB(dbFileName = dbFileName, dbDirectory = dbDirectory, dbKey = dbKey, plRunDate = pipelineRunDate) conn = xferDB.connectDB() settingsDHIS = xferDB.configDHIS(conn, 'InSilicoVA') cls.pipelineDHIS = dhis.DHIS(settingsDHIS, '.') apiDHIS = cls.pipelineDHIS.connect() cls.postLog = cls.pipelineDHIS.postVA(apiDHIS) cls.pipelineDHIS.verifyPost(cls.postLog, apiDHIS)
def setUpClass(cls): shutil.rmtree('DHIS/blobs/', ignore_errors=True) if os.path.isfile('OpenVAFiles/entityAttributeValue.csv'): os.remove('OpenVAFiles/entityAttributeValue.csv') if os.path.isfile('OpenVAFiles/recordStorage.csv'): os.remove('OpenVAFiles/recordStorage.csv') shutil.copy('OpenVAFiles/sampleEAV.csv', 'OpenVAFiles/entityAttributeValue.csv') shutil.copy('OpenVAFiles/sample_recordStorage.csv', 'OpenVAFiles/recordStorage.csv') shutil.copy('OpenVAFiles/sample_newStorage.csv', 'OpenVAFiles/newStorage.csv') if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP') pl = Pipeline('Pipeline.db', '.', 'enilepiP', True) plRunDate = pl.pipelineRunDate settings = pl.config() settingsPipeline = settings['pipeline'] settingsODK = settings['odk'] settingsOpenVA = settings['openVA'] settingsDHIS = settings['dhis'] cls.pipelineDHIS = pl.runDHIS(settingsDHIS, settingsPipeline)
def setUpClass(cls): if not os.path.isfile('Pipeline.db'): createTransferDB('Pipeline.db', '.', 'enilepiP')