Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/stripe/api_resources/quote.py: 45%

58 statements  

« prev     ^ index     » next       coverage.py v6.4.4, created at 2023-07-17 14:22 -0600

1# File generated from our OpenAPI spec 

2from __future__ import absolute_import, division, print_function 

3 

4import stripe 

5from stripe import api_requestor 

6from stripe import util 

7from stripe.api_resources.abstract import CreateableAPIResource 

8from stripe.api_resources.abstract import ListableAPIResource 

9from stripe.api_resources.abstract import UpdateableAPIResource 

10from stripe.api_resources.abstract import custom_method 

11from stripe.six.moves.urllib.parse import quote_plus 

12 

13 

14@custom_method("accept", http_verb="post") 

15@custom_method("cancel", http_verb="post") 

16@custom_method("finalize_quote", http_verb="post", http_path="finalize") 

17@custom_method( 

18 "list_computed_upfront_line_items", 

19 http_verb="get", 

20 http_path="computed_upfront_line_items", 

21) 

22@custom_method("list_line_items", http_verb="get", http_path="line_items") 

23class Quote(CreateableAPIResource, ListableAPIResource, UpdateableAPIResource): 

24 OBJECT_NAME = "quote" 

25 

26 def accept(self, idempotency_key=None, **params): 

27 url = "/v1/quotes/{quote}/accept".format( 

28 quote=util.sanitize_id(self.get("id")) 

29 ) 

30 headers = util.populate_headers(idempotency_key) 

31 self.refresh_from(self.request("post", url, params, headers)) 

32 return self 

33 

34 def cancel(self, idempotency_key=None, **params): 

35 url = "/v1/quotes/{quote}/cancel".format( 

36 quote=util.sanitize_id(self.get("id")) 

37 ) 

38 headers = util.populate_headers(idempotency_key) 

39 self.refresh_from(self.request("post", url, params, headers)) 

40 return self 

41 

42 def finalize_quote(self, idempotency_key=None, **params): 

43 url = "/v1/quotes/{quote}/finalize".format( 

44 quote=util.sanitize_id(self.get("id")) 

45 ) 

46 headers = util.populate_headers(idempotency_key) 

47 self.refresh_from(self.request("post", url, params, headers)) 

48 return self 

49 

50 def list_computed_upfront_line_items(self, idempotency_key=None, **params): 

51 url = "/v1/quotes/{quote}/computed_upfront_line_items".format( 

52 quote=util.sanitize_id(self.get("id")) 

53 ) 

54 headers = util.populate_headers(idempotency_key) 

55 resp = self.request("get", url, params, headers) 

56 stripe_object = util.convert_to_stripe_object(resp) 

57 stripe_object._retrieve_params = params 

58 return stripe_object 

59 

60 def list_line_items(self, idempotency_key=None, **params): 

61 url = "/v1/quotes/{quote}/line_items".format( 

62 quote=util.sanitize_id(self.get("id")) 

63 ) 

64 headers = util.populate_headers(idempotency_key) 

65 resp = self.request("get", url, params, headers) 

66 stripe_object = util.convert_to_stripe_object(resp) 

67 stripe_object._retrieve_params = params 

68 return stripe_object 

69 

70 @classmethod 

71 def _cls_pdf( 

72 cls, 

73 sid, 

74 api_key=None, 

75 idempotency_key=None, 

76 stripe_version=None, 

77 stripe_account=None, 

78 **params 

79 ): 

80 url = "%s/%s/%s" % ( 

81 cls.class_url(), 

82 quote_plus(util.utf8(sid)), 

83 "pdf", 

84 ) 

85 requestor = api_requestor.APIRequestor( 

86 api_key, 

87 api_base=stripe.upload_api_base, 

88 api_version=stripe_version, 

89 account=stripe_account, 

90 ) 

91 headers = util.populate_headers(idempotency_key) 

92 response, _ = requestor.request_stream("get", url, params, headers) 

93 return response 

94 

95 @util.class_method_variant("_cls_pdf") 

96 def pdf( 

97 self, 

98 api_key=None, 

99 api_version=None, 

100 stripe_version=None, 

101 stripe_account=None, 

102 **params 

103 ): 

104 version = api_version or stripe_version 

105 requestor = api_requestor.APIRequestor( 

106 api_key, 

107 api_base=stripe.upload_api_base, 

108 api_version=version, 

109 account=stripe_account, 

110 ) 

111 url = self.instance_url() + "/pdf" 

112 return requestor.request_stream("get", url, params=params)