diff --git a/moto/rds/models.py b/moto/rds/models.py index 9a670c2fd..a89db9e2e 100644 --- a/moto/rds/models.py +++ b/moto/rds/models.py @@ -1950,6 +1950,9 @@ class RDSBackend(BaseBackend): def describe_db_clusters(self, cluster_identifier): if cluster_identifier: + # ARN to identifier + # arn:aws:rds:eu-north-1:123456789012:cluster:cluster --> cluster-id + cluster_identifier = cluster_identifier.split(":")[-1] if cluster_identifier in self.clusters: return [self.clusters[cluster_identifier]] if cluster_identifier in self.neptune.clusters: diff --git a/tests/test_rds/test_rds_clusters.py b/tests/test_rds/test_rds_clusters.py index e78ffb9ad..d5e1be474 100644 --- a/tests/test_rds/test_rds_clusters.py +++ b/tests/test_rds/test_rds_clusters.py @@ -250,12 +250,12 @@ def test_describe_db_cluster_after_creation(): MasterUserPassword="hunter2_", ) - client.create_db_cluster( + cluster_arn = client.create_db_cluster( DBClusterIdentifier="cluster-id2", Engine="aurora", MasterUsername="root", MasterUserPassword="hunter2_", - ) + )["DBCluster"]["DBClusterArn"] client.describe_db_clusters()["DBClusters"].should.have.length_of(2) @@ -263,6 +263,10 @@ def test_describe_db_cluster_after_creation(): "DBClusters" ].should.have.length_of(1) + client.describe_db_clusters(DBClusterIdentifier=cluster_arn)[ + "DBClusters" + ].should.have.length_of(1) + @mock_rds def test_delete_db_cluster():