Merge pull request #427 fix-NEWDWH2021-1681-resolve-dependencies into develop

This commit is contained in:
下田雅人 2024-08-21 16:26:24 +09:00
commit ae15dffef9
3 changed files with 57 additions and 50 deletions

View File

@ -21,25 +21,24 @@
"sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346",
"sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2"
],
"markers": "python_version >= '3.7'",
"markers": "python_full_version >= '3.7.0'",
"version": "==24.2.0"
},
"boto3": {
"hashes": [
"sha256:21120d23cc37c0e80dc4f64434bc5664d2a5645dcd9bf8a8fa97ed5c82164ca0",
"sha256:ffe7bbb88ba81b5d54bc8fa0cfb2f3b7fe63a6cffa0f9207df2ef5c22a1c0587"
"sha256:c2f0837a259002489e59d1c30008791e3b3bb59e30e48c64e1d2d270147a4549",
"sha256:cbf197ce28f04bc1ffa1db0aa26a1903d9bfa57a490f70537932e84367cdd15b"
],
"index": "pypi",
"markers": "python_version >= '3.8'",
"version": "==1.34.159"
"version": "==1.35.2"
},
"botocore": {
"hashes": [
"sha256:7633062491457419a49f5860c014251ae85689f78266a3ce020c2c8688a76b97",
"sha256:dc28806eb21e3c8d690c422530dff8b4b242ac033cbe98f160a9d37796c09cb1"
"sha256:92b168d8be79055bb25754aa34d699866d8aa66abc69f8ce99b0c191bd9c6e70",
"sha256:96c8eb6f0baed623a1b57ca9f24cb21d5508872cf0dfebb55527a85b6dbc76ba"
],
"markers": "python_version >= '3.8'",
"version": "==1.34.159"
"version": "==1.35.2"
},
"certifi": {
"hashes": [
@ -248,7 +247,7 @@
"sha256:ee0c405832ade84d4de74b9029bedb7b31200600fa524d218fc29bfa371e97f5",
"sha256:fdcb265de28585de5b859ae13e3846a8e805268a823a12a4da2597f1f5afc9f0"
],
"markers": "python_version >= '3.7'",
"markers": "python_full_version >= '3.7.0'",
"version": "==43.0.0"
},
"idna": {
@ -271,7 +270,7 @@
"sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980",
"sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe"
],
"markers": "python_version >= '3.7'",
"markers": "python_full_version >= '3.7.0'",
"version": "==1.0.1"
},
"lxml": {
@ -418,6 +417,14 @@
"markers": "python_version >= '3.6'",
"version": "==5.3.0"
},
"more-itertools": {
"hashes": [
"sha256:0f7d9f83a0a8dcfa8a2694a770590d98a67ea943e3d9f5298309a484758c4e27",
"sha256:fe0e63c4ab068eac62410ab05cccca2dc71ec44ba8ef29916a0090df061cf923"
],
"markers": "python_version >= '3.8'",
"version": "==10.4.0"
},
"platformdirs": {
"hashes": [
"sha256:2d7a1657e36a80ea911db832a8a6ece5ee53d8de21edd5cc5879af6530b1bfee",
@ -513,9 +520,16 @@
"sha256:93de0c98785b27fcf659856aa9f54bfbd399e29969b0621bc7f762bd441b4539"
],
"index": "pypi",
"markers": "python_version >= '3.8'",
"version": "==9.0.0"
},
"typing-extensions": {
"hashes": [
"sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d",
"sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"
],
"markers": "python_version >= '3.8'",
"version": "==4.12.2"
},
"urllib3": {
"hashes": [
"sha256:37a0344459b199fce0e80b0d3569837ec6b6937435c5244e7fd73fa6006830f3",
@ -529,7 +543,7 @@
"sha256:6754feb4c34a4b6d65fbc359252bf6654dcce3937bf1d95aae4402a60a8f5939",
"sha256:72093acfdb1d8360ed400869b73fbf1882b95c4287f798084c42ee0c1ff0e425"
],
"markers": "python_version >= '3.7'",
"markers": "python_full_version >= '3.7.0'",
"version": "==4.2.1"
}
},
@ -540,25 +554,23 @@
"sha256:a203fe0fcad7939987422140ab17a930f684763bf7335bdb6709991dd7ef6c2d"
],
"index": "pypi",
"markers": "python_version >= '3.8'",
"version": "==2.3.1"
},
"boto3": {
"hashes": [
"sha256:21120d23cc37c0e80dc4f64434bc5664d2a5645dcd9bf8a8fa97ed5c82164ca0",
"sha256:ffe7bbb88ba81b5d54bc8fa0cfb2f3b7fe63a6cffa0f9207df2ef5c22a1c0587"
"sha256:c2f0837a259002489e59d1c30008791e3b3bb59e30e48c64e1d2d270147a4549",
"sha256:cbf197ce28f04bc1ffa1db0aa26a1903d9bfa57a490f70537932e84367cdd15b"
],
"index": "pypi",
"markers": "python_version >= '3.8'",
"version": "==1.34.159"
"version": "==1.35.2"
},
"botocore": {
"hashes": [
"sha256:7633062491457419a49f5860c014251ae85689f78266a3ce020c2c8688a76b97",
"sha256:dc28806eb21e3c8d690c422530dff8b4b242ac033cbe98f160a9d37796c09cb1"
"sha256:92b168d8be79055bb25754aa34d699866d8aa66abc69f8ce99b0c191bd9c6e70",
"sha256:96c8eb6f0baed623a1b57ca9f24cb21d5508872cf0dfebb55527a85b6dbc76ba"
],
"markers": "python_version >= '3.8'",
"version": "==1.34.159"
"version": "==1.35.2"
},
"certifi": {
"hashes": [
@ -848,7 +860,7 @@
"sha256:ee0c405832ade84d4de74b9029bedb7b31200600fa524d218fc29bfa371e97f5",
"sha256:fdcb265de28585de5b859ae13e3846a8e805268a823a12a4da2597f1f5afc9f0"
],
"markers": "python_version >= '3.7'",
"markers": "python_full_version >= '3.7.0'",
"version": "==43.0.0"
},
"exceptiongroup": {
@ -865,7 +877,6 @@
"sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213"
],
"index": "pypi",
"markers": "python_full_version >= '3.8.1'",
"version": "==7.1.1"
},
"idna": {
@ -897,7 +908,7 @@
"sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980",
"sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe"
],
"markers": "python_version >= '3.7'",
"markers": "python_full_version >= '3.7.0'",
"version": "==1.0.1"
},
"markupsafe": {
@ -976,12 +987,11 @@
},
"moto": {
"hashes": [
"sha256:10bd434bfda329639fe9529470c4c27938064c139984024e6a62513e50aff427",
"sha256:406095ba28da9e67e59bfc6b31b4a2627ca896d3e2c7eb82838fbe527e3c218a"
"sha256:984377a9c4536543fc09f49a1d5210c61c4a4f55c79719f7d9f8dcdd9bf55ea5",
"sha256:ddf8864f0d61af88fd07a4e5eac428c6bebf4fcd10023f8e756e65e9e7b7e4a5"
],
"index": "pypi",
"markers": "python_version >= '3.8'",
"version": "==5.0.12"
"version": "==5.0.13"
},
"packaging": {
"hashes": [
@ -1029,7 +1039,6 @@
"sha256:c132345d12ce551242c87269de812483f5bcc87cdbb4722e48487ba194f9fdce"
],
"index": "pypi",
"markers": "python_version >= '3.8'",
"version": "==8.3.2"
},
"pytest-cov": {
@ -1038,7 +1047,6 @@
"sha256:5837b58e9f6ebd335b0f8060eecce69b662415b16dc503883a02f45dfeb14857"
],
"index": "pypi",
"markers": "python_version >= '3.8'",
"version": "==5.0.0"
},
"pytest-html": {
@ -1047,7 +1055,6 @@
"sha256:c8152cea03bd4e9bee6d525573b67bbc6622967b72b9628dda0ea3e2a0b5dd71"
],
"index": "pypi",
"markers": "python_version >= '3.8'",
"version": "==4.1.1"
},
"pytest-metadata": {

View File

@ -1,7 +1,8 @@
import os
import pytest
from src.aws.s3 import BackupBucket, ConfigBucket, DataBucket, S3Resource
from src.aws.s3 import BackupBucket, ConfigBucket, DataBucket, S3Client
@pytest.fixture
@ -15,7 +16,7 @@ def s3_test(s3_client, bucket_name):
yield
class TestS3Resource:
class TestS3Client:
def test_get_object(self, s3_test, s3_client, bucket_name):
"""
@ -31,7 +32,7 @@ class TestS3Resource:
s3_client.put_object(Bucket=bucket_name, Key='hogehoge/test.txt', Body=b'aaaaaaaaaaaaaaa')
# Act
sut = S3Resource(bucket_name)
sut = S3Client(bucket_name)
actual = sut.get_object('hogehoge/test.txt')
# Assert
@ -48,7 +49,7 @@ class TestS3Resource:
"""
# Arrange
# Act
sut = S3Resource(bucket_name)
sut = S3Client(bucket_name)
with pytest.raises(Exception):
# Assert
sut.get_object('hogehoge/test.txt')
@ -68,7 +69,7 @@ class TestS3Resource:
with open(file_path, mode='w') as f:
f.write('aaaaaaaaaaaaaaa')
sut = S3Resource(bucket_name)
sut = S3Client(bucket_name)
sut.put_object('hogehoge/test.txt', file_path)
actual = s3_client.get_object(Bucket=bucket_name, Key='hogehoge/test.txt')
@ -87,7 +88,7 @@ class TestS3Resource:
"""
# Arrange
# Act
sut = S3Resource(bucket_name)
sut = S3Client(bucket_name)
with pytest.raises(Exception):
# Assert
sut.put_object('hogehoge/test.txt', 'aaaaaaaaaaaaaaa')
@ -108,7 +109,7 @@ class TestS3Resource:
s3_client.create_bucket(Bucket=for_copy_bucket)
s3_client.put_object(Bucket=bucket_name, Key='hogehoge/test.txt', Body=b'aaaaaaaaaaaaaaa')
sut = S3Resource(bucket_name)
sut = S3Client(bucket_name)
sut.copy(bucket_name, 'hogehoge/test.txt', for_copy_bucket, 'test.txt')
actual = s3_client.get_object(Bucket=for_copy_bucket, Key='test.txt')
@ -125,7 +126,7 @@ class TestS3Resource:
"""
# Arrange
# Act
sut = S3Resource(bucket_name)
sut = S3Client(bucket_name)
with pytest.raises(Exception):
# Assert
sut.copy(bucket_name, 'hogehoge/test.txt', 'for_copy_bucket', 'test.txt')
@ -140,7 +141,7 @@ class TestS3Resource:
- インスタンス生成時に例外が発生すること
"""
with pytest.raises(Exception) as e:
S3Resource()
S3Client()
assert e.value.args[0] == "__init__() missing 1 required positional argument: 'bucket_name'"

View File

@ -4,8 +4,7 @@ from datetime import datetime
import boto3
import pytest
from moto import mock_s3
from py.xml import html # type: ignore
from moto import mock_aws
from . import docstring_parser
@ -21,7 +20,7 @@ def aws_credentials():
@pytest.fixture
def s3_client(aws_credentials):
with mock_s3():
with mock_aws():
conn = boto3.client("s3", region_name="us-east-1")
yield conn
@ -35,18 +34,18 @@ def pytest_html_report_title(report):
def pytest_html_results_table_header(cells):
del cells[2:]
cells.insert(3, html.th("Cases"))
cells.insert(4, html.th("Arranges"))
cells.insert(5, html.th("Expects"))
cells.append(html.th("Time", class_="sortable time", col="time"))
cells.insert(3, '<th>Cases</th>')
cells.insert(4, '<th>Arranges</th>')
cells.insert(5, '<th>Expects</th>')
cells.append('<th class="sortable time" col="time">Time</th>')
def pytest_html_results_table_row(report, cells):
del cells[2:]
cells.insert(3, html.td(html.pre(report.cases))) # 「テスト内容」をレポートに出力
cells.insert(4, html.td(html.pre(report.arranges))) # 「期待結果」をレポートに出力
cells.insert(5, html.td(html.pre(report.expects))) # 「期待結果」をレポートに出力
cells.append(html.td(datetime.now(), class_="col-time")) # ついでに「時間」もレポートに出力
cells.insert(3, f'<td><pre>{report.cases}</pre></td>') # 「テスト内容」をレポートに出力
cells.insert(4, f'<td><pre>{report.arranges}</pre></td>') # 「期待結果」をレポートに出力
cells.insert(5, f'<td><pre>{report.expects}</pre></td>') # 「期待結果」をレポートに出力
cells.append(f'<td class="col-time">{datetime.now()}</td>') # ついでに「時間」もレポートに出力
@pytest.hookimpl(hookwrapper=True)