def METHOD_NAME(self, deploy_cfn_template, aws_client, snapshot):
    """
    Simple test that
    - deploys a stack containing the resource
    - verifies that the resource has been created correctly by querying the service directly
    - deletes the stack ensuring that the delete operation has been implemented correctly
    - verifies that the resource no longer exists by querying the service directly
    """
    user_name = f"test-user-{short_uid()}"
    snapshot.add_transformer(snapshot.transform.regex(user_name, "<user-name>"))
    snapshot.add_transformer(snapshot.transform.key_value("UserId", "user-id"))
    stack = deploy_cfn_template(
        template_path=os.path.join(
            os.path.dirname(__file__),
            "templates/user_basic.yaml",
        ),
        parameters={"CustomUserName": user_name},
    )
    snapshot.match("stack-outputs", stack.outputs)
    snapshot.match("describe-resource", aws_client.iam.get_user(UserName=user_name))
    # verify that the delete operation works
    stack.destroy()
    # fetch the resource again and assert that it no longer exists
    with pytest.raises(ClientError):
        aws_client.iam.get_user(UserName=user_name)