moto/tests/test_dynamodb/test_server.py

32 lines
982 B
Python
Raw Normal View History

import json
from moto import mock_dynamodb
2013-03-05 13:14:43 +00:00
import moto.server as server
2019-10-31 15:44:26 +00:00
"""
2013-03-05 13:14:43 +00:00
Test the different server responses
2019-10-31 15:44:26 +00:00
"""
2013-03-05 13:14:43 +00:00
2013-12-29 01:15:37 +00:00
@mock_dynamodb
2022-03-09 17:57:25 +00:00
def test_table_list():
backend = server.create_backend_app("dynamodb")
test_client = backend.test_client()
2019-10-31 15:44:26 +00:00
res = test_client.get("/")
assert res.status_code == 404
2013-03-05 13:14:43 +00:00
2021-09-22 21:22:56 +00:00
headers = {"X-Amz-Target": "TestTable.ListTables"}
res = test_client.get("/", headers=headers)
assert b"TableNames" in res.data
assert "X-Amz-Crc32" in res.headers
headers = {"X-Amz-Target": "DynamoDB_20120810.DescribeTable"}
res = test_client.post(
"/", headers=headers, data=json.dumps({"TableName": "test-table2"})
)
assert res.headers["X-Amzn-ErrorType"] == "ResourceNotFoundException"
body = json.loads(res.data.decode("utf-8"))
assert body == {
"__type": "com.amazonaws.dynamodb.v20120810#ResourceNotFoundException",
"message": "Requested resource not found: Table: test-table2 not found",
}