def METHOD_NAME(self):
    """
    Test for updating the expiration date without a lifecycle configuration.
    """
    self.mock_s3_client.get_bucket_lifecycle_configuration.side_effect = ClientError(
        {
            "Error": {
                "Code": "NoSuchLifecycleConfiguration",
                "Message": "The bucket does not have a lifecycle configuration.",
            }
        },
        "get_bucket_lifecycle_configuration",
    )
    with mock.patch("boto3.client", return_value=self.mock_s3_client):
        update_expiration_date("test_key", datetime(2022, 12, 31))
    self.mock_s3_client.put_bucket_lifecycle_configuration.assert_called_once_with(
        Bucket="test-marsha-destination",
        LifecycleConfiguration={
            "Rules": [
                {
                    "ID": "test_key",
                    "Filter": {"Prefix": "test_key"},
                    "Status": "Enabled",
                    "Expiration": {"Date": "2022-12-31"},
                }
            ]
        },
    )