Techdebt: Replace sure with regular assertions in Utilities (#6660)
This commit is contained in:
		
							parent
							
								
									b71723b99a
								
							
						
					
					
						commit
						b1195f8eb3
					
				| @ -1,4 +1,3 @@ | |||||||
| import sure  # noqa # pylint: disable=unused-import |  | ||||||
| import pytest | import pytest | ||||||
| 
 | 
 | ||||||
| from moto.utilities.docker_utilities import parse_image_ref | from moto.utilities.docker_utilities import parse_image_ref | ||||||
| @ -19,13 +18,11 @@ from moto.utilities.docker_utilities import parse_image_ref | |||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
| def test_parse_image_ref(image_name, expected): | def test_parse_image_ref(image_name, expected): | ||||||
|     expected.should.be.equal(parse_image_ref(image_name)) |     assert expected == parse_image_ref(image_name) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_parse_image_ref_default_container_registry(monkeypatch): | def test_parse_image_ref_default_container_registry(monkeypatch): | ||||||
|     import moto.settings |     import moto.settings | ||||||
| 
 | 
 | ||||||
|     monkeypatch.setattr(moto.settings, "DEFAULT_CONTAINER_REGISTRY", "quay.io") |     monkeypatch.setattr(moto.settings, "DEFAULT_CONTAINER_REGISTRY", "quay.io") | ||||||
|     ("quay.io/centos/centos", "latest").should.be.equal( |     assert ("quay.io/centos/centos", "latest") == parse_image_ref("centos/centos") | ||||||
|         parse_image_ref("centos/centos") |  | ||||||
|     ) |  | ||||||
|  | |||||||
| @ -1,7 +1,7 @@ | |||||||
| import unittest | import unittest | ||||||
| 
 | 
 | ||||||
| import pytest | import pytest | ||||||
| import sure  # noqa # pylint: disable=unused-import | 
 | ||||||
| from moto.utilities.paginator import Paginator, paginate | from moto.utilities.paginator import Paginator, paginate | ||||||
| from moto.core.exceptions import InvalidToken | from moto.core.exceptions import InvalidToken | ||||||
| 
 | 
 | ||||||
| @ -31,11 +31,11 @@ def test_paginator_without_max_results__throws_error(): | |||||||
| def test_paginator__paginate_with_just_max_results(): | def test_paginator__paginate_with_just_max_results(): | ||||||
|     p = Paginator(max_results=50) |     p = Paginator(max_results=50) | ||||||
|     resp = p.paginate(results) |     resp = p.paginate(results) | ||||||
|     resp.should.have.length_of(2) |     assert len(resp) == 2 | ||||||
| 
 | 
 | ||||||
|     page, next_token = resp |     page, next_token = resp | ||||||
|     next_token.should.equal(None) |     assert next_token is None | ||||||
|     page.should.equal(results) |     assert page == results | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_paginator__paginate_without_range_key__throws_error(): | def test_paginator__paginate_without_range_key__throws_error(): | ||||||
| @ -53,11 +53,11 @@ def test_paginator__paginate_with_unknown_range_key__throws_error(): | |||||||
| def test_paginator__paginate_5(): | def test_paginator__paginate_5(): | ||||||
|     p = Paginator(max_results=5, unique_attribute=["name"]) |     p = Paginator(max_results=5, unique_attribute=["name"]) | ||||||
|     resp = p.paginate(results) |     resp = p.paginate(results) | ||||||
|     resp.should.have.length_of(2) |     assert len(resp) == 2 | ||||||
| 
 | 
 | ||||||
|     page, next_token = resp |     page, next_token = resp | ||||||
|     next_token.shouldnt.equal(None) |     assert next_token is not None | ||||||
|     page.should.equal(results[0:5]) |     assert page == results[0:5] | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_paginator__paginate_5__use_different_range_keys(): | def test_paginator__paginate_5__use_different_range_keys(): | ||||||
| @ -67,19 +67,19 @@ def test_paginator__paginate_5__use_different_range_keys(): | |||||||
|     p = Paginator(max_results=5, unique_attribute=["name"]) |     p = Paginator(max_results=5, unique_attribute=["name"]) | ||||||
|     _, token_as_lst = p.paginate(results) |     _, token_as_lst = p.paginate(results) | ||||||
| 
 | 
 | ||||||
|     token_as_lst.shouldnt.be(None) |     assert token_as_lst is not None | ||||||
|     token_as_lst.should.equal(token_as_str) |     assert token_as_lst == token_as_str | ||||||
| 
 | 
 | ||||||
|     p = Paginator(max_results=5, unique_attribute=["name", "arn"]) |     p = Paginator(max_results=5, unique_attribute=["name", "arn"]) | ||||||
|     _, token_multiple = p.paginate(results) |     _, token_multiple = p.paginate(results) | ||||||
|     token_multiple.shouldnt.be(None) |     assert token_multiple is not None | ||||||
|     token_multiple.shouldnt.equal(token_as_str) |     assert token_multiple != token_as_str | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_paginator__paginate_twice(): | def test_paginator__paginate_twice(): | ||||||
|     p = Paginator(max_results=5, unique_attribute=["name"]) |     p = Paginator(max_results=5, unique_attribute=["name"]) | ||||||
|     resp = p.paginate(results) |     resp = p.paginate(results) | ||||||
|     resp.should.have.length_of(2) |     assert len(resp) == 2 | ||||||
| 
 | 
 | ||||||
|     page, next_token = resp |     page, next_token = resp | ||||||
| 
 | 
 | ||||||
| @ -87,8 +87,8 @@ def test_paginator__paginate_twice(): | |||||||
|     resp = p.paginate(results) |     resp = p.paginate(results) | ||||||
| 
 | 
 | ||||||
|     page, next_token = resp |     page, next_token = resp | ||||||
|     next_token.should.equal(None) |     assert next_token is None | ||||||
|     page.should.equal(results[5:]) |     assert page == results[5:] | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_paginator__invalid_token(): | def test_paginator__invalid_token(): | ||||||
| @ -105,8 +105,8 @@ def test_paginator__invalid_token__but_we_just_dont_care(): | |||||||
|     ) |     ) | ||||||
|     res, token = p.paginate(results) |     res, token = p.paginate(results) | ||||||
| 
 | 
 | ||||||
|     res.should.equal([]) |     assert res == [] | ||||||
|     token.should.equal(None) |     assert token is None | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class CustomInvalidTokenException(BaseException): | class CustomInvalidTokenException(BaseException): | ||||||
| @ -177,7 +177,7 @@ class TestDecorator(unittest.TestCase): | |||||||
| 
 | 
 | ||||||
|     @paginate(pagination_model=PAGINATION_MODEL)  # type: ignore[misc] |     @paginate(pagination_model=PAGINATION_MODEL)  # type: ignore[misc] | ||||||
|     def method_returning_args(self, *args, **kwargs): |     def method_returning_args(self, *args, **kwargs): | ||||||
|         return [*args] + [(k, v) for k, v in kwargs.items()] |         return [*args] + list(kwargs.items()) | ||||||
| 
 | 
 | ||||||
|     @paginate(pagination_model=PAGINATION_MODEL)  # type: ignore[misc] |     @paginate(pagination_model=PAGINATION_MODEL)  # type: ignore[misc] | ||||||
|     def method_expecting_token_as_kwarg(self, custom_token=None): |     def method_expecting_token_as_kwarg(self, custom_token=None): | ||||||
| @ -190,7 +190,9 @@ class TestDecorator(unittest.TestCase): | |||||||
|         return [{"name": "item1"}, {"name": "item2"}] |         return [{"name": "item1"}, {"name": "item2"}] | ||||||
| 
 | 
 | ||||||
|     @paginate(pagination_model=PAGINATION_MODEL)  # type: ignore[misc] |     @paginate(pagination_model=PAGINATION_MODEL)  # type: ignore[misc] | ||||||
|     def method_with_list_as_kwarg(self, resources=[]): |     def method_with_list_as_kwarg(self, resources=None): | ||||||
|  |         if not resources: | ||||||
|  |             resources = [] | ||||||
|         return resources or results |         return resources or results | ||||||
| 
 | 
 | ||||||
|     @paginate(PAGINATION_MODEL)  # type: ignore[misc] |     @paginate(PAGINATION_MODEL)  # type: ignore[misc] | ||||||
| @ -203,26 +205,25 @@ class TestDecorator(unittest.TestCase): | |||||||
| 
 | 
 | ||||||
|     def test__method_returning_dict(self): |     def test__method_returning_dict(self): | ||||||
|         page, token = self.method_returning_dict() |         page, token = self.method_returning_dict() | ||||||
|         page.should.equal(results) |         assert page == results | ||||||
|         token.should.equal(None) |         assert token is None | ||||||
| 
 | 
 | ||||||
|     def test__method_returning_instances(self): |     def test__method_returning_instances(self): | ||||||
|         page, token = self.method_returning_instances() |         page, token = self.method_returning_instances() | ||||||
|         page.should.equal(model_results[0:10]) |         assert page == model_results[0:10] | ||||||
|         token.shouldnt.equal(None) |         assert token is not None | ||||||
| 
 | 
 | ||||||
|     def test__method_without_configuration(self): |     def test__method_without_configuration(self): | ||||||
|         with pytest.raises(ValueError): |         with pytest.raises(ValueError): | ||||||
|             self.method_without_configuration() |             self.method_without_configuration() | ||||||
| 
 | 
 | ||||||
|     def test__input_arguments_are_returned(self): |     def test__input_arguments_are_returned(self): | ||||||
|         resp, token = self.method_returning_args(1, "2", next_token=None, max_results=5) |         resp, _ = self.method_returning_args(1, "2", next_token=None, max_results=5) | ||||||
|         resp.should.have.length_of(4) |         assert len(resp) == 4 | ||||||
|         resp.should.contain(1) |         assert 1 in resp | ||||||
|         resp.should.contain("2") |         assert "2" in resp | ||||||
|         resp.should.contain(("next_token", None)) |         assert ("next_token", None) in resp | ||||||
|         resp.should.contain(("max_results", 5)) |         assert ("max_results", 5) in resp | ||||||
|         token.should.equal(None) |  | ||||||
| 
 | 
 | ||||||
|     def test__pass_exception_on_invalid_token(self): |     def test__pass_exception_on_invalid_token(self): | ||||||
|         # works fine if no token is specified |         # works fine if no token is specified | ||||||
| @ -233,67 +234,69 @@ class TestDecorator(unittest.TestCase): | |||||||
|             self.method_specifying_invalidtoken_exception( |             self.method_specifying_invalidtoken_exception( | ||||||
|                 next_token="some invalid token" |                 next_token="some invalid token" | ||||||
|             ) |             ) | ||||||
|         exc.value.should.be.a(CustomInvalidTokenException) |         assert isinstance(exc.value, CustomInvalidTokenException) | ||||||
|         exc.value.message.should.equal("Invalid token: some invalid token") |         assert exc.value.message == "Invalid token: some invalid token" | ||||||
| 
 | 
 | ||||||
|     def test__pass_generic_exception_on_invalid_token(self): |     def test__pass_generic_exception_on_invalid_token(self): | ||||||
|         # works fine if no token is specified |         # works fine if no token is specified | ||||||
|         self.method_specifying_generic_invalidtoken_exception() |         self.method_specifying_generic_invalidtoken_exception() | ||||||
| 
 | 
 | ||||||
|         # throws exception if next_token is invalid |         # throws exception if next_token is invalid | ||||||
|         # Exception does not take any arguments - our paginator needs to verify whether the next_token arg is expected |         # Exception does not take any arguments - our paginator needs to | ||||||
|  |         # verify whether the next_token arg is expected | ||||||
|         with pytest.raises(GenericInvalidTokenException) as exc: |         with pytest.raises(GenericInvalidTokenException) as exc: | ||||||
|             self.method_specifying_generic_invalidtoken_exception( |             self.method_specifying_generic_invalidtoken_exception( | ||||||
|                 next_token="some invalid token" |                 next_token="some invalid token" | ||||||
|             ) |             ) | ||||||
|         exc.value.should.be.a(GenericInvalidTokenException) |         assert isinstance(exc.value, GenericInvalidTokenException) | ||||||
|         exc.value.message.should.equal("Invalid token!") |         assert exc.value.message == "Invalid token!" | ||||||
| 
 | 
 | ||||||
|     def test__invoke_function_that_expects_token_as_keyword(self): |     def test__invoke_function_that_expects_token_as_keyword(self): | ||||||
|         resp, first_token = self.method_expecting_token_as_kwarg() |         resp, first_token = self.method_expecting_token_as_kwarg() | ||||||
|         resp.should.equal([{"name": "item1"}]) |         assert resp == [{"name": "item1"}] | ||||||
|         first_token.shouldnt.equal(None) |         assert first_token is not None | ||||||
|         self.custom_token.should.equal(None) |         assert self.custom_token is None | ||||||
| 
 | 
 | ||||||
|         # Verify the custom_token is received in the business method |         # Verify the custom_token is received in the business method | ||||||
|         # Could be handy for additional validation |         # Could be handy for additional validation | ||||||
|         resp, token = self.method_expecting_token_as_kwarg(custom_token=first_token) |         resp, _ = self.method_expecting_token_as_kwarg(custom_token=first_token) | ||||||
|         self.custom_token.should.equal(first_token) |         assert self.custom_token == first_token | ||||||
| 
 | 
 | ||||||
|     def test__invoke_function_that_expects_limit_as_keyword(self): |     def test__invoke_function_that_expects_limit_as_keyword(self): | ||||||
|         self.method_expecting_limit_as_kwarg(custom_limit=None) |         self.method_expecting_limit_as_kwarg(custom_limit=None) | ||||||
|         self.custom_limit.should.equal(None) |         assert self.custom_limit is None | ||||||
| 
 | 
 | ||||||
|         # Verify the custom_limit is received in the business method |         # Verify the custom_limit is received in the business method | ||||||
|         # Could be handy for additional validation |         # Could be handy for additional validation | ||||||
|         self.method_expecting_limit_as_kwarg(custom_limit=1) |         self.method_expecting_limit_as_kwarg(custom_limit=1) | ||||||
|         self.custom_limit.should.equal(1) |         assert self.custom_limit == 1 | ||||||
| 
 | 
 | ||||||
|     def test__verify_kwargs_can_be_a_list(self): |     def test__verify_kwargs_can_be_a_list(self): | ||||||
|         # Use case - verify that the kwarg can be of type list |         # Use case - verify that the kwarg can be of type list | ||||||
|         # Paginator creates a hash for all kwargs |         # Paginator creates a hash for all kwargs | ||||||
|         # We need to be make sure that the hash-function can deal with lists |         # We need to be make sure that the hash-function can deal with lists | ||||||
|         resp, token = self.method_with_list_as_kwarg() |         resp, token = self.method_with_list_as_kwarg() | ||||||
|         resp.should.equal(results[0:1]) |         assert resp == results[0:1] | ||||||
| 
 | 
 | ||||||
|         resp, token = self.method_with_list_as_kwarg(next_token=token) |         resp, token = self.method_with_list_as_kwarg(next_token=token) | ||||||
|         resp.should.equal(results[1:2]) |         assert resp == results[1:2] | ||||||
| 
 | 
 | ||||||
|         custom_list = [{"name": "a"}, {"name": "b"}] |         custom_list = [{"name": "a"}, {"name": "b"}] | ||||||
|         resp, token = self.method_with_list_as_kwarg(resources=custom_list) |         resp, token = self.method_with_list_as_kwarg(resources=custom_list) | ||||||
|         resp.should.equal(custom_list[0:1]) |         assert resp == custom_list[0:1] | ||||||
| 
 | 
 | ||||||
|         resp, token = self.method_with_list_as_kwarg( |         resp, token = self.method_with_list_as_kwarg( | ||||||
|             resources=custom_list, next_token=token |             resources=custom_list, next_token=token | ||||||
|         ) |         ) | ||||||
|         resp.should.equal(custom_list[1:]) |         assert resp == custom_list[1:] | ||||||
|         token.should.equal(None) |         assert token is None | ||||||
| 
 | 
 | ||||||
|     def test__paginator_fails_with_inconsistent_arguments(self): |     def test__paginator_fails_with_inconsistent_arguments(self): | ||||||
|         custom_list = [{"name": "a"}, {"name": "b"}] |         custom_list = [{"name": "a"}, {"name": "b"}] | ||||||
|         resp, token = self.method_with_list_as_kwarg(resources=custom_list) |         resp, token = self.method_with_list_as_kwarg(resources=custom_list) | ||||||
|         resp.should.equal(custom_list[0:1]) |         assert resp == custom_list[0:1] | ||||||
| 
 | 
 | ||||||
|         with pytest.raises(InvalidToken): |         with pytest.raises(InvalidToken): | ||||||
|             # This should fail, as our 'resources' argument is inconsistent with the original resources that were provided |             # This should fail, as our 'resources' argument is inconsistent | ||||||
|  |             # with the original resources that were provided | ||||||
|             self.method_with_list_as_kwarg(resources=results, next_token=token) |             self.method_with_list_as_kwarg(resources=results, next_token=token) | ||||||
|  | |||||||
| @ -6,7 +6,7 @@ def test_list_empty(): | |||||||
|     svc = TaggingService() |     svc = TaggingService() | ||||||
|     result = svc.list_tags_for_resource("test") |     result = svc.list_tags_for_resource("test") | ||||||
| 
 | 
 | ||||||
|     {"Tags": []}.should.be.equal(result) |     assert {"Tags": []} == result | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_create_tag(): | def test_create_tag(): | ||||||
| @ -16,7 +16,7 @@ def test_create_tag(): | |||||||
|     actual = svc.list_tags_for_resource("arn") |     actual = svc.list_tags_for_resource("arn") | ||||||
|     expected = {"TheTags": [{"TagKey": "key_key", "TagValue": "value_value"}]} |     expected = {"TheTags": [{"TagKey": "key_key", "TagValue": "value_value"}]} | ||||||
| 
 | 
 | ||||||
|     expected.should.be.equal(actual) |     assert expected == actual | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_create_tag_without_value(): | def test_create_tag_without_value(): | ||||||
| @ -26,7 +26,7 @@ def test_create_tag_without_value(): | |||||||
|     actual = svc.list_tags_for_resource("arn") |     actual = svc.list_tags_for_resource("arn") | ||||||
|     expected = {"Tags": [{"Key": "key_key", "Value": None}]} |     expected = {"Tags": [{"Key": "key_key", "Value": None}]} | ||||||
| 
 | 
 | ||||||
|     expected.should.be.equal(actual) |     assert expected == actual | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_delete_tag_using_names(): | def test_delete_tag_using_names(): | ||||||
| @ -36,7 +36,7 @@ def test_delete_tag_using_names(): | |||||||
|     svc.untag_resource_using_names("arn", ["key_key"]) |     svc.untag_resource_using_names("arn", ["key_key"]) | ||||||
|     result = svc.list_tags_for_resource("arn") |     result = svc.list_tags_for_resource("arn") | ||||||
| 
 | 
 | ||||||
|     {"Tags": []}.should.be.equal(result) |     assert {"Tags": []} == result | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_delete_all_tags_for_resource(): | def test_delete_all_tags_for_resource(): | ||||||
| @ -48,7 +48,7 @@ def test_delete_all_tags_for_resource(): | |||||||
|     svc.delete_all_tags_for_resource("arn") |     svc.delete_all_tags_for_resource("arn") | ||||||
|     result = svc.list_tags_for_resource("arn") |     result = svc.list_tags_for_resource("arn") | ||||||
| 
 | 
 | ||||||
|     {"Tags": []}.should.be.equal(result) |     assert {"Tags": []} == result | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_list_empty_delete(): | def test_list_empty_delete(): | ||||||
| @ -56,7 +56,7 @@ def test_list_empty_delete(): | |||||||
|     svc.untag_resource_using_names("arn", ["key_key"]) |     svc.untag_resource_using_names("arn", ["key_key"]) | ||||||
|     result = svc.list_tags_for_resource("arn") |     result = svc.list_tags_for_resource("arn") | ||||||
| 
 | 
 | ||||||
|     {"Tags": []}.should.be.equal(result) |     assert {"Tags": []} == result | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_delete_tag_using_tags(): | def test_delete_tag_using_tags(): | ||||||
| @ -66,7 +66,7 @@ def test_delete_tag_using_tags(): | |||||||
|     svc.untag_resource_using_tags("arn", tags) |     svc.untag_resource_using_tags("arn", tags) | ||||||
|     result = svc.list_tags_for_resource("arn") |     result = svc.list_tags_for_resource("arn") | ||||||
| 
 | 
 | ||||||
|     {"Tags": []}.should.be.equal(result) |     assert {"Tags": []} == result | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_extract_tag_names(): | def test_extract_tag_names(): | ||||||
| @ -75,7 +75,7 @@ def test_extract_tag_names(): | |||||||
|     actual = svc.extract_tag_names(tags) |     actual = svc.extract_tag_names(tags) | ||||||
|     expected = ["key1", "key2"] |     expected = ["key1", "key2"] | ||||||
| 
 | 
 | ||||||
|     expected.should.be.equal(actual) |     assert expected == actual | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_copy_non_existing_arn(): | def test_copy_non_existing_arn(): | ||||||
| @ -89,7 +89,7 @@ def test_copy_non_existing_arn(): | |||||||
|     actual = sorted( |     actual = sorted( | ||||||
|         svc.list_tags_for_resource("new_arn")["Tags"], key=lambda t: t["Key"] |         svc.list_tags_for_resource("new_arn")["Tags"], key=lambda t: t["Key"] | ||||||
|     ) |     ) | ||||||
|     actual.should.equal(tags) |     assert actual == tags | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_copy_existing_arn(): | def test_copy_existing_arn(): | ||||||
| @ -104,9 +104,10 @@ def test_copy_existing_arn(): | |||||||
|     actual = sorted( |     actual = sorted( | ||||||
|         svc.list_tags_for_resource("new_arn")["Tags"], key=lambda t: t["Key"] |         svc.list_tags_for_resource("new_arn")["Tags"], key=lambda t: t["Key"] | ||||||
|     ) |     ) | ||||||
|     actual.should.equal( |     assert actual == [ | ||||||
|         [{"Key": "key1", "Value": "value1"}, {"Key": "key2", "Value": "value2"}] |         {"Key": "key1", "Value": "value1"}, | ||||||
|     ) |         {"Key": "key2", "Value": "value2"}, | ||||||
|  |     ] | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_validate_tags(): | def test_validate_tags(): | ||||||
|  | |||||||
| @ -1,10 +1,11 @@ | |||||||
| import boto3 |  | ||||||
| import sure  # noqa # pylint: disable=unused-import |  | ||||||
| import requests |  | ||||||
| import unittest | import unittest | ||||||
|  | from unittest import SkipTest | ||||||
|  | 
 | ||||||
|  | import boto3 | ||||||
|  | import requests | ||||||
|  | 
 | ||||||
| from moto import mock_s3, settings | from moto import mock_s3, settings | ||||||
| from moto.server import ThreadedMotoServer | from moto.server import ThreadedMotoServer | ||||||
| from unittest import SkipTest |  | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class TestThreadedMotoServer(unittest.TestCase): | class TestThreadedMotoServer(unittest.TestCase): | ||||||
| @ -27,8 +28,8 @@ class TestThreadedMotoServer(unittest.TestCase): | |||||||
|         ) |         ) | ||||||
|         s3_client.create_bucket(Bucket="test") |         s3_client.create_bucket(Bucket="test") | ||||||
|         buckets = s3_client.list_buckets()["Buckets"] |         buckets = s3_client.list_buckets()["Buckets"] | ||||||
|         buckets.should.have.length_of(1) |         assert len(buckets) == 1 | ||||||
|         [b["Name"] for b in buckets].should.equal(["test"]) |         assert [b["Name"] for b in buckets] == ["test"] | ||||||
| 
 | 
 | ||||||
|     def test_server_can_handle_multiple_services(self): |     def test_server_can_handle_multiple_services(self): | ||||||
|         s3_client = boto3.client( |         s3_client = boto3.client( | ||||||
| @ -49,9 +50,9 @@ class TestThreadedMotoServer(unittest.TestCase): | |||||||
|         ) |         ) | ||||||
| 
 | 
 | ||||||
|         buckets = s3_client.list_buckets()["Buckets"] |         buckets = s3_client.list_buckets()["Buckets"] | ||||||
|         [b["Name"] for b in buckets].should.equal(["test"]) |         assert [b["Name"] for b in buckets] == ["test"] | ||||||
| 
 | 
 | ||||||
|         dynamodb_client.list_tables()["TableNames"].should.equal(["table1"]) |         assert dynamodb_client.list_tables()["TableNames"] == ["table1"] | ||||||
| 
 | 
 | ||||||
|     @mock_s3 |     @mock_s3 | ||||||
|     def test_load_data_from_inmemory_client(self): |     def test_load_data_from_inmemory_client(self): | ||||||
| @ -65,7 +66,7 @@ class TestThreadedMotoServer(unittest.TestCase): | |||||||
| 
 | 
 | ||||||
|         in_mem_client = boto3.client("s3") |         in_mem_client = boto3.client("s3") | ||||||
|         buckets = in_mem_client.list_buckets()["Buckets"] |         buckets = in_mem_client.list_buckets()["Buckets"] | ||||||
|         [b["Name"] for b in buckets].should.equal(["test"]) |         assert [b["Name"] for b in buckets] == ["test"] | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def test_threaded_moto_server__different_port(): | def test_threaded_moto_server__different_port(): | ||||||
| @ -83,7 +84,7 @@ def test_threaded_moto_server__different_port(): | |||||||
|         ) |         ) | ||||||
|         s3_client.create_bucket(Bucket="test") |         s3_client.create_bucket(Bucket="test") | ||||||
|         buckets = s3_client.list_buckets()["Buckets"] |         buckets = s3_client.list_buckets()["Buckets"] | ||||||
|         [b["Name"] for b in buckets].should.equal(["test"]) |         assert [b["Name"] for b in buckets] == ["test"] | ||||||
|     finally: |     finally: | ||||||
|         server.stop() |         server.stop() | ||||||
| 
 | 
 | ||||||
| @ -96,8 +97,7 @@ def test_threaded_moto_server__using_requests(): | |||||||
|     requests.post("http://localhost:5001/moto-api/reset") |     requests.post("http://localhost:5001/moto-api/reset") | ||||||
|     try: |     try: | ||||||
|         r = requests.get("http://localhost:5001/moto-api") |         r = requests.get("http://localhost:5001/moto-api") | ||||||
|         r.content.should.contain(b"<title>Moto</title>") |         assert b"<title>Moto</title>" in r.content | ||||||
|         r.status_code.should.equal(200) |         assert r.status_code == 200 | ||||||
|     finally: |     finally: | ||||||
|         server.stop() |         server.stop() | ||||||
|         pass |  | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user