diff --git a/ecs/crm-datafetch/src/parser/json_parse.py b/ecs/crm-datafetch/src/parser/json_parser.py similarity index 100% rename from ecs/crm-datafetch/src/parser/json_parse.py rename to ecs/crm-datafetch/src/parser/json_parser.py diff --git a/ecs/crm-datafetch/src/prepare_data_fetch_process.py b/ecs/crm-datafetch/src/prepare_data_fetch_process.py index 03427265..f0ea9ab6 100644 --- a/ecs/crm-datafetch/src/prepare_data_fetch_process.py +++ b/ecs/crm-datafetch/src/prepare_data_fetch_process.py @@ -1,7 +1,7 @@ from src.aws.s3 import ConfigBucket from src.config.objects import FetchTargetObjects from src.error.exceptions import FileNotFoundException, InvalidConfigException -from src.parser.json_parse import JsonParser +from src.parser.json_parser import JsonParser from src.system_var.constants import PRE_JP_NAME from src.system_var.environments import (CRM_CONFIG_BUCKET, OBJECT_INFO_FILENAME, diff --git a/ecs/crm-datafetch/src/set_datetime_period_process.py b/ecs/crm-datafetch/src/set_datetime_period_process.py index bfebd5c2..062fac97 100644 --- a/ecs/crm-datafetch/src/set_datetime_period_process.py +++ b/ecs/crm-datafetch/src/set_datetime_period_process.py @@ -1,7 +1,7 @@ from src.aws.s3 import ConfigBucket from src.config.objects import LastFetchDatetime, TargetObject from src.error.exceptions import FileNotFoundException, InvalidConfigException -from src.parser.json_parse import JsonParser +from src.parser.json_parser import JsonParser from src.system_var.constants import DATE_JP_NAME from src.system_var.environments import (CRM_CONFIG_BUCKET, LAST_FETCH_DATE_FOLDER) diff --git a/ecs/crm-datafetch/tests/test_prepare_data_fetch_process.py b/ecs/crm-datafetch/tests/test_prepare_data_fetch_process.py index 8eff4b2a..298eb192 100644 --- a/ecs/crm-datafetch/tests/test_prepare_data_fetch_process.py +++ b/ecs/crm-datafetch/tests/test_prepare_data_fetch_process.py @@ -1,6 +1,7 @@ import json import logging from datetime import datetime +from unittest.mock import MagicMock, patch import pytest from src.config.objects import FetchTargetObjects @@ -92,3 +93,38 @@ class TestPrepareDataFetchProcess: assert generate_log_message_tuple(log_message='I-PRE-01 データ取得準備処理を開始します') in caplog.record_tuples assert generate_log_message_tuple(log_message=f'I-PRE-02 データ取得処理開始日時:{str(actual_execute_datetime)}') in caplog.record_tuples assert generate_log_message_tuple(log_message='I-PRE-09 データ取得準備処理を終了します') in caplog.record_tuples + + def mock_get_object_info_file(): + return {} + + def mock_parse(): + return {} + + def mock_constructor(): + pass + + def test_call_depended_modules(self, s3_client, prepare_bucket, bucket_name, monkeypatch, caplog): + """ + Cases: + データ取得準備処理内で依存しているモジュールが正しく呼ばれていること + Arranges: + - データ取得準備処理の依存モジュールをモック化する + Expects: + - 依存しているモジュールが正しく呼ばれている + """ + + # Arrange + mock_config_bucket = MagicMock(return_value='') + mock_json_parser = MagicMock(return_value={}) + mock_fetch_target_objects = MagicMock(return_value=None) + # Act + with patch('src.aws.s3.ConfigBucket.get_object_info_file', mock_config_bucket), \ + patch('src.parser.json_parser.JsonParser.parse', mock_json_parser), \ + patch('src.config.objects.FetchTargetObjects.__init__', mock_fetch_target_objects): + prepare_data_fetch_process() + + # Assert + + assert mock_config_bucket.called is True + assert mock_json_parser.called is True + assert mock_fetch_target_objects.called is True