想定外ファイルの受領確認チェックを追加
想定ファイル数、卸在庫データ取込対象日の場合は15、そうでない場合は14
This commit is contained in:
parent
c1c9fd68b5
commit
f7957af13b
@ -150,6 +150,11 @@ def _check_received_files() -> list:
|
|||||||
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_LOT_NUM_MST):
|
if not _check_if_file_exists(received_s3_files, vjsk_mapper.CONDKEY_LOT_NUM_MST):
|
||||||
raise BatchOperationException(f'製造ロット番号マスタファイルがありません ファイル一覧:{received_s3_files}')
|
raise BatchOperationException(f'製造ロット番号マスタファイルがありません ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
|
# 想定外ファイルの受領確認 (想定ファイル数、卸在庫データ取込対象日の場合は15、そうでない場合は14)
|
||||||
|
naturally_count = 15 if batch_context.is_vjsk_stock_import_day else 14
|
||||||
|
if len(received_s3_files) > naturally_count:
|
||||||
|
raise BatchOperationException(f'想定数を超える受領ファイルがあります ファイル一覧:{received_s3_files}')
|
||||||
|
|
||||||
logger.debug('_check_received_files done')
|
logger.debug('_check_received_files done')
|
||||||
|
|
||||||
return received_s3_files
|
return received_s3_files
|
||||||
|
|||||||
@ -2,6 +2,7 @@ from os import path
|
|||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
|
from src.aws.s3 import VjskReceiveBucket
|
||||||
from src.batch.common.batch_context import BatchContext
|
from src.batch.common.batch_context import BatchContext
|
||||||
# from src.batch.vjsk.vjsk_data_load_manager import VjskDataLoadManager
|
# from src.batch.vjsk.vjsk_data_load_manager import VjskDataLoadManager
|
||||||
from src.batch.vjsk.vjsk_importer import (_check_received_files,
|
from src.batch.vjsk.vjsk_importer import (_check_received_files,
|
||||||
@ -40,9 +41,16 @@ class TestImportFileToDb:
|
|||||||
期待値
|
期待値
|
||||||
例外が発生しない
|
例外が発生しない
|
||||||
"""
|
"""
|
||||||
# setup
|
# setup - 卸在庫データ取込対象日
|
||||||
self.batch_context.is_vjsk_stock_import_day = True
|
self.batch_context.is_vjsk_stock_import_day = True
|
||||||
|
|
||||||
|
# setup - S3受領バケットの内容をすべて削除する
|
||||||
|
vjsk_recv_bucket = VjskReceiveBucket()
|
||||||
|
s3_files = vjsk_recv_bucket.get_s3_file_list()
|
||||||
|
for file_obj in s3_files:
|
||||||
|
s3_client.delete_object(Bucket=bucket_name, Key=file_obj.get("filename"))
|
||||||
|
|
||||||
|
# setup - テスト用受領ファイルをS3受領バケットにupload
|
||||||
test_files = [
|
test_files = [
|
||||||
"stock_slip_data_202304270000.gz",
|
"stock_slip_data_202304270000.gz",
|
||||||
"slip_data_202304270000.gz",
|
"slip_data_202304270000.gz",
|
||||||
@ -58,8 +66,7 @@ class TestImportFileToDb:
|
|||||||
"whs_customer_mst_202304270000.gz",
|
"whs_customer_mst_202304270000.gz",
|
||||||
"mdb_conv_mst_202304270000.gz",
|
"mdb_conv_mst_202304270000.gz",
|
||||||
"bio_slip_data_202304270000.gz",
|
"bio_slip_data_202304270000.gz",
|
||||||
"lot_num_mst_202304270000.gz",
|
"lot_num_mst_202304270000.gz"
|
||||||
"dummy.gz"
|
|
||||||
]
|
]
|
||||||
for test_file in test_files:
|
for test_file in test_files:
|
||||||
file_name = path.join(self.test_file_path, test_file)
|
file_name = path.join(self.test_file_path, test_file)
|
||||||
|
|||||||
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user