From 8f6fbf352e76f818fe707975867ddff7bf855bf3 Mon Sep 17 00:00:00 2001 From: Olivier Bellone Date: Mon, 12 Aug 2019 17:22:51 -0700 Subject: [PATCH] [codegen] Update API Resources (#607) * Codegen for openapi c806fa1 * Write tests --- stripe/api_resources/subscription_item.py | 2 ++ tests/api_resources/test_subscription_item.py | 15 +++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/stripe/api_resources/subscription_item.py b/stripe/api_resources/subscription_item.py index 7dca1dd17..7db5dd07d 100644 --- a/stripe/api_resources/subscription_item.py +++ b/stripe/api_resources/subscription_item.py @@ -4,8 +4,10 @@ from stripe.api_resources.abstract import DeletableAPIResource from stripe.api_resources.abstract import ListableAPIResource from stripe.api_resources.abstract import UpdateableAPIResource +from stripe.api_resources.abstract import nested_resource_class_methods +@nested_resource_class_methods("usage_record", operations=["create"]) class SubscriptionItem( CreateableAPIResource, DeletableAPIResource, diff --git a/tests/api_resources/test_subscription_item.py b/tests/api_resources/test_subscription_item.py index 8dacee4f0..20d504a01 100644 --- a/tests/api_resources/test_subscription_item.py +++ b/tests/api_resources/test_subscription_item.py @@ -64,3 +64,18 @@ def test_can_delete(self, request_mock): "delete", "/v1/subscription_items/%s" % TEST_RESOURCE_ID ) assert resource.deleted is True + + +class TestUsageRecords(object): + def test_is_creatable(self, request_mock): + resource = stripe.SubscriptionItem.create_usage_record( + TEST_RESOURCE_ID, + quantity=5000, + timestamp=1524182400, + action="increment", + ) + request_mock.assert_requested( + "post", + "/v1/subscription_items/%s/usage_records" % TEST_RESOURCE_ID, + ) + assert isinstance(resource, stripe.UsageRecord)