def file_insert(): obj = create_insert.CreateInsert() files = ['student', 'city', 'student_detail', 'class', 'marks'] for file_name in files: ddl_path = obj.path_ddl() result_set = obj.check_table(file_name) result_file = open(ddl_path + '\\'+'{}_result.csv'.format(file_name), 'a') for i in result_set: for j in range(len(i) - 2): result_file.writelines(str(i[j]) + ',') result_file.writelines(str(i[len(i) - 2]) + '\n') result_file.close()
def file_input(self): obj = create_insert.CreateInsert() files = ['student', 'city', 'student_detail', 'class', 'marks'] for file_name in files: ddl_path = obj.path_ddl() f1 = open(ddl_path + '\\' + '{}_result.csv'.format(file_name)) f2 = open(ddl_path + '\\' + '{}.csv'.format(file_name)) self.csv_data = f1.read().splitlines() self.sql_data = f2.read().splitlines() f1.close() f2.close()
def creation(loggers, db, cursor): files = [ 'student', 'city', 'class_detail', 'student_detail', 'class', 'marks' ] log_files = [ 'student_log', 'class_details', 'city_log', 'student_detail_log', 'class_log', 'marks_log' ] loggers.info("Object Created") for i in range(len(files)): loggers = file_logs.logs_handler(log_files[i], files[i]) obj = create_insert.CreateInsert(loggers, db, cursor) obj.check_table(files[i])
def file_input(self): obj = create_insert.CreateInsert() files = ['student', 'city', 'student_detail', 'class', 'marks'] for file_name in files: ddl_path = obj.path_ddl() result_set = obj.check_table(file_name) result_file = open(ddl_path + '\{}_result.csv'.format(file_name), 'a') for i in result_set: for j in range(len(i) - 2): result_file.writelines(str(i[j]) + ',') result_file.writelines(str(i[len(i) - 2]) + '\n') f1 = open(ddl_path + '\\' + '{}_result.csv'.format(file_name)) f2 = open(ddl_path + '\\' + '{}.csv'.format(file_name)) self.csv_data = f1.read().splitlines() self.sql_data = f2.read().splitlines()
def creation(loggers, db): """ :param loggers: log object :param db: db connection """ loggers.info("Object Created") for i in range(len(files)): if table_name == files[i]: loggers = file_logs.logs_handler(log_files[i], files[i]) obj = create_insert.CreateInsert(loggers, db) option = obj.check_table(files[i]) if option == 'create': obj.create_table(files[i]) elif option == 'insert': obj.insert_table(files[i]) else: print("Table ", "\"", files[i], "\"", " already exists with data")
def test_insert_table(self): obj = create_insert.CreateInsert() files = ['student', 'city', 'student_detail', 'class', 'marks'] for file_name in files: f = open( os.path.join(CreateInsert.path_ddl, '{}.csv'.format(file_name))) data = csv.reader(f) cnt = 0 count = 0 csv_data = [] sql_data = [] for i in data: csv_data.append(tuple(i)) for i in obj.insert_table(file_name): sql_data.append(i) if len(sql_data) == len(csv_data): for i in range(len(csv_data)): if len(sql_data[i]) == len(csv_data[i]): count = len(sql_data[i]) * len(csv_data) for k in range(len(sql_data[i])): if str(sql_data[i][k]) == str(csv_data[i][k]): cnt = cnt + 1 self.assertEqual(cnt, count, 'Tested : {}'.format(file_name))
def test_columns(self): self.db = devconfig.connect_db() self.cursor = self.db.cursor() obj = create_insert.CreateInsert() files = ['student', 'city', 'student_detail', 'class', 'marks'] for file_name in files: ddl_path = obj.path_ddl() file = open(ddl_path + '\\' + '{}.txt'.format(file_name)) semicolon_splited = file.read().split(";")[0].split("(")[1].split(")")[0] self.cursor.execute( "select column_name,data_type from information_schema.columns where table_schema='datamodel' and table_name='{}'".format(file_name)) tuples = self.cursor.fetchall() lists = [list(i) for i in tuples] listss = [" ".join(x) for x in lists] final_split = semicolon_splited.split(",") for x in final_split: if 'key' in x: final_split.remove(x) count = 0 for i in range(len(final_split)): if final_split[i].strip(" ") == listss[i].strip(" "): count += 1 self.assertEqual(count,len(final_split),'Columns are not same') file.close()