From d9faab3e5ed8511e7df913a735e865723a165f3c Mon Sep 17 00:00:00 2001 From: Steve Pulec Date: Mon, 2 Nov 2015 13:25:31 -0500 Subject: [PATCH] Fix error for describing kinesis stream that has not been created. --- moto/kinesis/models.py | 5 ++++- tests/test_kinesis/test_firehose.py | 9 +++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/moto/kinesis/models.py b/moto/kinesis/models.py index a26e45af..d2d0d291 100644 --- a/moto/kinesis/models.py +++ b/moto/kinesis/models.py @@ -258,7 +258,10 @@ class KinesisBackend(BaseBackend): return stream def get_delivery_stream(self, stream_name): - return self.delivery_streams[stream_name] + if stream_name in self.delivery_streams: + return self.delivery_streams[stream_name] + else: + raise StreamNotFoundError(stream_name) def list_delivery_streams(self): return self.delivery_streams.values() diff --git a/tests/test_kinesis/test_firehose.py b/tests/test_kinesis/test_firehose.py index c2256284..37585fe5 100644 --- a/tests/test_kinesis/test_firehose.py +++ b/tests/test_kinesis/test_firehose.py @@ -2,6 +2,7 @@ from __future__ import unicode_literals import datetime +from botocore.exceptions import ClientError import boto3 from freezegun import freeze_time import sure # noqa @@ -86,6 +87,14 @@ def test_create_stream(): }) +@mock_kinesis +@freeze_time("2015-03-01") +def test_deescribe_non_existant_stream(): + client = boto3.client('firehose', region_name='us-east-1') + + client.describe_delivery_stream.when.called_with(DeliveryStreamName='not-a-stream').should.throw(ClientError) + + @mock_kinesis @freeze_time("2015-03-01") def test_list_and_delete_stream():