testttttttttttttttomgomgomg12 0.0.1.pre.alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (244) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +128 -0
  3. data/lib/sink/base_client.rb +383 -0
  4. data/lib/sink/base_model.rb +203 -0
  5. data/lib/sink/client.rb +381 -0
  6. data/lib/sink/fake_page.rb +39 -0
  7. data/lib/sink/models/allof_base_parent.rb +11 -0
  8. data/lib/sink/models/allof_multiple_inline_entries.rb +15 -0
  9. data/lib/sink/models/api_status.rb +11 -0
  10. data/lib/sink/models/array_float_items_response.rb +6 -0
  11. data/lib/sink/models/array_missing_items_response.rb +11 -0
  12. data/lib/sink/models/array_object_items.rb +11 -0
  13. data/lib/sink/models/array_object_items_response.rb +11 -0
  14. data/lib/sink/models/array_recursion.rb +6 -0
  15. data/lib/sink/models/balance.rb +11 -0
  16. data/lib/sink/models/basic_shared_model_object.rb +15 -0
  17. data/lib/sink/models/body_param_top_level_all_of_response.rb +20 -0
  18. data/lib/sink/models/body_param_union_overlapping_prop_response.rb +11 -0
  19. data/lib/sink/models/card.rb +144 -0
  20. data/lib/sink/models/card_list_response.rb +26 -0
  21. data/lib/sink/models/card_provision_foo_response.rb +11 -0
  22. data/lib/sink/models/child_inlined_response_response.rb +11 -0
  23. data/lib/sink/models/child_model.rb +21 -0
  24. data/lib/sink/models/class_.rb +11 -0
  25. data/lib/sink/models/client.rb +15 -0
  26. data/lib/sink/models/company.rb +11 -0
  27. data/lib/sink/models/company_payment.rb +11 -0
  28. data/lib/sink/models/complex_query_array_query_response.rb +22 -0
  29. data/lib/sink/models/config_tool_model_ref_from_nested_response_body_response.rb +17 -0
  30. data/lib/sink/models/currency.rb +23 -0
  31. data/lib/sink/models/decorator_test_keep_me_response.rb +11 -0
  32. data/lib/sink/models/docstring_leading_double_quote_response.rb +12 -0
  33. data/lib/sink/models/docstring_trailing_double_quote_response.rb +22 -0
  34. data/lib/sink/models/documents.rb +15 -0
  35. data/lib/sink/models/eeoc.rb +11 -0
  36. data/lib/sink/models/employment_data.rb +11 -0
  37. data/lib/sink/models/enum_basic_response.rb +51 -0
  38. data/lib/sink/models/export.rb +12 -0
  39. data/lib/sink/models/funding_account.rb +73 -0
  40. data/lib/sink/models/import.rb +11 -0
  41. data/lib/sink/models/interface.rb +11 -0
  42. data/lib/sink/models/keep_this_resource_keep_this_method_response.rb +11 -0
  43. data/lib/sink/models/make_ambiguous_schemas_explicit_make_ambiguous_schemas_explicit_response.rb +31 -0
  44. data/lib/sink/models/make_ambiguous_schemas_looser_make_ambiguous_schemas_looser_response.rb +31 -0
  45. data/lib/sink/models/map_nullable_items_response.rb +19 -0
  46. data/lib/sink/models/method_config_skipped_tests_all_response.rb +11 -0
  47. data/lib/sink/models/method_config_skipped_tests_go_response.rb +11 -0
  48. data/lib/sink/models/method_config_skipped_tests_java_response.rb +11 -0
  49. data/lib/sink/models/method_config_skipped_tests_kotlin_response.rb +11 -0
  50. data/lib/sink/models/method_config_skipped_tests_node_and_python_response.rb +11 -0
  51. data/lib/sink/models/method_config_skipped_tests_node_response.rb +11 -0
  52. data/lib/sink/models/method_config_skipped_tests_python_response.rb +11 -0
  53. data/lib/sink/models/method_config_skipped_tests_ruby_response.rb +11 -0
  54. data/lib/sink/models/model_from_nested_path.rb +30 -0
  55. data/lib/sink/models/model_from_nested_response_body_ref.rb +11 -0
  56. data/lib/sink/models/model_from_schemas_ref.rb +11 -0
  57. data/lib/sink/models/model_from_schemas_ref_openapi_uri.rb +11 -0
  58. data/lib/sink/models/model_from_schemas_ref_openapi_uri_jmespath.rb +11 -0
  59. data/lib/sink/models/model_from_schemas_ref_openapi_uri_jsonpath.rb +11 -0
  60. data/lib/sink/models/model_level_1.rb +15 -0
  61. data/lib/sink/models/model_level_2.rb +15 -0
  62. data/lib/sink/models/model_level_3.rb +15 -0
  63. data/lib/sink/models/model_referenced_in_parent_and_child.rb +11 -0
  64. data/lib/sink/models/model_with_nested_model.rb +16 -0
  65. data/lib/sink/models/my_model.rb +11 -0
  66. data/lib/sink/models/name_child_prop_import_clash_response.rb +21 -0
  67. data/lib/sink/models/name_properties_common_conflicts_response.rb +59 -0
  68. data/lib/sink/models/name_properties_illegal_javascript_identifiers_response.rb +6 -0
  69. data/lib/sink/models/name_response_property_clashes_model_import_response.rb +15 -0
  70. data/lib/sink/models/name_response_shadows_pydantic_response.rb +15 -0
  71. data/lib/sink/models/nested_request_model_a.rb +11 -0
  72. data/lib/sink/models/nested_request_model_b.rb +11 -0
  73. data/lib/sink/models/nested_request_model_c.rb +17 -0
  74. data/lib/sink/models/object_missing_items_response.rb +11 -0
  75. data/lib/sink/models/object_mixed_known_and_unknown_response.rb +11 -0
  76. data/lib/sink/models/object_multiple_array_properties_same_ref_response.rb +42 -0
  77. data/lib/sink/models/object_multiple_properties_same_model_response.rb +19 -0
  78. data/lib/sink/models/object_multiple_properties_same_ref_response.rb +37 -0
  79. data/lib/sink/models/object_skipped_props.rb +27 -0
  80. data/lib/sink/models/object_two_dimensional_array_primitive_property_response.rb +23 -0
  81. data/lib/sink/models/object_with_any_of_null_property.rb +17 -0
  82. data/lib/sink/models/object_with_child_ref.rb +15 -0
  83. data/lib/sink/models/object_with_one_of_null_property.rb +17 -0
  84. data/lib/sink/models/object_with_union_properties.rb +15 -0
  85. data/lib/sink/models/openapi_format_array_type_one_entry_response.rb +11 -0
  86. data/lib/sink/models/openapi_format_array_type_one_entry_with_null_response.rb +11 -0
  87. data/lib/sink/models/openapi_special_used_used_as_property_name_response.rb +11 -0
  88. data/lib/sink/models/page_cursor_shared_ref_pagination.rb +15 -0
  89. data/lib/sink/models/parent_model_with_child_ref.rb +19 -0
  90. data/lib/sink/models/path_param_colon_suffix_response.rb +11 -0
  91. data/lib/sink/models/path_param_file_extension_response.rb +11 -0
  92. data/lib/sink/models/path_param_multiple_response.rb +11 -0
  93. data/lib/sink/models/path_param_query_param_response.rb +11 -0
  94. data/lib/sink/models/path_param_singular_response.rb +11 -0
  95. data/lib/sink/models/primitive_strings_response.rb +11 -0
  96. data/lib/sink/models/private.rb +11 -0
  97. data/lib/sink/models/public.rb +11 -0
  98. data/lib/sink/models/recursion_create_envelope_response.rb +11 -0
  99. data/lib/sink/models/response_allof_simple_response.rb +15 -0
  100. data/lib/sink/models/response_array_object_with_union_properties_response.rb +6 -0
  101. data/lib/sink/models/response_array_response_response.rb +6 -0
  102. data/lib/sink/models/response_missing_required_response.rb +15 -0
  103. data/lib/sink/models/response_nested_array_response.rb +21 -0
  104. data/lib/sink/models/response_object_all_properties_response.rb +49 -0
  105. data/lib/sink/models/response_object_no_properties_response.rb +8 -0
  106. data/lib/sink/models/response_object_with_additional_properties_prop_response.rb +17 -0
  107. data/lib/sink/models/response_object_with_heavily_nested_union_response.rb +11 -0
  108. data/lib/sink/models/response_only_read_only_properties_response.rb +16 -0
  109. data/lib/sink/models/responses_allof_cross_object.rb +15 -0
  110. data/lib/sink/models/return_.rb +11 -0
  111. data/lib/sink/models/root_response.rb +19 -0
  112. data/lib/sink/models/self_recursion.rb +15 -0
  113. data/lib/sink/models/shared_cursor_nested_response_prop_meta.rb +18 -0
  114. data/lib/sink/models/shared_self_recursion.rb +15 -0
  115. data/lib/sink/models/shipping_address.rb +62 -0
  116. data/lib/sink/models/simple_allof.rb +20 -0
  117. data/lib/sink/models/simple_object.rb +19 -0
  118. data/lib/sink/models/skip_this_resource_i_never_appear_response.rb +11 -0
  119. data/lib/sink/models/streaming_basic_response.rb +15 -0
  120. data/lib/sink/models/streaming_nested_params_response.rb +15 -0
  121. data/lib/sink/models/streaming_no_discriminator_response.rb +15 -0
  122. data/lib/sink/models/streaming_query_param_discriminator_response.rb +15 -0
  123. data/lib/sink/models/streaming_with_unrelated_default_param_response.rb +15 -0
  124. data/lib/sink/models/type_dates_response.rb +27 -0
  125. data/lib/sink/models/type_datetimes_response.rb +27 -0
  126. data/lib/sink/models/union_discriminated_variant_a.rb +19 -0
  127. data/lib/sink/models/union_discriminated_variant_b.rb +19 -0
  128. data/lib/sink/models/union_response_discriminated_by_property_name_response.rb +6 -0
  129. data/lib/sink/models/union_response_discriminated_with_basic_mapping_response.rb +6 -0
  130. data/lib/sink/models/union_type_mixed_types_response.rb +6 -0
  131. data/lib/sink/models/union_type_nullable_union_response.rb +6 -0
  132. data/lib/sink/models/union_type_objects_response.rb +6 -0
  133. data/lib/sink/models/union_type_super_mixed_types_response.rb +6 -0
  134. data/lib/sink/models/union_type_unknown_variant_response.rb +6 -0
  135. data/lib/sink/models/version_1_30_name_create_response.rb +11 -0
  136. data/lib/sink/models/widget.rb +12 -0
  137. data/lib/sink/models/write_only_response_simple_response.rb +12 -0
  138. data/lib/sink/page_cursor.rb +49 -0
  139. data/lib/sink/page_cursor_from_headers.rb +49 -0
  140. data/lib/sink/page_cursor_id.rb +45 -0
  141. data/lib/sink/page_cursor_nested_items.rb +65 -0
  142. data/lib/sink/page_cursor_nested_object_ref.rb +59 -0
  143. data/lib/sink/page_cursor_shared_ref.rb +59 -0
  144. data/lib/sink/page_cursor_top_level_array.rb +46 -0
  145. data/lib/sink/page_cursor_url.rb +46 -0
  146. data/lib/sink/page_offset.rb +49 -0
  147. data/lib/sink/page_offset_no_start_field.rb +45 -0
  148. data/lib/sink/page_offset_total_count.rb +53 -0
  149. data/lib/sink/page_page_number.rb +53 -0
  150. data/lib/sink/page_page_number_without_current_page_response.rb +45 -0
  151. data/lib/sink/pooled_net_requester.rb +63 -0
  152. data/lib/sink/request_options.rb +84 -0
  153. data/lib/sink/resources/body_params/objects.rb +31 -0
  154. data/lib/sink/resources/body_params/unions.rb +31 -0
  155. data/lib/sink/resources/body_params.rb +475 -0
  156. data/lib/sink/resources/cards.rb +488 -0
  157. data/lib/sink/resources/casing/eeoc.rb +32 -0
  158. data/lib/sink/resources/casing.rb +15 -0
  159. data/lib/sink/resources/clients.rb +27 -0
  160. data/lib/sink/resources/company/payments.rb +28 -0
  161. data/lib/sink/resources/company.rb +17 -0
  162. data/lib/sink/resources/complex_queries.rb +56 -0
  163. data/lib/sink/resources/config_tools/parent_with_skip_node_python/child_only_skip_python.rb +96 -0
  164. data/lib/sink/resources/config_tools/parent_with_skip_node_python.rb +98 -0
  165. data/lib/sink/resources/config_tools.rb +37 -0
  166. data/lib/sink/resources/decorator_tests/keep_this_resource.rb +27 -0
  167. data/lib/sink/resources/decorator_tests/languages.rb +55 -0
  168. data/lib/sink/resources/decorator_tests/skip_this_resource.rb +26 -0
  169. data/lib/sink/resources/decorator_tests.rb +36 -0
  170. data/lib/sink/resources/deeply_nested/level_one/level_two/level_three.rb +31 -0
  171. data/lib/sink/resources/deeply_nested/level_one/level_two.rb +33 -0
  172. data/lib/sink/resources/deeply_nested/level_one.rb +31 -0
  173. data/lib/sink/resources/deeply_nested.rb +15 -0
  174. data/lib/sink/resources/docstrings.rb +77 -0
  175. data/lib/sink/resources/empty_body.rb +55 -0
  176. data/lib/sink/resources/header_params.rb +33 -0
  177. data/lib/sink/resources/invalid_schemas/arrays.rb +24 -0
  178. data/lib/sink/resources/invalid_schemas/objects.rb +24 -0
  179. data/lib/sink/resources/invalid_schemas.rb +19 -0
  180. data/lib/sink/resources/make_ambiguous_schemas_explicit.rb +24 -0
  181. data/lib/sink/resources/make_ambiguous_schemas_looser.rb +24 -0
  182. data/lib/sink/resources/method_config.rb +156 -0
  183. data/lib/sink/resources/mixed_params/duplicates.rb +73 -0
  184. data/lib/sink/resources/mixed_params.rb +81 -0
  185. data/lib/sink/resources/model_referenced_in_parent_and_child/child.rb +24 -0
  186. data/lib/sink/resources/model_referenced_in_parent_and_child.rb +26 -0
  187. data/lib/sink/resources/names/can_cause_clashes/employment_data.rb +15 -0
  188. data/lib/sink/resources/names/can_cause_clashes/response.rb +30 -0
  189. data/lib/sink/resources/names/can_cause_clashes.rb +22 -0
  190. data/lib/sink/resources/names/documents.rb +26 -0
  191. data/lib/sink/resources/names/openapi_specials.rb +24 -0
  192. data/lib/sink/resources/names/params.rb +47 -0
  193. data/lib/sink/resources/names/reserved_names/import.rb +29 -0
  194. data/lib/sink/resources/names/reserved_names/methods.rb +37 -0
  195. data/lib/sink/resources/names/reserved_names/public/class_.rb +28 -0
  196. data/lib/sink/resources/names/reserved_names/public/interface.rb +28 -0
  197. data/lib/sink/resources/names/reserved_names/public/private.rb +28 -0
  198. data/lib/sink/resources/names/reserved_names/public.rb +38 -0
  199. data/lib/sink/resources/names/reserved_names.rb +43 -0
  200. data/lib/sink/resources/names.rb +139 -0
  201. data/lib/sink/resources/openapi_formats.rb +48 -0
  202. data/lib/sink/resources/pagination_tests/cursor.rb +32 -0
  203. data/lib/sink/resources/pagination_tests/items_types.rb +32 -0
  204. data/lib/sink/resources/pagination_tests/nested_items.rb +32 -0
  205. data/lib/sink/resources/pagination_tests/offset.rb +70 -0
  206. data/lib/sink/resources/pagination_tests/schema_types.rb +51 -0
  207. data/lib/sink/resources/pagination_tests.rb +31 -0
  208. data/lib/sink/resources/parent/child.rb +28 -0
  209. data/lib/sink/resources/parent.rb +17 -0
  210. data/lib/sink/resources/path_params.rb +196 -0
  211. data/lib/sink/resources/positional_params.rb +219 -0
  212. data/lib/sink/resources/query_params.rb +157 -0
  213. data/lib/sink/resources/recursion/shared_responses.rb +24 -0
  214. data/lib/sink/resources/recursion.rb +61 -0
  215. data/lib/sink/resources/resource_refs/paginated_model_first_ref.rb +13 -0
  216. data/lib/sink/resources/resource_refs/paginated_model_second_ref.rb +13 -0
  217. data/lib/sink/resources/resource_refs/parent/child.rb +29 -0
  218. data/lib/sink/resources/resource_refs/parent.rb +30 -0
  219. data/lib/sink/resources/resource_refs.rb +23 -0
  220. data/lib/sink/resources/resources.rb +24 -0
  221. data/lib/sink/resources/responses/union_types.rb +91 -0
  222. data/lib/sink/resources/responses.rb +297 -0
  223. data/lib/sink/resources/shared_query_params.rb +45 -0
  224. data/lib/sink/resources/streaming.rb +96 -0
  225. data/lib/sink/resources/testing.rb +22 -0
  226. data/lib/sink/resources/tests.rb +24 -0
  227. data/lib/sink/resources/tools.rb +30 -0
  228. data/lib/sink/resources/types/allofs.rb +13 -0
  229. data/lib/sink/resources/types/arrays.rb +57 -0
  230. data/lib/sink/resources/types/enums.rb +86 -0
  231. data/lib/sink/resources/types/maps.rb +27 -0
  232. data/lib/sink/resources/types/objects.rb +98 -0
  233. data/lib/sink/resources/types/primitives.rb +31 -0
  234. data/lib/sink/resources/types/read_only_params.rb +31 -0
  235. data/lib/sink/resources/types/unions.rb +115 -0
  236. data/lib/sink/resources/types/write_only_responses.rb +26 -0
  237. data/lib/sink/resources/types.rb +90 -0
  238. data/lib/sink/resources/undocumented_resource.rb +44 -0
  239. data/lib/sink/resources/version_1_30_names.rb +38 -0
  240. data/lib/sink/resources/widgets.rb +28 -0
  241. data/lib/sink/util.rb +78 -0
  242. data/lib/sink/version.rb +5 -0
  243. data/lib/sink.rb +253 -0
  244. metadata +301 -0
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class Names
6
+ class ReservedNames
7
+ class Methods
8
+ def initialize(client:)
9
+ @client = client
10
+ end
11
+
12
+ # Test reserved word in method name
13
+ #
14
+ # @param class_ [String] Path param: test reserved word in path parameters
15
+ #
16
+ # @param params [Hash] Attributes to send in this request.
17
+ # @option params [String, nil] :let Query param: test reserved word in query parameter
18
+ # @option params [String, nil] :const Body param: test reserved word in body property
19
+ #
20
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
21
+ #
22
+ # @return [Sink::Models::Export]
23
+ def export(class_, params = {}, opts = {})
24
+ req = {}
25
+ req[:method] = :post
26
+ req[:path] = "/names/reserved_names/methods/export/#{class_}"
27
+ query_params = [:let]
28
+ req[:query] = params.slice(*query_params)
29
+ req[:body] = params.except(*query_params)
30
+ req[:model] = Sink::Models::Export
31
+ @client.request(req, opts)
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class Names
6
+ class ReservedNames
7
+ class Public
8
+ class Class
9
+ def initialize(client:)
10
+ @client = client
11
+ end
12
+
13
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
14
+ #
15
+ # @return [Sink::Models::Class]
16
+ def class_(opts = {})
17
+ req = {}
18
+ req[:method] = :get
19
+ req[:path] = "/names/reserved_names/public/class"
20
+ req[:model] = Sink::Models::Class
21
+ @client.request(req, opts)
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class Names
6
+ class ReservedNames
7
+ class Public
8
+ class Interface
9
+ def initialize(client:)
10
+ @client = client
11
+ end
12
+
13
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
14
+ #
15
+ # @return [Sink::Models::Interface]
16
+ def interface(opts = {})
17
+ req = {}
18
+ req[:method] = :get
19
+ req[:path] = "/names/reserved_names/public/interface"
20
+ req[:model] = Sink::Models::Interface
21
+ @client.request(req, opts)
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class Names
6
+ class ReservedNames
7
+ class Public
8
+ class Private
9
+ def initialize(client:)
10
+ @client = client
11
+ end
12
+
13
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
14
+ #
15
+ # @return [Sink::Models::Private]
16
+ def private(opts = {})
17
+ req = {}
18
+ req[:method] = :get
19
+ req[:path] = "/names/reserved_names/public/private"
20
+ req[:model] = Sink::Models::Private
21
+ @client.request(req, opts)
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class Names
6
+ class ReservedNames
7
+ class Public
8
+ # @return [Sink::Resources::Names::ReservedNames::Public::Private]
9
+ attr_reader :private
10
+
11
+ # @return [Sink::Resources::Names::ReservedNames::Public::Interface]
12
+ attr_reader :interface
13
+
14
+ # @return [Sink::Resources::Names::ReservedNames::Public::Class]
15
+ attr_reader :class_
16
+
17
+ def initialize(client:)
18
+ @client = client
19
+ @private = Sink::Resources::Names::ReservedNames::Public::Private.new(client: client)
20
+ @interface = Sink::Resources::Names::ReservedNames::Public::Interface.new(client: client)
21
+ @class_ = Sink::Resources::Names::ReservedNames::Public::Class.new(client: client)
22
+ end
23
+
24
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
25
+ #
26
+ # @return [Sink::Models::Public]
27
+ def public(opts = {})
28
+ req = {}
29
+ req[:method] = :get
30
+ req[:path] = "/names/reserved_names/public"
31
+ req[:model] = Sink::Models::Public
32
+ @client.request(req, opts)
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class Names
6
+ class ReservedNames
7
+ # @return [Sink::Resources::Names::ReservedNames::Public]
8
+ attr_reader :public
9
+
10
+ # @return [Sink::Resources::Names::ReservedNames::Import]
11
+ attr_reader :import
12
+
13
+ # @return [Sink::Resources::Names::ReservedNames::Methods]
14
+ attr_reader :methods
15
+
16
+ def initialize(client:)
17
+ @client = client
18
+ @public = Sink::Resources::Names::ReservedNames::Public.new(client: client)
19
+ @import = Sink::Resources::Names::ReservedNames::Import.new(client: client)
20
+ @methods = Sink::Resources::Names::ReservedNames::Methods.new(client: client)
21
+ end
22
+
23
+ # Endpoint with a `requestBody` that has a property name that can conflict with
24
+ # language keywords.
25
+ #
26
+ # @param params [Hash] Attributes to send in this request.
27
+ # @option params [String] :from
28
+ #
29
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
30
+ #
31
+ # @return [nil]
32
+ def common_reserved_params(params = {}, opts = {})
33
+ req = {}
34
+ req[:method] = :post
35
+ req[:path] = "/names/reserved_names/common_reserved_params"
36
+ req[:body] = params
37
+ req[:model] = NilClass
38
+ @client.request(req, opts)
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,139 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class Names
6
+ # @return [Sink::Resources::Names::Documents]
7
+ attr_reader :documents
8
+
9
+ # @return [Sink::Resources::Names::ReservedNames]
10
+ attr_reader :reserved_names
11
+
12
+ # @return [Sink::Resources::Names::Params]
13
+ attr_reader :params
14
+
15
+ # @return [Sink::Resources::Names::CanCauseClashes]
16
+ attr_reader :can_cause_clashes
17
+
18
+ # @return [Sink::Resources::Names::OpenAPISpecials]
19
+ attr_reader :openapi_specials
20
+
21
+ def initialize(client:)
22
+ @client = client
23
+ @documents = Sink::Resources::Names::Documents.new(client: client)
24
+ @reserved_names = Sink::Resources::Names::ReservedNames.new(client: client)
25
+ @params = Sink::Resources::Names::Params.new(client: client)
26
+ @can_cause_clashes = Sink::Resources::Names::CanCauseClashes.new(client: client)
27
+ @openapi_specials = Sink::Resources::Names::OpenAPISpecials.new(client: client)
28
+ end
29
+
30
+ # Endpoint with request & response properties that could cause clashes due to
31
+ # imports.
32
+ #
33
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
34
+ #
35
+ # @return [Sink::Models::NameChildPropImportClashResponse]
36
+ def child_prop_import_clash(opts = {})
37
+ req = {}
38
+ req[:method] = :post
39
+ req[:path] = "/names/child_prop_import_clash"
40
+ req[:model] = Sink::Models::NameChildPropImportClashResponse
41
+ @client.request(req, opts)
42
+ end
43
+
44
+ # Endpoint with the name `get` in the config.
45
+ #
46
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
47
+ #
48
+ # @return [Sink::Models::BasicSharedModelObject]
49
+ def get(opts = {})
50
+ req = {}
51
+ req[:method] = :get
52
+ req[:path] = "/names/method_name_get"
53
+ req[:model] = Sink::Models::BasicSharedModelObject
54
+ @client.request(req, opts)
55
+ end
56
+
57
+ # Endpoint with request & response properties that are likely to cause name
58
+ # conflicts.
59
+ #
60
+ # @param params [Hash] Attributes to send in this request.
61
+ # @option params [String] :_1_digit_leading_underscore In certain languages the leading underscore in combination with this property
62
+ # name may cause issues
63
+ # @option params [String] :_leading_underscore In certain languages the leading underscore in this property name may cause
64
+ # issues
65
+ # @option params [String] :_leading_underscore_mixed_case In certain languages the leading underscore in this property name may cause
66
+ # issues alongside a case change
67
+ # @option params [Boolean] :bool
68
+ # @option params [Boolean] :bool_2 In certain languages the type declaration for this prop can shadow the `bool`
69
+ # property declaration.
70
+ # @option params [Date] :date This shadows the stdlib `datetime.date` type in Python & causes type errors.
71
+ # @option params [Date] :date_2 In certain languages the type declaration for this prop can shadow the `date`
72
+ # property declaration.
73
+ # @option params [Float] :float
74
+ # @option params [Float] :float_2 In certain languages the type declaration for this prop can shadow the `float`
75
+ # property declaration.
76
+ # @option params [Integer] :int
77
+ # @option params [Integer] :int_2 In certain languages the type declaration for this prop can shadow the `int`
78
+ # property declaration.
79
+ #
80
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
81
+ #
82
+ # @return [Sink::Models::NamePropertiesCommonConflictsResponse]
83
+ def properties_common_conflicts(params = {}, opts = {})
84
+ req = {}
85
+ req[:method] = :post
86
+ req[:path] = "/names/properties_common_conflicts"
87
+ req[:body] = params
88
+ req[:model] = Sink::Models::NamePropertiesCommonConflictsResponse
89
+ @client.request(req, opts)
90
+ end
91
+
92
+ # Endpoint with request & response properties with names that aren't legal
93
+ # javascript identifiers.
94
+ #
95
+ # @param params [Hash] Attributes to send in this request.
96
+ # @option params [Float, nil] :irrelevant
97
+ # @option params [Float] :body
98
+ #
99
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
100
+ #
101
+ # @return [Float, Sink::Models::NamePropertiesIllegalJavascriptIdentifiersResponse::UnnamedTypeWithunionParent3]
102
+ def properties_illegal_javascript_identifiers(params = {}, opts = {})
103
+ req = {}
104
+ req[:method] = :post
105
+ req[:path] = "/names/properties_illegal_javascript_identifiers"
106
+ req[:body] = params
107
+ req[:model] = Sink::Unknown
108
+ @client.request(req, opts)
109
+ end
110
+
111
+ # Endpoint with a response model property that can cause clashes with a model
112
+ # import.
113
+ #
114
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
115
+ #
116
+ # @return [Sink::Models::NameResponsePropertyClashesModelImportResponse]
117
+ def response_property_clashes_model_import(opts = {})
118
+ req = {}
119
+ req[:method] = :get
120
+ req[:path] = "/names/response_property_clashes_model_import"
121
+ req[:model] = Sink::Models::NameResponsePropertyClashesModelImportResponse
122
+ @client.request(req, opts)
123
+ end
124
+
125
+ # Endpoint with a response model property that would clash with pydantic.
126
+ #
127
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
128
+ #
129
+ # @return [Sink::Models::NameResponseShadowsPydanticResponse]
130
+ def response_shadows_pydantic(opts = {})
131
+ req = {}
132
+ req[:method] = :get
133
+ req[:path] = "/names/response_property_shadows_pydantic"
134
+ req[:model] = Sink::Models::NameResponseShadowsPydanticResponse
135
+ @client.request(req, opts)
136
+ end
137
+ end
138
+ end
139
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class OpenAPIFormats
6
+ def initialize(client:)
7
+ @client = client
8
+ end
9
+
10
+ # See https://linear.app/stainless/issue/STA-569/support-for-type-[object-null]
11
+ #
12
+ # @param params [Hash] Attributes to send in this request.
13
+ # @option params [Boolean] :enable_debug_logging
14
+ #
15
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
16
+ #
17
+ # @return [Sink::Models::OpenAPIFormatArrayTypeOneEntryResponse]
18
+ def array_type_one_entry(params = {}, opts = {})
19
+ req = {}
20
+ req[:method] = :post
21
+ req[:path] = "/openapi_formats/array_type_one_entry"
22
+ req[:body] = params
23
+ req[:model] = Sink::Models::OpenAPIFormatArrayTypeOneEntryResponse
24
+ @client.request(req, opts)
25
+ end
26
+
27
+ # The `type` property being set to [T, null] should result in an optional response
28
+ # return type in generated SDKs.
29
+ #
30
+ # See https://linear.app/stainless/issue/STA-569/support-for-type-[object-null]
31
+ #
32
+ # @param params [Hash] Attributes to send in this request.
33
+ # @option params [Boolean, nil] :enable_debug_logging
34
+ #
35
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
36
+ #
37
+ # @return [Sink::Models::OpenAPIFormatArrayTypeOneEntryWithNullResponse]
38
+ def array_type_one_entry_with_null(params = {}, opts = {})
39
+ req = {}
40
+ req[:method] = :post
41
+ req[:path] = "/openapi_formats/array_type_one_entry_with_null"
42
+ req[:body] = params
43
+ req[:model] = Sink::Models::OpenAPIFormatArrayTypeOneEntryWithNullResponse
44
+ @client.request(req, opts)
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class PaginationTests
6
+ class Cursor
7
+ def initialize(client:)
8
+ @client = client
9
+ end
10
+
11
+ # Test case for cursor pagination
12
+ #
13
+ # @param params [Hash] Attributes to send in this request.
14
+ # @option params [String, nil] :cursor
15
+ # @option params [Integer, nil] :limit
16
+ #
17
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
18
+ #
19
+ # @return [Sink::PageCursor<Sink::Models::MyModel>]
20
+ def list(params = {}, opts = {})
21
+ req = {}
22
+ req[:method] = :get
23
+ req[:path] = "/paginated/cursor"
24
+ req[:query] = params
25
+ req[:page] = Sink::PageCursor
26
+ req[:model] = Sink::Models::MyModel
27
+ @client.request(req, opts)
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class PaginationTests
6
+ class ItemsTypes
7
+ def initialize(client:)
8
+ @client = client
9
+ end
10
+
11
+ # Test case for paginated items of `unknown` types with page_number pagination
12
+ #
13
+ # @param params [Hash] Attributes to send in this request.
14
+ # @option params [Integer, nil] :page
15
+ # @option params [Integer, nil] :page_size
16
+ #
17
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
18
+ #
19
+ # @return [Sink::PagePageNumber<Object>]
20
+ def list_unknown(params = {}, opts = {})
21
+ req = {}
22
+ req[:method] = :get
23
+ req[:path] = "/paginated/items_types/unknown"
24
+ req[:query] = params
25
+ req[:page] = Sink::PagePageNumber
26
+ req[:model] = Sink::Unknown
27
+ @client.request(req, opts)
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class PaginationTests
6
+ class NestedItems
7
+ def initialize(client:)
8
+ @client = client
9
+ end
10
+
11
+ # Test case for response headers with cursor pagination
12
+ #
13
+ # @param params [Hash] Attributes to send in this request.
14
+ # @option params [String, nil] :cursor
15
+ # @option params [Integer, nil] :limit
16
+ #
17
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
18
+ #
19
+ # @return [Sink::PageCursorNestedItems<Sink::Models::MyModel>]
20
+ def list(params = {}, opts = {})
21
+ req = {}
22
+ req[:method] = :get
23
+ req[:path] = "/paginated/nested_items"
24
+ req[:query] = params
25
+ req[:page] = Sink::PageCursorNestedItems
26
+ req[:model] = Sink::Models::MyModel
27
+ @client.request(req, opts)
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,70 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class PaginationTests
6
+ class Offset
7
+ def initialize(client:)
8
+ @client = client
9
+ end
10
+
11
+ # Test case for offset pagination
12
+ #
13
+ # @param params [Hash] Attributes to send in this request.
14
+ # @option params [Integer, nil] :limit
15
+ # @option params [Integer, nil] :offset
16
+ #
17
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
18
+ #
19
+ # @return [Sink::PageOffset<Sink::Models::MyModel>]
20
+ def list(params = {}, opts = {})
21
+ req = {}
22
+ req[:method] = :get
23
+ req[:path] = "/paginated/offset"
24
+ req[:query] = params
25
+ req[:page] = Sink::PageOffset
26
+ req[:model] = Sink::Models::MyModel
27
+ @client.request(req, opts)
28
+ end
29
+
30
+ # Test case for offset pagination with no start response field
31
+ #
32
+ # @param params [Hash] Attributes to send in this request.
33
+ # @option params [Integer, nil] :limit
34
+ # @option params [Integer, nil] :offset
35
+ #
36
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
37
+ #
38
+ # @return [Sink::PageOffsetNoStartField<Sink::Models::MyModel>]
39
+ def list_no_start_field(params = {}, opts = {})
40
+ req = {}
41
+ req[:method] = :get
42
+ req[:path] = "/paginated/offset/no_start_field"
43
+ req[:query] = params
44
+ req[:page] = Sink::PageOffsetNoStartField
45
+ req[:model] = Sink::Models::MyModel
46
+ @client.request(req, opts)
47
+ end
48
+
49
+ # Test case for offset pagination with a total count response property
50
+ #
51
+ # @param params [Hash] Attributes to send in this request.
52
+ # @option params [Integer, nil] :limit
53
+ # @option params [Integer, nil] :offset
54
+ #
55
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
56
+ #
57
+ # @return [Sink::PageOffsetTotalCount<Sink::Models::MyModel>]
58
+ def with_total_count(params = {}, opts = {})
59
+ req = {}
60
+ req[:method] = :get
61
+ req[:path] = "/paginated/offset/with_total_count"
62
+ req[:query] = params
63
+ req[:page] = Sink::PageOffsetTotalCount
64
+ req[:model] = Sink::Models::MyModel
65
+ @client.request(req, opts)
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class PaginationTests
6
+ class SchemaTypes
7
+ def initialize(client:)
8
+ @client = client
9
+ end
10
+
11
+ # Test case for a cursor endpoint that defines properties using allOf
12
+ #
13
+ # @param params [Hash] Attributes to send in this request.
14
+ # @option params [String, nil] :cursor
15
+ # @option params [Integer, nil] :limit
16
+ #
17
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
18
+ #
19
+ # @return [Sink::PageCursor<Sink::Models::MyModel>]
20
+ def allofs(params = {}, opts = {})
21
+ req = {}
22
+ req[:method] = :get
23
+ req[:path] = "/paginated/schema_types/allofs"
24
+ req[:query] = params
25
+ req[:page] = Sink::PageCursor
26
+ req[:model] = Sink::Models::MyModel
27
+ @client.request(req, opts)
28
+ end
29
+
30
+ # Test case for a cursor endpoint that returns an anyOf
31
+ #
32
+ # @param params [Hash] Attributes to send in this request.
33
+ # @option params [String, nil] :cursor
34
+ # @option params [Integer, nil] :limit
35
+ #
36
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
37
+ #
38
+ # @return [Sink::PageCursor<Sink::Models::MyModel>]
39
+ def unions(params = {}, opts = {})
40
+ req = {}
41
+ req[:method] = :get
42
+ req[:path] = "/paginated/schema_types/unions"
43
+ req[:query] = params
44
+ req[:page] = Sink::PageCursor
45
+ req[:model] = Sink::Models::MyModel
46
+ @client.request(req, opts)
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class PaginationTests
6
+ # @return [Sink::Resources::PaginationTests::SchemaTypes]
7
+ attr_reader :schema_types
8
+
9
+ # @return [Sink::Resources::PaginationTests::ItemsTypes]
10
+ attr_reader :items_types
11
+
12
+ # @return [Sink::Resources::PaginationTests::Cursor]
13
+ attr_reader :cursor
14
+
15
+ # @return [Sink::Resources::PaginationTests::Offset]
16
+ attr_reader :offset
17
+
18
+ # @return [Sink::Resources::PaginationTests::NestedItems]
19
+ attr_reader :nested_items
20
+
21
+ def initialize(client:)
22
+ @client = client
23
+ @schema_types = Sink::Resources::PaginationTests::SchemaTypes.new(client: client)
24
+ @items_types = Sink::Resources::PaginationTests::ItemsTypes.new(client: client)
25
+ @cursor = Sink::Resources::PaginationTests::Cursor.new(client: client)
26
+ @offset = Sink::Resources::PaginationTests::Offset.new(client: client)
27
+ @nested_items = Sink::Resources::PaginationTests::NestedItems.new(client: client)
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sink
4
+ module Resources
5
+ class Parent
6
+ # Some children can be very large
7
+ # For example, the children of Godzilla
8
+ class Child
9
+ def initialize(client:)
10
+ @client = client
11
+ end
12
+
13
+ # Method with inlined response model.
14
+ #
15
+ # @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
16
+ #
17
+ # @return [Sink::Models::ChildInlinedResponseResponse]
18
+ def inlined_response(opts = {})
19
+ req = {}
20
+ req[:method] = :get
21
+ req[:path] = "/inlined_response"
22
+ req[:model] = Sink::Models::ChildInlinedResponseResponse
23
+ @client.request(req, opts)
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end