This repository was archived by the owner on Mar 23, 2026. It is now read-only.
GitHub Actions / LocalStack Community integration with Pro
failed
Jan 29, 2026 in 0s
2 fail, 388 skipped, 4 786 pass in 1h 58m 10s
Annotations
Check warning on line 0 in tests.aws.services.sns.test_sns.TestSNSSubscriptionSQS
github-actions / LocalStack Community integration with Pro
test_publish_batch_exceptions (tests.aws.services.sns.test_sns.TestSNSSubscriptionSQS) failed
pytest-junit-community-2.xml [took 0s]
Raw output
Failed: DID NOT RAISE <class 'botocore.exceptions.ClientError'>
self = <tests.aws.services.sns.test_sns.TestSNSSubscriptionSQS object at 0x7f0acedac250>
sns_create_topic = <function sns_create_topic.<locals>._create_topic at 0x7f07c9901f80>
sqs_create_queue = <function sqs_create_queue.<locals>.factory at 0x7f07c99022a0>
sns_create_sqs_subscription = <function sns_create_sqs_subscription.<locals>._factory at 0x7f07c9902ca0>
snapshot = <localstack_snapshot.snapshots.prototype.SnapshotSession object at 0x7f080858a450>
aws_client = <localstack.aws.connect.ServiceLevelClientFactory object at 0x7f0ac5eb4050>
@markers.aws.validated
def test_publish_batch_exceptions(
self, sns_create_topic, sqs_create_queue, sns_create_sqs_subscription, snapshot, aws_client
):
fifo_topic_name = f"topic-{short_uid()}.fifo"
topic_arn = sns_create_topic(Name=fifo_topic_name, Attributes={"FifoTopic": "true"})[
"TopicArn"
]
with pytest.raises(ClientError) as e:
aws_client.sns.publish_batch(
TopicArn=topic_arn,
PublishBatchRequestEntries=[
{
"Id": "1",
"Message": "Test message without Group ID",
}
],
)
snapshot.match("no-group-id", e.value.response)
with pytest.raises(ClientError) as e:
aws_client.sns.publish_batch(
TopicArn=topic_arn,
PublishBatchRequestEntries=[
{"Id": f"Id_{i}", "Message": "Too many messages"} for i in range(11)
],
)
snapshot.match("too-many-msg", e.value.response)
with pytest.raises(ClientError) as e:
aws_client.sns.publish_batch(
TopicArn=topic_arn,
PublishBatchRequestEntries=[
{"Id": "1", "Message": "Messages with the same ID"} for _ in range(2)
],
)
snapshot.match("same-msg-id", e.value.response)
> with pytest.raises(ClientError) as e:
^^^^^^^^^^^^^^^^^^^^^^^^^^
E Failed: DID NOT RAISE <class 'botocore.exceptions.ClientError'>
../../localstack/tests/aws/services/sns/test_sns.py:2518: Failed
Check warning on line 0 in tests.aws.services.sns.test_sns.TestSNSSubscriptionSQSFifo
github-actions / LocalStack Community integration with Pro
test_validations_for_fifo (tests.aws.services.sns.test_sns.TestSNSSubscriptionSQSFifo) failed
pytest-junit-community-2.xml [took 0s]
Raw output
Failed: DID NOT RAISE <class 'botocore.exceptions.ClientError'>
self = <tests.aws.services.sns.test_sns.TestSNSSubscriptionSQSFifo object at 0x7f0ad0bc03b0>
sns_create_topic = <function sns_create_topic.<locals>._create_topic at 0x7f07c99d7d80>
sqs_create_queue = <function sqs_create_queue.<locals>.factory at 0x7f07adabb920>
sqs_get_queue_arn = <function sqs_get_queue_arn.<locals>._get_queue_arn at 0x7f07adab8360>
sns_create_sqs_subscription = <function sns_create_sqs_subscription.<locals>._factory at 0x7f07adabaca0>
snapshot = <localstack_snapshot.snapshots.prototype.SnapshotSession object at 0x7f07c9c9df10>
aws_client = <localstack.aws.connect.ServiceLevelClientFactory object at 0x7f0ac5eb4050>
@markers.aws.validated
def test_validations_for_fifo(
self,
sns_create_topic,
sqs_create_queue,
sqs_get_queue_arn,
sns_create_sqs_subscription,
snapshot,
aws_client,
):
topic_name = f"topic-{short_uid()}"
fifo_topic_name = f"topic-{short_uid()}.fifo"
queue_name = f"queue-{short_uid()}"
fifo_queue_name = f"queue-{short_uid()}.fifo"
not_fifo_dlq_name = f"queue-dlq-{short_uid()}"
topic_arn = sns_create_topic(Name=topic_name)["TopicArn"]
fifo_topic_arn = sns_create_topic(Name=fifo_topic_name, Attributes={"FifoTopic": "true"})[
"TopicArn"
]
fifo_queue_url = sqs_create_queue(
QueueName=fifo_queue_name, Attributes={"FifoQueue": "true"}
)
queue_url = sqs_create_queue(QueueName=queue_name)
not_fifo_dlq_url = sqs_create_queue(QueueName=not_fifo_dlq_name)
with pytest.raises(ClientError) as e:
sns_create_sqs_subscription(topic_arn=topic_arn, queue_url=fifo_queue_url)
assert e.match("standard SNS topic")
snapshot.match("not-fifo-topic", e.value.response)
# SNS does not reject a regular SQS queue subscribed to a FIFO topic anymore
subscription_not_fifo = sns_create_sqs_subscription(
topic_arn=fifo_topic_arn, queue_url=queue_url
)
snapshot.match("not-fifo-queue", subscription_not_fifo)
not_fifo_queue_arn = sqs_get_queue_arn(not_fifo_dlq_url)
aws_client.sns.set_subscription_attributes(
SubscriptionArn=subscription_not_fifo["SubscriptionArn"],
AttributeName="RedrivePolicy",
AttributeValue=json.dumps({"deadLetterTargetArn": not_fifo_queue_arn}),
)
subscription = sns_create_sqs_subscription(
topic_arn=fifo_topic_arn, queue_url=fifo_queue_url
)
queue_arn = sqs_get_queue_arn(queue_url)
with pytest.raises(ClientError) as e:
aws_client.sns.set_subscription_attributes(
SubscriptionArn=subscription["SubscriptionArn"],
AttributeName="RedrivePolicy",
AttributeValue=json.dumps({"deadLetterTargetArn": queue_arn}),
)
snapshot.match("regular-queue-for-dlq-of-fifo-topic", e.value.response)
with pytest.raises(ClientError) as e:
aws_client.sns.publish(TopicArn=fifo_topic_arn, Message="test")
assert e.match("MessageGroupId")
snapshot.match("no-msg-group-id", e.value.response)
> with pytest.raises(ClientError) as e:
^^^^^^^^^^^^^^^^^^^^^^^^^^
E Failed: DID NOT RAISE <class 'botocore.exceptions.ClientError'>
../../localstack/tests/aws/services/sns/test_sns.py:3261: Failed
Loading