diff --git a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/test_com_alma_mapper.py b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/test_com_alma_mapper.py index 0dfa56d6..b5c29081 100644 --- a/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/test_com_alma_mapper.py +++ b/ecs/jskult-batch-daily/tests/batch/ultmarc/utmp_tables/table_mapper/test_com_alma_mapper.py @@ -52,24 +52,19 @@ class TestComAlmaMapper: # 処理日設定 self.batch_config.syor_date = datetime.strftime(datetime.now(), '%Y/%m/%d') # テストデータ作成 - code_and_name = [ - ['001', '北大'], - ['002', '札幌医'], - ['003', '弘大'], - ['004', '岩手医'], - ['005', '東北大'], - ['006', '福島医'] + csv_floating_data_lst = [ + ['001', '北大', 'A'], + ['002', '札幌医', 'A'], + ['003', '弘大', 'A'], + ['004', '岩手医', 'A'], + ['005', '東北大', 'A'], + ['006', '福島医', 'A'] ] - test_dat_file = create_ultmarc_test_csv( - [ - f'"004","{code_and_name[0][0]}","A","20141113","20141114","{code_and_name[0][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{code_and_name[1][0]}","A","20141113","20141114","{code_and_name[1][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{code_and_name[2][0]}","A","20141113","20141114","{code_and_name[2][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{code_and_name[3][0]}","A","20141113","20141114","{code_and_name[3][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{code_and_name[4][0]}","A","20141113","20141114","{code_and_name[4][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{code_and_name[5][0]}","A","20141113","20141114","{code_and_name[5][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"' - ] - ) + test_data_list = [ + f'"004","{data[0]}","{data[2]}","20141113","20141114","{data[1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"' + for data in csv_floating_data_lst + ] + test_dat_file = create_ultmarc_test_csv(test_data_list) # 一旦全データをDBから削除 delete_sql, delete_parameter = create_delete_sql_with_parameter('src05.com_alma', {'1': '1'}) self.db.execute(delete_sql, delete_parameter) @@ -87,7 +82,8 @@ class TestComAlmaMapper: # 期待値作成 # 期待値となるモジュール名 module_name = get_module_name(com_alma_mapper) - expect_row = [code_and_name[i - 1][0], code_and_name[i - 1][1]] + create_ultmarc_common_column_values( + expect_data = csv_floating_data_lst[i - 1] + expect_row = [expect_data[0], expect_data[1]] + create_ultmarc_common_column_values( regist_ymd=expect_date_str, sys_regist_date=expect_datetime, regist_prgm_id=module_name, @@ -95,7 +91,7 @@ class TestComAlmaMapper: update_prgm_id=module_name ) expect_rows = [{c: r for c, r in zip(self.table_columns, expect_row)}] - actual_rows = self.db.execute_select(f"SELECT * FROM src05.com_alma WHERE alma_cd = '{code_and_name[i - 1][0]}'") + actual_rows = self.db.execute_select(f"SELECT * FROM src05.com_alma WHERE alma_cd = '{expect_data[0]}'") # 期待値検査 assert_table_results(actual_rows, expect_rows, line_number=i) @@ -115,24 +111,19 @@ class TestComAlmaMapper: # 処理日設定 self.batch_config.syor_date = datetime.strftime(datetime.now(), '%Y/%m/%d') # テストデータ作成 - csv_in_code_and_name = [ - ['001', '北大'], - ['002', '札幌医'], - ['003', '弘大'], - ['004', ''], - ['005', '福島医'], - ['006', '東北大'] + csv_floating_data_lst = [ + ['001', '北大', 'B'], + ['002', '札幌医', 'B'], + ['003', '弘大', 'B'], + ['004', '', 'B'], + ['005', '福島医', 'B'], + ['006', '東北大', 'A'] ] - test_dat_file = create_ultmarc_test_csv( - [ - f'"004","{csv_in_code_and_name[0][0]}","B","20141113","20141114","{csv_in_code_and_name[0][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[1][0]}","B","20141113","20141114","{csv_in_code_and_name[1][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[2][0]}","B","20141113","20141114","{csv_in_code_and_name[2][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[3][0]}","B","20141113","20141114","{csv_in_code_and_name[3][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[4][0]}","B","20141113","20141114","{csv_in_code_and_name[4][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[5][0]}","B","20141113","20141114","{csv_in_code_and_name[5][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"' - ] - ) + test_data_list = [ + f'"004","{data[0]}","{data[2]}","20141113","20141114","{data[1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"' + for data in csv_floating_data_lst + ] + test_dat_file = create_ultmarc_test_csv(test_data_list) # 一旦全データをDBから削除 delete_sql, delete_parameter = create_delete_sql_with_parameter('src05.com_alma', {'1': '1'}) @@ -177,7 +168,9 @@ class TestComAlmaMapper: # Assert # 期待値作成 - expect_row = [csv_in_code_and_name[i - 1][0], csv_in_code_and_name[i - 1][1]] + create_ultmarc_common_column_values( + + expect_date = csv_floating_data_lst[i - 1] + expect_row = [expect_date[0], expect_date[1]] + create_ultmarc_common_column_values( regist_ymd=expect_date_str, update_ymd=expect_date_str, # 更新日が登録される sys_regist_date=expect_datetime, @@ -186,7 +179,7 @@ class TestComAlmaMapper: update_prgm_id=module_name ) expect_rows = [{c: r for c, r in zip(self.table_columns, expect_row)}] - actual_rows = self.db.execute_select(f"SELECT * FROM src05.com_alma WHERE alma_cd = '{csv_in_code_and_name[i - 1][0]}'") + actual_rows = self.db.execute_select(f"SELECT * FROM src05.com_alma WHERE alma_cd = '{expect_date[0]}'") # 期待値検査 assert_table_results(actual_rows, expect_rows, line_number=i, ignore_col_name=['sys_update_date', 'sys_regist_date']) @@ -214,24 +207,19 @@ class TestComAlmaMapper: self.batch_config.syor_date = datetime.strftime(datetime.now(), '%Y/%m/%d') # テストデータ作成 # 3カラム目、論理削除されるかどうか - csv_in_code_and_name = [ - ['001', '北大', False], - ['002', '札幌医', False], - ['003', '弘大', False], - ['004', '岩手医', False], - ['005', '東北大', False], - ['006', '福島医', True] + csv_floating_data_lst = [ + ['001', '北大', 'A'], + ['002', '札幌医', 'A'], + ['003', '弘大', 'A'], + ['004', '岩手医', 'A'], + ['005', '東北大', 'A'], + ['006', '福島医', 'C'] ] - test_dat_file = create_ultmarc_test_csv( - [ - f'"004","{csv_in_code_and_name[0][0]}","A","20141113","20141114","{csv_in_code_and_name[0][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[1][0]}","A","20141113","20141114","{csv_in_code_and_name[1][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[2][0]}","A","20141113","20141114","{csv_in_code_and_name[2][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[3][0]}","A","20141113","20141114","{csv_in_code_and_name[3][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[4][0]}","A","20141113","20141114","{csv_in_code_and_name[4][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"', - f'"004","{csv_in_code_and_name[5][0]}","C","20141113","20141114","{csv_in_code_and_name[5][1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"' - ] - ) + test_data_list = [ + f'"004","{data[0]}","{data[2]}","20141113","20141114","{data[1]}","1","2014/11/21 22:53","VANLOAD",,,"2014/11/21 22:53"' + for data in csv_floating_data_lst + ] + test_dat_file = create_ultmarc_test_csv(test_data_list) # 一旦全データをDBから削除 delete_sql, delete_parameter = create_delete_sql_with_parameter('src05.com_alma', {'1': '1'}) self.db.execute(delete_sql, delete_parameter) @@ -275,17 +263,18 @@ class TestComAlmaMapper: # Assert # 期待値作成 - expect_row = [csv_in_code_and_name[i - 1][0], csv_in_code_and_name[i - 1][1]] + create_ultmarc_common_column_values( + expect_data = csv_floating_data_lst[i - 1] + expect_row = [expect_data[0], expect_data[1]] + create_ultmarc_common_column_values( regist_ymd=expect_date_str, - update_ymd=expect_date_str if csv_in_code_and_name[i - 1][2] is False else None, # メンテナンス区分!=C 更新日が登録される - delete_ymd=expect_date_str if csv_in_code_and_name[i - 1][2] is True else None, # メンテナンス区分==C 削除日が登録される + update_ymd=expect_date_str if expect_data[2] != 'C' else None, # メンテナンス区分!=C 更新日が登録される + delete_ymd=expect_date_str if expect_data[2] == 'C' else None, # メンテナンス区分==C 削除日が登録される sys_regist_date=expect_datetime, regist_prgm_id=module_name, sys_update_date=datetime.now(), update_prgm_id=module_name ) expect_rows = [{c: r for c, r in zip(self.table_columns, expect_row)}] - actual_rows = self.db.execute_select(f"SELECT * FROM src05.com_alma WHERE alma_cd = '{csv_in_code_and_name[i - 1][0]}'") + actual_rows = self.db.execute_select(f"SELECT * FROM src05.com_alma WHERE alma_cd = '{expect_data[0]}'") # 期待値検査 assert_table_results(actual_rows, expect_rows, line_number=i, ignore_col_name=['sys_update_date', 'sys_regist_date'])