moto/tests/test_mediastoredata/test_mediastoredata.py

71 lines
2.4 KiB
Python
Raw Normal View History

import boto3
import pytest
2021-10-18 19:44:29 +00:00
import sure # noqa # pylint: disable=unused-import
from botocore.exceptions import ClientError
from moto import mock_mediastoredata
region = "eu-west-1"
@mock_mediastoredata
def test_put_object():
client = boto3.client("mediastore-data", region_name=region)
response = client.put_object(Body="011001", Path="foo")
response["ResponseMetadata"]["HTTPStatusCode"].should.equal(200)
response["StorageClass"].should.equal("TEMPORAL")
items = client.list_items()["Items"]
object_exists = any(d["Name"] == "foo" for d in items)
object_exists.should.equal(True)
@mock_mediastoredata
def test_get_object_throws_not_found_error():
client = boto3.client("mediastore-data", region_name=region)
with pytest.raises(ClientError) as ex:
client.get_object(Path="foo")
ex.value.response["Error"]["Code"].should.equal("ObjectNotFoundException")
@mock_mediastoredata
def test_get_object():
client = boto3.client("mediastore-data", region_name=region)
client.put_object(Body="011001", Path="foo")
response = client.get_object(Path="foo")
response["ResponseMetadata"]["HTTPStatusCode"].should.equal(200)
response["ResponseMetadata"]["HTTPHeaders"]["path"].should.equal("foo")
data = response["Body"].read()
data.should.equal(b"011001")
@mock_mediastoredata
def test_delete_object_error():
client = boto3.client("mediastore-data", region_name=region)
with pytest.raises(ClientError) as ex:
client.delete_object(Path="foo")
ex.value.response["Error"]["Code"].should.equal("ObjectNotFoundException")
@mock_mediastoredata
def test_delete_object_succeeds():
client = boto3.client("mediastore-data", region_name=region)
object_path = "foo"
client.put_object(Body="011001", Path=object_path)
response = client.delete_object(Path=object_path)
response["ResponseMetadata"]["HTTPStatusCode"].should.equal(200)
items = client.list_items()["Items"]
len(items).should.equal(0)
@mock_mediastoredata
def test_list_items():
client = boto3.client("mediastore-data", region_name=region)
items = client.list_items()["Items"]
len(items).should.equal(0)
object_path = "foo"
client.put_object(Body="011001", Path=object_path)
items = client.list_items()["Items"]
len(items).should.equal(1)
object_exists = any(d["Name"] == object_path for d in items)
object_exists.should.equal(True)