def WriteToCSV(self, rows): Utils.ChangeDirPath(self.__Const.REFERRAL_DATA_PATH) with open(self.__Const.CONFIG_TEMPLATE_FILE, 'wb') as csvfile: writer = csv.writer(csvfile, delimiter=',') for row in rows: writer.writerow(row[:5]) print "'" + self.__Const.CONFIG_TEMPLATE_FILE + "' is Created Successfully." self.__Const.setRowCount(len(rows) + 1)
def CreateConfigTemplate(self): rows = [] print "'" + self.__Const.CONFIG_TEMPLATE_FILE + "' File is Updating..." Utils.ChangeDirPath(self.__Const.BUNDLES_PATH) listofBundleDir = os.listdir(os.getcwd()) for bundle in listofBundleDir: if bundle.startswith("Bundle"): for config in os.listdir(bundle): if config in self.__Const.CONFIG_LIST: readFilePath = ".\\" + bundle + "\\" + config self.ReadConfigForTemplate(readFilePath) # print len(rows) # print "self.__MAX_RUN_COUNT",self.__MAX_RUN_COUNT ##################################### FinalListOfRows = [] FinalListOfRows.append(self.template_list[0]) for l in self.template_list[1:]: FinalListOfRows.append(l[0]) self.WriteToCSV(FinalListOfRows)
def CreateCombineConfigsCSV(self): print "Creating CombineConfigs for each Bundle Present" # print "###############################################" df_ConfigTemp = self.ReadConfigTemplate() # print df_ConfigTemp.head() Utils.ChangeDirPath(self.__Const.BUNDLES_PATH) listofBundleDir = [ d for d in list(reversed(os.listdir(os.getcwd()))) if os.path.isdir(d) ] if len(listofBundleDir) != 0: for bundleDirName in listofBundleDir: if bundleDirName.startswith("Bundle"): # print bundleDirName listofConfigsFile = os.listdir(bundleDirName) # print "listofConfigsFile-->",listofConfigsFile CombineConfigsBundleFile = "..\\" + self.__Const.REFERRAL_DATA_PATH + "\\" + bundleDirName + ".csv" flag = True if os.path.isfile(CombineConfigsBundleFile): # print "Updating already exiting.\t'" + os.path.abspath(CombineConfigsBundleFile) + "'" print "Updating already exiting.\t'" + CombineConfigsBundleFile + "'" flag = False # print "bundleDirName", bundleDirName # self.CountMaxRun(bundleDirName) dfl = [] header_row = [] for i in range(self.__MAX_RUN_COUNT): header_row.append("Run" + str(i + 1)) header_row += [ u'Avg Response Time', u'Initial Condition Issue', u'Application Freeze Issue' ] # print "len(header_row)",len(header_row) for config in self.__Const.CONFIG_LIST: if config in listofConfigsFile: readFilePath = ".\\" + bundleDirName + "\\" + config # print "readFilePath",readFilePath df_read_config = pd.read_excel(readFilePath) df_rows_list = df_read_config.values.tolist()[1:] # print "len(df_rows_list)",len(df_rows_list),self.__MAX_RUN_COUNT,len(df_ConfigTemp.values.tolist()) # New Implementation final_config_list = [] for t_row in df_ConfigTemp.values.tolist(): # print t_row count = 0 for o_row in df_rows_list: if t_row[1] in o_row: row = o_row[len(Constants. EXCEL_HEADER_START_LIST ):-1] missing_run = len(header_row) - len( row) if missing_run < 0: final_config_list.append(row) else: rev_index = -2 for k in range(missing_run): rev_index = rev_index - 1 row.insert( rev_index, Constants.DEFAULT_VALUE) # print row final_config_list.append(row) break count += 1 if count == len(df_rows_list): default_list = [] for i in range(self.__MAX_RUN_COUNT + len( Constants.EXCEL_HEADER_END_LIST) - 1): default_list.append( Constants.DEFAULT_VALUE) final_config_list.append(default_list) dfl.append( pd.DataFrame(final_config_list, columns=header_row)) # New Implementation # break else: final_config_list = [] for j in range(len(df_ConfigTemp.values.tolist())): default_list = [] for i in range( self.__MAX_RUN_COUNT + len(Constants.EXCEL_HEADER_END_LIST) - 1): default_list.append( Constants.DEFAULT_VALUE) final_config_list.append(default_list) dfl.append( pd.DataFrame(final_config_list, columns=header_row)) df_result = pd.concat( [df_ConfigTemp, dfl[0], dfl[1], dfl[2], dfl[3]], axis=1) df_result.to_csv(CombineConfigsBundleFile, index=False) if flag: print "Created new file.\t\t'" + os.path.abspath( CombineConfigsBundleFile) + "'" # if bundleDirName.startswith("Bundle"): # break else: # print "Not Bundle",bundleDirName pass else: print "Bundles are absent." sys.exit( "ERROR: " + "Bundle Directories are need to be created. Script is aborted...!!" ) print "CombineConfigs for each Bundle are created successfully inside: .'" + self.__Const.REFERRAL_DATA_PATH + "'"
def CheckConfigTemplate(self): Utils.ChangeDirPath(self.__Const.REFERRAL_DATA_PATH) # if self.__Const.CONFIG_TEMPLATE_FILE in os.listdir(os.getcwd()): print "'" + os.path.abspath( self.__Const.CONFIG_TEMPLATE_FILE) + "' is Updating." self.CreateConfigTemplate()