Merge pull request #427 fix-NEWDWH2021-1681-resolve-dependencies into develop
This commit is contained in:
commit
ae15dffef9
67
ecs/crm-datafetch/Pipfile.lock
generated
67
ecs/crm-datafetch/Pipfile.lock
generated
@ -21,25 +21,24 @@
|
|||||||
"sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346",
|
"sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346",
|
||||||
"sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2"
|
"sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_full_version >= '3.7.0'",
|
||||||
"version": "==24.2.0"
|
"version": "==24.2.0"
|
||||||
},
|
},
|
||||||
"boto3": {
|
"boto3": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:21120d23cc37c0e80dc4f64434bc5664d2a5645dcd9bf8a8fa97ed5c82164ca0",
|
"sha256:c2f0837a259002489e59d1c30008791e3b3bb59e30e48c64e1d2d270147a4549",
|
||||||
"sha256:ffe7bbb88ba81b5d54bc8fa0cfb2f3b7fe63a6cffa0f9207df2ef5c22a1c0587"
|
"sha256:cbf197ce28f04bc1ffa1db0aa26a1903d9bfa57a490f70537932e84367cdd15b"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"markers": "python_version >= '3.8'",
|
"version": "==1.35.2"
|
||||||
"version": "==1.34.159"
|
|
||||||
},
|
},
|
||||||
"botocore": {
|
"botocore": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:7633062491457419a49f5860c014251ae85689f78266a3ce020c2c8688a76b97",
|
"sha256:92b168d8be79055bb25754aa34d699866d8aa66abc69f8ce99b0c191bd9c6e70",
|
||||||
"sha256:dc28806eb21e3c8d690c422530dff8b4b242ac033cbe98f160a9d37796c09cb1"
|
"sha256:96c8eb6f0baed623a1b57ca9f24cb21d5508872cf0dfebb55527a85b6dbc76ba"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.8'",
|
"markers": "python_version >= '3.8'",
|
||||||
"version": "==1.34.159"
|
"version": "==1.35.2"
|
||||||
},
|
},
|
||||||
"certifi": {
|
"certifi": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@ -248,7 +247,7 @@
|
|||||||
"sha256:ee0c405832ade84d4de74b9029bedb7b31200600fa524d218fc29bfa371e97f5",
|
"sha256:ee0c405832ade84d4de74b9029bedb7b31200600fa524d218fc29bfa371e97f5",
|
||||||
"sha256:fdcb265de28585de5b859ae13e3846a8e805268a823a12a4da2597f1f5afc9f0"
|
"sha256:fdcb265de28585de5b859ae13e3846a8e805268a823a12a4da2597f1f5afc9f0"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_full_version >= '3.7.0'",
|
||||||
"version": "==43.0.0"
|
"version": "==43.0.0"
|
||||||
},
|
},
|
||||||
"idna": {
|
"idna": {
|
||||||
@ -271,7 +270,7 @@
|
|||||||
"sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980",
|
"sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980",
|
||||||
"sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe"
|
"sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_full_version >= '3.7.0'",
|
||||||
"version": "==1.0.1"
|
"version": "==1.0.1"
|
||||||
},
|
},
|
||||||
"lxml": {
|
"lxml": {
|
||||||
@ -418,6 +417,14 @@
|
|||||||
"markers": "python_version >= '3.6'",
|
"markers": "python_version >= '3.6'",
|
||||||
"version": "==5.3.0"
|
"version": "==5.3.0"
|
||||||
},
|
},
|
||||||
|
"more-itertools": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:0f7d9f83a0a8dcfa8a2694a770590d98a67ea943e3d9f5298309a484758c4e27",
|
||||||
|
"sha256:fe0e63c4ab068eac62410ab05cccca2dc71ec44ba8ef29916a0090df061cf923"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '3.8'",
|
||||||
|
"version": "==10.4.0"
|
||||||
|
},
|
||||||
"platformdirs": {
|
"platformdirs": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:2d7a1657e36a80ea911db832a8a6ece5ee53d8de21edd5cc5879af6530b1bfee",
|
"sha256:2d7a1657e36a80ea911db832a8a6ece5ee53d8de21edd5cc5879af6530b1bfee",
|
||||||
@ -513,9 +520,16 @@
|
|||||||
"sha256:93de0c98785b27fcf659856aa9f54bfbd399e29969b0621bc7f762bd441b4539"
|
"sha256:93de0c98785b27fcf659856aa9f54bfbd399e29969b0621bc7f762bd441b4539"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"markers": "python_version >= '3.8'",
|
|
||||||
"version": "==9.0.0"
|
"version": "==9.0.0"
|
||||||
},
|
},
|
||||||
|
"typing-extensions": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d",
|
||||||
|
"sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '3.8'",
|
||||||
|
"version": "==4.12.2"
|
||||||
|
},
|
||||||
"urllib3": {
|
"urllib3": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:37a0344459b199fce0e80b0d3569837ec6b6937435c5244e7fd73fa6006830f3",
|
"sha256:37a0344459b199fce0e80b0d3569837ec6b6937435c5244e7fd73fa6006830f3",
|
||||||
@ -529,7 +543,7 @@
|
|||||||
"sha256:6754feb4c34a4b6d65fbc359252bf6654dcce3937bf1d95aae4402a60a8f5939",
|
"sha256:6754feb4c34a4b6d65fbc359252bf6654dcce3937bf1d95aae4402a60a8f5939",
|
||||||
"sha256:72093acfdb1d8360ed400869b73fbf1882b95c4287f798084c42ee0c1ff0e425"
|
"sha256:72093acfdb1d8360ed400869b73fbf1882b95c4287f798084c42ee0c1ff0e425"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_full_version >= '3.7.0'",
|
||||||
"version": "==4.2.1"
|
"version": "==4.2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -540,25 +554,23 @@
|
|||||||
"sha256:a203fe0fcad7939987422140ab17a930f684763bf7335bdb6709991dd7ef6c2d"
|
"sha256:a203fe0fcad7939987422140ab17a930f684763bf7335bdb6709991dd7ef6c2d"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"markers": "python_version >= '3.8'",
|
|
||||||
"version": "==2.3.1"
|
"version": "==2.3.1"
|
||||||
},
|
},
|
||||||
"boto3": {
|
"boto3": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:21120d23cc37c0e80dc4f64434bc5664d2a5645dcd9bf8a8fa97ed5c82164ca0",
|
"sha256:c2f0837a259002489e59d1c30008791e3b3bb59e30e48c64e1d2d270147a4549",
|
||||||
"sha256:ffe7bbb88ba81b5d54bc8fa0cfb2f3b7fe63a6cffa0f9207df2ef5c22a1c0587"
|
"sha256:cbf197ce28f04bc1ffa1db0aa26a1903d9bfa57a490f70537932e84367cdd15b"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"markers": "python_version >= '3.8'",
|
"version": "==1.35.2"
|
||||||
"version": "==1.34.159"
|
|
||||||
},
|
},
|
||||||
"botocore": {
|
"botocore": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:7633062491457419a49f5860c014251ae85689f78266a3ce020c2c8688a76b97",
|
"sha256:92b168d8be79055bb25754aa34d699866d8aa66abc69f8ce99b0c191bd9c6e70",
|
||||||
"sha256:dc28806eb21e3c8d690c422530dff8b4b242ac033cbe98f160a9d37796c09cb1"
|
"sha256:96c8eb6f0baed623a1b57ca9f24cb21d5508872cf0dfebb55527a85b6dbc76ba"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.8'",
|
"markers": "python_version >= '3.8'",
|
||||||
"version": "==1.34.159"
|
"version": "==1.35.2"
|
||||||
},
|
},
|
||||||
"certifi": {
|
"certifi": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@ -848,7 +860,7 @@
|
|||||||
"sha256:ee0c405832ade84d4de74b9029bedb7b31200600fa524d218fc29bfa371e97f5",
|
"sha256:ee0c405832ade84d4de74b9029bedb7b31200600fa524d218fc29bfa371e97f5",
|
||||||
"sha256:fdcb265de28585de5b859ae13e3846a8e805268a823a12a4da2597f1f5afc9f0"
|
"sha256:fdcb265de28585de5b859ae13e3846a8e805268a823a12a4da2597f1f5afc9f0"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_full_version >= '3.7.0'",
|
||||||
"version": "==43.0.0"
|
"version": "==43.0.0"
|
||||||
},
|
},
|
||||||
"exceptiongroup": {
|
"exceptiongroup": {
|
||||||
@ -865,7 +877,6 @@
|
|||||||
"sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213"
|
"sha256:597477df7860daa5aa0fdd84bf5208a043ab96b8e96ab708770ae0364dd03213"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"markers": "python_full_version >= '3.8.1'",
|
|
||||||
"version": "==7.1.1"
|
"version": "==7.1.1"
|
||||||
},
|
},
|
||||||
"idna": {
|
"idna": {
|
||||||
@ -897,7 +908,7 @@
|
|||||||
"sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980",
|
"sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980",
|
||||||
"sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe"
|
"sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_full_version >= '3.7.0'",
|
||||||
"version": "==1.0.1"
|
"version": "==1.0.1"
|
||||||
},
|
},
|
||||||
"markupsafe": {
|
"markupsafe": {
|
||||||
@ -976,12 +987,11 @@
|
|||||||
},
|
},
|
||||||
"moto": {
|
"moto": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:10bd434bfda329639fe9529470c4c27938064c139984024e6a62513e50aff427",
|
"sha256:984377a9c4536543fc09f49a1d5210c61c4a4f55c79719f7d9f8dcdd9bf55ea5",
|
||||||
"sha256:406095ba28da9e67e59bfc6b31b4a2627ca896d3e2c7eb82838fbe527e3c218a"
|
"sha256:ddf8864f0d61af88fd07a4e5eac428c6bebf4fcd10023f8e756e65e9e7b7e4a5"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"markers": "python_version >= '3.8'",
|
"version": "==5.0.13"
|
||||||
"version": "==5.0.12"
|
|
||||||
},
|
},
|
||||||
"packaging": {
|
"packaging": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@ -1029,7 +1039,6 @@
|
|||||||
"sha256:c132345d12ce551242c87269de812483f5bcc87cdbb4722e48487ba194f9fdce"
|
"sha256:c132345d12ce551242c87269de812483f5bcc87cdbb4722e48487ba194f9fdce"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"markers": "python_version >= '3.8'",
|
|
||||||
"version": "==8.3.2"
|
"version": "==8.3.2"
|
||||||
},
|
},
|
||||||
"pytest-cov": {
|
"pytest-cov": {
|
||||||
@ -1038,7 +1047,6 @@
|
|||||||
"sha256:5837b58e9f6ebd335b0f8060eecce69b662415b16dc503883a02f45dfeb14857"
|
"sha256:5837b58e9f6ebd335b0f8060eecce69b662415b16dc503883a02f45dfeb14857"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"markers": "python_version >= '3.8'",
|
|
||||||
"version": "==5.0.0"
|
"version": "==5.0.0"
|
||||||
},
|
},
|
||||||
"pytest-html": {
|
"pytest-html": {
|
||||||
@ -1047,7 +1055,6 @@
|
|||||||
"sha256:c8152cea03bd4e9bee6d525573b67bbc6622967b72b9628dda0ea3e2a0b5dd71"
|
"sha256:c8152cea03bd4e9bee6d525573b67bbc6622967b72b9628dda0ea3e2a0b5dd71"
|
||||||
],
|
],
|
||||||
"index": "pypi",
|
"index": "pypi",
|
||||||
"markers": "python_version >= '3.8'",
|
|
||||||
"version": "==4.1.1"
|
"version": "==4.1.1"
|
||||||
},
|
},
|
||||||
"pytest-metadata": {
|
"pytest-metadata": {
|
||||||
|
|||||||
@ -1,7 +1,8 @@
|
|||||||
import os
|
import os
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
from src.aws.s3 import BackupBucket, ConfigBucket, DataBucket, S3Resource
|
|
||||||
|
from src.aws.s3 import BackupBucket, ConfigBucket, DataBucket, S3Client
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
@ -15,7 +16,7 @@ def s3_test(s3_client, bucket_name):
|
|||||||
yield
|
yield
|
||||||
|
|
||||||
|
|
||||||
class TestS3Resource:
|
class TestS3Client:
|
||||||
|
|
||||||
def test_get_object(self, s3_test, s3_client, bucket_name):
|
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')
|
s3_client.put_object(Bucket=bucket_name, Key='hogehoge/test.txt', Body=b'aaaaaaaaaaaaaaa')
|
||||||
|
|
||||||
# Act
|
# Act
|
||||||
sut = S3Resource(bucket_name)
|
sut = S3Client(bucket_name)
|
||||||
actual = sut.get_object('hogehoge/test.txt')
|
actual = sut.get_object('hogehoge/test.txt')
|
||||||
|
|
||||||
# Assert
|
# Assert
|
||||||
@ -48,7 +49,7 @@ class TestS3Resource:
|
|||||||
"""
|
"""
|
||||||
# Arrange
|
# Arrange
|
||||||
# Act
|
# Act
|
||||||
sut = S3Resource(bucket_name)
|
sut = S3Client(bucket_name)
|
||||||
with pytest.raises(Exception):
|
with pytest.raises(Exception):
|
||||||
# Assert
|
# Assert
|
||||||
sut.get_object('hogehoge/test.txt')
|
sut.get_object('hogehoge/test.txt')
|
||||||
@ -68,7 +69,7 @@ class TestS3Resource:
|
|||||||
with open(file_path, mode='w') as f:
|
with open(file_path, mode='w') as f:
|
||||||
f.write('aaaaaaaaaaaaaaa')
|
f.write('aaaaaaaaaaaaaaa')
|
||||||
|
|
||||||
sut = S3Resource(bucket_name)
|
sut = S3Client(bucket_name)
|
||||||
|
|
||||||
sut.put_object('hogehoge/test.txt', file_path)
|
sut.put_object('hogehoge/test.txt', file_path)
|
||||||
actual = s3_client.get_object(Bucket=bucket_name, Key='hogehoge/test.txt')
|
actual = s3_client.get_object(Bucket=bucket_name, Key='hogehoge/test.txt')
|
||||||
@ -87,7 +88,7 @@ class TestS3Resource:
|
|||||||
"""
|
"""
|
||||||
# Arrange
|
# Arrange
|
||||||
# Act
|
# Act
|
||||||
sut = S3Resource(bucket_name)
|
sut = S3Client(bucket_name)
|
||||||
with pytest.raises(Exception):
|
with pytest.raises(Exception):
|
||||||
# Assert
|
# Assert
|
||||||
sut.put_object('hogehoge/test.txt', 'aaaaaaaaaaaaaaa')
|
sut.put_object('hogehoge/test.txt', 'aaaaaaaaaaaaaaa')
|
||||||
@ -108,7 +109,7 @@ class TestS3Resource:
|
|||||||
s3_client.create_bucket(Bucket=for_copy_bucket)
|
s3_client.create_bucket(Bucket=for_copy_bucket)
|
||||||
s3_client.put_object(Bucket=bucket_name, Key='hogehoge/test.txt', Body=b'aaaaaaaaaaaaaaa')
|
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')
|
sut.copy(bucket_name, 'hogehoge/test.txt', for_copy_bucket, 'test.txt')
|
||||||
|
|
||||||
actual = s3_client.get_object(Bucket=for_copy_bucket, Key='test.txt')
|
actual = s3_client.get_object(Bucket=for_copy_bucket, Key='test.txt')
|
||||||
@ -125,7 +126,7 @@ class TestS3Resource:
|
|||||||
"""
|
"""
|
||||||
# Arrange
|
# Arrange
|
||||||
# Act
|
# Act
|
||||||
sut = S3Resource(bucket_name)
|
sut = S3Client(bucket_name)
|
||||||
with pytest.raises(Exception):
|
with pytest.raises(Exception):
|
||||||
# Assert
|
# Assert
|
||||||
sut.copy(bucket_name, 'hogehoge/test.txt', 'for_copy_bucket', 'test.txt')
|
sut.copy(bucket_name, 'hogehoge/test.txt', 'for_copy_bucket', 'test.txt')
|
||||||
@ -140,7 +141,7 @@ class TestS3Resource:
|
|||||||
- インスタンス生成時に例外が発生すること
|
- インスタンス生成時に例外が発生すること
|
||||||
"""
|
"""
|
||||||
with pytest.raises(Exception) as e:
|
with pytest.raises(Exception) as e:
|
||||||
S3Resource()
|
S3Client()
|
||||||
assert e.value.args[0] == "__init__() missing 1 required positional argument: 'bucket_name'"
|
assert e.value.args[0] == "__init__() missing 1 required positional argument: 'bucket_name'"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -4,8 +4,7 @@ from datetime import datetime
|
|||||||
|
|
||||||
import boto3
|
import boto3
|
||||||
import pytest
|
import pytest
|
||||||
from moto import mock_s3
|
from moto import mock_aws
|
||||||
from py.xml import html # type: ignore
|
|
||||||
|
|
||||||
from . import docstring_parser
|
from . import docstring_parser
|
||||||
|
|
||||||
@ -21,7 +20,7 @@ def aws_credentials():
|
|||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def s3_client(aws_credentials):
|
def s3_client(aws_credentials):
|
||||||
with mock_s3():
|
with mock_aws():
|
||||||
conn = boto3.client("s3", region_name="us-east-1")
|
conn = boto3.client("s3", region_name="us-east-1")
|
||||||
yield conn
|
yield conn
|
||||||
|
|
||||||
@ -35,18 +34,18 @@ def pytest_html_report_title(report):
|
|||||||
|
|
||||||
def pytest_html_results_table_header(cells):
|
def pytest_html_results_table_header(cells):
|
||||||
del cells[2:]
|
del cells[2:]
|
||||||
cells.insert(3, html.th("Cases"))
|
cells.insert(3, '<th>Cases</th>')
|
||||||
cells.insert(4, html.th("Arranges"))
|
cells.insert(4, '<th>Arranges</th>')
|
||||||
cells.insert(5, html.th("Expects"))
|
cells.insert(5, '<th>Expects</th>')
|
||||||
cells.append(html.th("Time", class_="sortable time", col="time"))
|
cells.append('<th class="sortable time" col="time">Time</th>')
|
||||||
|
|
||||||
|
|
||||||
def pytest_html_results_table_row(report, cells):
|
def pytest_html_results_table_row(report, cells):
|
||||||
del cells[2:]
|
del cells[2:]
|
||||||
cells.insert(3, html.td(html.pre(report.cases))) # 「テスト内容」をレポートに出力
|
cells.insert(3, f'<td><pre>{report.cases}</pre></td>') # 「テスト内容」をレポートに出力
|
||||||
cells.insert(4, html.td(html.pre(report.arranges))) # 「期待結果」をレポートに出力
|
cells.insert(4, f'<td><pre>{report.arranges}</pre></td>') # 「期待結果」をレポートに出力
|
||||||
cells.insert(5, html.td(html.pre(report.expects))) # 「期待結果」をレポートに出力
|
cells.insert(5, f'<td><pre>{report.expects}</pre></td>') # 「期待結果」をレポートに出力
|
||||||
cells.append(html.td(datetime.now(), class_="col-time")) # ついでに「時間」もレポートに出力
|
cells.append(f'<td class="col-time">{datetime.now()}</td>') # ついでに「時間」もレポートに出力
|
||||||
|
|
||||||
|
|
||||||
@pytest.hookimpl(hookwrapper=True)
|
@pytest.hookimpl(hookwrapper=True)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user