feat: Backupバケットのテスト追加
This commit is contained in:
parent
a1613087df
commit
45d3d3aae1
@ -1,5 +1,5 @@
|
||||
import pytest
|
||||
from src.aws.s3 import ConfigBucket, DataBucket, S3Resource
|
||||
from src.aws.s3 import BackupBucket, ConfigBucket, DataBucket, S3Resource
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
@ -168,7 +168,7 @@ class TestDataBucket:
|
||||
def test_put_csv(self, s3_test, s3_client, bucket_name, monkeypatch):
|
||||
"""
|
||||
Cases:
|
||||
- 任意のファイルをPUTできること
|
||||
- CSVファイルをPUTできること
|
||||
Arranges:
|
||||
- S3をモック化する
|
||||
- 環境変数をテスト用の値に置き換える
|
||||
@ -179,7 +179,7 @@ class TestDataBucket:
|
||||
monkeypatch.setattr('src.aws.s3.CRM_IMPORT_DATA_FOLDER', 'crm/target')
|
||||
|
||||
sut = DataBucket()
|
||||
actual = sut.put_csv('test.csv', 'test,test,test')
|
||||
sut.put_csv('test.csv', 'test,test,test')
|
||||
|
||||
actual = s3_client.get_object(Bucket=bucket_name, Key=f'crm/target/test.csv')
|
||||
assert actual['Body'].read().decode('utf-8') == 'test,test,test'
|
||||
@ -187,7 +187,7 @@ class TestDataBucket:
|
||||
def test_put_csv_from(self, s3_test, s3_client, bucket_name, monkeypatch):
|
||||
"""
|
||||
Cases:
|
||||
- 他のバケットから任意のファイルをコピーできること
|
||||
- 他のバケットからCSVファイルをコピーできること
|
||||
Arranges:
|
||||
- S3をモック化する
|
||||
- コピー先バケットを作成する
|
||||
@ -212,14 +212,89 @@ class TestDataBucket:
|
||||
def test_data_bucket_str(self, s3_test, s3_client, bucket_name, monkeypatch):
|
||||
"""
|
||||
Cases:
|
||||
- 設定ファイル配置バケットを文字列化したとき、バケット名が取得できること
|
||||
- データ登録バケットを文字列化したとき、バケット名が取得できること
|
||||
Arranges:
|
||||
- 環境変数をテスト用の値に置き換える
|
||||
Expects:
|
||||
- 環境変数の設定ファイル配置バケット名と一致する
|
||||
- 環境変数のデータ登録バケット名と一致する
|
||||
"""
|
||||
monkeypatch.setattr('src.aws.s3.IMPORT_DATA_BUCKET', bucket_name)
|
||||
|
||||
sut = DataBucket()
|
||||
|
||||
assert str(sut) == bucket_name
|
||||
|
||||
|
||||
class TestBackupBucket:
|
||||
|
||||
def test_put_csv(self, s3_test, s3_client, bucket_name, monkeypatch):
|
||||
"""
|
||||
Cases:
|
||||
- CSVファイルをPUTできること
|
||||
Arranges:
|
||||
- S3をモック化する
|
||||
- 環境変数をテスト用の値に置き換える
|
||||
Expects:
|
||||
- PUTしたファイルが存在する
|
||||
"""
|
||||
monkeypatch.setattr('src.aws.s3.CRM_BACKUP_BUCKET', bucket_name)
|
||||
monkeypatch.setattr('src.aws.s3.CRM_IMPORT_DATA_BACKUP_FOLDER', 'data_import')
|
||||
|
||||
sut = BackupBucket()
|
||||
sut.put_csv('test.csv', 'test,test,test')
|
||||
|
||||
actual = s3_client.get_object(Bucket=bucket_name, Key=f'data_import/test.csv')
|
||||
assert actual['Body'].read().decode('utf-8') == 'test,test,test'
|
||||
|
||||
def test_put_response_json(self, s3_test, s3_client, bucket_name, monkeypatch):
|
||||
"""
|
||||
Cases:
|
||||
- JSONファイルをPUTできること
|
||||
Arranges:
|
||||
- S3をモック化する
|
||||
- 環境変数をテスト用の値に置き換える
|
||||
Expects:
|
||||
- PUTしたファイルが存在する
|
||||
"""
|
||||
monkeypatch.setattr('src.aws.s3.CRM_BACKUP_BUCKET', bucket_name)
|
||||
monkeypatch.setattr('src.aws.s3.RESPONSE_JSON_BACKUP_FOLDER', 'response_json')
|
||||
|
||||
sut = BackupBucket()
|
||||
sut.put_response_json('test.json', {"test": "test"})
|
||||
|
||||
actual = s3_client.get_object(Bucket=bucket_name, Key=f'response_json/test.json')
|
||||
assert actual['Body'].read().decode('utf-8') == '{"test": "test"}'
|
||||
|
||||
def test_put_result_json(self, s3_test, s3_client, bucket_name, monkeypatch):
|
||||
"""
|
||||
Cases:
|
||||
- JSONファイルをPUTできること
|
||||
Arranges:
|
||||
- S3をモック化する
|
||||
- 環境変数をテスト用の値に置き換える
|
||||
Expects:
|
||||
- PUTしたファイルが存在する
|
||||
"""
|
||||
monkeypatch.setattr('src.aws.s3.CRM_BACKUP_BUCKET', bucket_name)
|
||||
monkeypatch.setattr('src.aws.s3.PROCESS_RESULT_FOLDER', 'data_import')
|
||||
|
||||
sut = BackupBucket()
|
||||
sut.put_result_json('result.json', {"test": "test"})
|
||||
|
||||
actual = s3_client.get_object(Bucket=bucket_name, Key=f'data_import/result.json')
|
||||
assert actual['Body'].read().decode('utf-8') == '{"test": "test"}'
|
||||
|
||||
def test_backup_bucket_str(self, s3_test, s3_client, bucket_name, monkeypatch):
|
||||
"""
|
||||
Cases:
|
||||
- CRMデータバックアップバケットを文字列化したとき、バケット名が取得できること
|
||||
Arranges:
|
||||
- 環境変数をテスト用の値に置き換える
|
||||
Expects:
|
||||
- 環境変数のCRMデータバックアップバケット名と一致する
|
||||
"""
|
||||
monkeypatch.setattr('src.aws.s3.CRM_BACKUP_BUCKET', bucket_name)
|
||||
|
||||
sut = BackupBucket()
|
||||
|
||||
assert str(sut) == bucket_name
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user