From 47e4801f468c3aeeae4fc4f9d8e5e2cc3cb8f552 Mon Sep 17 00:00:00 2001 From: "shimoda.m@nds-tyo.co.jp" Date: Fri, 7 Apr 2023 15:13:37 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=A8=AA=E5=B1=95=E9=96=8B=E3=81=AE?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../table_mapper/test_com_alma_mapper.py | 30 +++++++++++-------- 1 file changed, 18 insertions(+), 12 deletions(-) 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 b5c29081..5404b43a 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 @@ -94,7 +94,13 @@ class TestComAlmaMapper: 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) + assert_table_results(actual_rows, expect_rows, line_number=i, ignore_col_name=['sys_update_date', 'sys_regist_date']) + + # 動的日付項目の個別確認 + for actual_row, expect_row in zip(actual_rows, expect_rows): + for actual_col_name, expect_col_name in zip(actual_row, expect_row): + if actual_col_name in ['sys_regist_date', 'sys_update_date']: + assert actual_row[actual_col_name] <= expect_row[expect_col_name], f'{i}行目:{actual_col_name}が、期待値の日時以前であること' def test_update_record(self, expect_datetime: datetime, expect_date_str: str): """ @@ -129,7 +135,7 @@ class TestComAlmaMapper: delete_sql, delete_parameter = create_delete_sql_with_parameter('src05.com_alma', {'1': '1'}) self.db.execute(delete_sql, delete_parameter) - db_in_code_and_name = [ + db_floating_data_list = [ ['001', '北大'], ['002', '札幌医'], ['003', '弘大'], @@ -140,7 +146,7 @@ class TestComAlmaMapper: # モジュール名 module_name = get_module_name(com_alma_mapper) # テスト対象のデータをDBに登録 - for row in db_in_code_and_name: + for row in db_floating_data_list: code, name = row # DBに登録するテストデータ test_sql_data = [code, name] + create_ultmarc_common_column_values( @@ -169,8 +175,8 @@ class TestComAlmaMapper: # Assert # 期待値作成 - expect_date = csv_floating_data_lst[i - 1] - expect_row = [expect_date[0], expect_date[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, # 更新日が登録される sys_regist_date=expect_datetime, @@ -179,7 +185,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 = '{expect_date[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']) @@ -187,9 +193,9 @@ class TestComAlmaMapper: for actual_row, expect_row in zip(actual_rows, expect_rows): for actual_col_name, expect_col_name in zip(actual_row, expect_row): if actual_col_name == 'sys_regist_date': - assert actual_row[actual_col_name] == expect_row[expect_col_name], f'{actual_col_name}が、期待値の日時と一致すること' + assert actual_row[actual_col_name] == expect_row[expect_col_name], f'{i}行目:{actual_col_name}が、期待値の日時と一致すること' if actual_col_name == 'sys_update_date': - assert actual_row[actual_col_name] < expect_row[expect_col_name], f'{actual_col_name}が、期待値の日時以前であること' + assert actual_row[actual_col_name] < expect_row[expect_col_name], f'{i}行目:{actual_col_name}が、期待値の日時以前であること' def test_logical_delete_record_one(self, expect_datetime: datetime, expect_date_str: str): """ @@ -225,7 +231,7 @@ class TestComAlmaMapper: self.db.execute(delete_sql, delete_parameter) # テスト対象のデータをDBに登録 - db_in_code_and_name = [ + db_floating_data_list = [ ['001', '北大'], ['002', '札幌医'], ['003', '弘大'], @@ -235,7 +241,7 @@ class TestComAlmaMapper: ] # モジュール名 module_name = get_module_name(com_alma_mapper) - for row in db_in_code_and_name: + for row in db_floating_data_list: code, name = row # DBに登録するテストデータ test_sql_data = [code, name] + create_ultmarc_common_column_values( @@ -282,6 +288,6 @@ class TestComAlmaMapper: for actual_row, expect_row in zip(actual_rows, expect_rows): for actual_col_name, expect_col_name in zip(actual_row, expect_row): if actual_col_name == 'sys_regist_date': - assert actual_row[actual_col_name] == expect_row[expect_col_name], f'{actual_col_name}が、期待値の日時と一致すること' + assert actual_row[actual_col_name] == expect_row[expect_col_name], f'{i}行目:{actual_col_name}が、期待値の日時と一致すること' if actual_col_name == 'sys_update_date': - assert actual_row[actual_col_name] < expect_row[expect_col_name], f'{actual_col_name}が、期待値の日時以前であること' + assert actual_row[actual_col_name] < expect_row[expect_col_name], f'{i}行目:{actual_col_name}が、期待値の日時以前であること'