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.
- checksums.yaml +7 -0
- data/README.md +128 -0
- data/lib/sink/base_client.rb +383 -0
- data/lib/sink/base_model.rb +203 -0
- data/lib/sink/client.rb +381 -0
- data/lib/sink/fake_page.rb +39 -0
- data/lib/sink/models/allof_base_parent.rb +11 -0
- data/lib/sink/models/allof_multiple_inline_entries.rb +15 -0
- data/lib/sink/models/api_status.rb +11 -0
- data/lib/sink/models/array_float_items_response.rb +6 -0
- data/lib/sink/models/array_missing_items_response.rb +11 -0
- data/lib/sink/models/array_object_items.rb +11 -0
- data/lib/sink/models/array_object_items_response.rb +11 -0
- data/lib/sink/models/array_recursion.rb +6 -0
- data/lib/sink/models/balance.rb +11 -0
- data/lib/sink/models/basic_shared_model_object.rb +15 -0
- data/lib/sink/models/body_param_top_level_all_of_response.rb +20 -0
- data/lib/sink/models/body_param_union_overlapping_prop_response.rb +11 -0
- data/lib/sink/models/card.rb +144 -0
- data/lib/sink/models/card_list_response.rb +26 -0
- data/lib/sink/models/card_provision_foo_response.rb +11 -0
- data/lib/sink/models/child_inlined_response_response.rb +11 -0
- data/lib/sink/models/child_model.rb +21 -0
- data/lib/sink/models/class_.rb +11 -0
- data/lib/sink/models/client.rb +15 -0
- data/lib/sink/models/company.rb +11 -0
- data/lib/sink/models/company_payment.rb +11 -0
- data/lib/sink/models/complex_query_array_query_response.rb +22 -0
- data/lib/sink/models/config_tool_model_ref_from_nested_response_body_response.rb +17 -0
- data/lib/sink/models/currency.rb +23 -0
- data/lib/sink/models/decorator_test_keep_me_response.rb +11 -0
- data/lib/sink/models/docstring_leading_double_quote_response.rb +12 -0
- data/lib/sink/models/docstring_trailing_double_quote_response.rb +22 -0
- data/lib/sink/models/documents.rb +15 -0
- data/lib/sink/models/eeoc.rb +11 -0
- data/lib/sink/models/employment_data.rb +11 -0
- data/lib/sink/models/enum_basic_response.rb +51 -0
- data/lib/sink/models/export.rb +12 -0
- data/lib/sink/models/funding_account.rb +73 -0
- data/lib/sink/models/import.rb +11 -0
- data/lib/sink/models/interface.rb +11 -0
- data/lib/sink/models/keep_this_resource_keep_this_method_response.rb +11 -0
- data/lib/sink/models/make_ambiguous_schemas_explicit_make_ambiguous_schemas_explicit_response.rb +31 -0
- data/lib/sink/models/make_ambiguous_schemas_looser_make_ambiguous_schemas_looser_response.rb +31 -0
- data/lib/sink/models/map_nullable_items_response.rb +19 -0
- data/lib/sink/models/method_config_skipped_tests_all_response.rb +11 -0
- data/lib/sink/models/method_config_skipped_tests_go_response.rb +11 -0
- data/lib/sink/models/method_config_skipped_tests_java_response.rb +11 -0
- data/lib/sink/models/method_config_skipped_tests_kotlin_response.rb +11 -0
- data/lib/sink/models/method_config_skipped_tests_node_and_python_response.rb +11 -0
- data/lib/sink/models/method_config_skipped_tests_node_response.rb +11 -0
- data/lib/sink/models/method_config_skipped_tests_python_response.rb +11 -0
- data/lib/sink/models/method_config_skipped_tests_ruby_response.rb +11 -0
- data/lib/sink/models/model_from_nested_path.rb +30 -0
- data/lib/sink/models/model_from_nested_response_body_ref.rb +11 -0
- data/lib/sink/models/model_from_schemas_ref.rb +11 -0
- data/lib/sink/models/model_from_schemas_ref_openapi_uri.rb +11 -0
- data/lib/sink/models/model_from_schemas_ref_openapi_uri_jmespath.rb +11 -0
- data/lib/sink/models/model_from_schemas_ref_openapi_uri_jsonpath.rb +11 -0
- data/lib/sink/models/model_level_1.rb +15 -0
- data/lib/sink/models/model_level_2.rb +15 -0
- data/lib/sink/models/model_level_3.rb +15 -0
- data/lib/sink/models/model_referenced_in_parent_and_child.rb +11 -0
- data/lib/sink/models/model_with_nested_model.rb +16 -0
- data/lib/sink/models/my_model.rb +11 -0
- data/lib/sink/models/name_child_prop_import_clash_response.rb +21 -0
- data/lib/sink/models/name_properties_common_conflicts_response.rb +59 -0
- data/lib/sink/models/name_properties_illegal_javascript_identifiers_response.rb +6 -0
- data/lib/sink/models/name_response_property_clashes_model_import_response.rb +15 -0
- data/lib/sink/models/name_response_shadows_pydantic_response.rb +15 -0
- data/lib/sink/models/nested_request_model_a.rb +11 -0
- data/lib/sink/models/nested_request_model_b.rb +11 -0
- data/lib/sink/models/nested_request_model_c.rb +17 -0
- data/lib/sink/models/object_missing_items_response.rb +11 -0
- data/lib/sink/models/object_mixed_known_and_unknown_response.rb +11 -0
- data/lib/sink/models/object_multiple_array_properties_same_ref_response.rb +42 -0
- data/lib/sink/models/object_multiple_properties_same_model_response.rb +19 -0
- data/lib/sink/models/object_multiple_properties_same_ref_response.rb +37 -0
- data/lib/sink/models/object_skipped_props.rb +27 -0
- data/lib/sink/models/object_two_dimensional_array_primitive_property_response.rb +23 -0
- data/lib/sink/models/object_with_any_of_null_property.rb +17 -0
- data/lib/sink/models/object_with_child_ref.rb +15 -0
- data/lib/sink/models/object_with_one_of_null_property.rb +17 -0
- data/lib/sink/models/object_with_union_properties.rb +15 -0
- data/lib/sink/models/openapi_format_array_type_one_entry_response.rb +11 -0
- data/lib/sink/models/openapi_format_array_type_one_entry_with_null_response.rb +11 -0
- data/lib/sink/models/openapi_special_used_used_as_property_name_response.rb +11 -0
- data/lib/sink/models/page_cursor_shared_ref_pagination.rb +15 -0
- data/lib/sink/models/parent_model_with_child_ref.rb +19 -0
- data/lib/sink/models/path_param_colon_suffix_response.rb +11 -0
- data/lib/sink/models/path_param_file_extension_response.rb +11 -0
- data/lib/sink/models/path_param_multiple_response.rb +11 -0
- data/lib/sink/models/path_param_query_param_response.rb +11 -0
- data/lib/sink/models/path_param_singular_response.rb +11 -0
- data/lib/sink/models/primitive_strings_response.rb +11 -0
- data/lib/sink/models/private.rb +11 -0
- data/lib/sink/models/public.rb +11 -0
- data/lib/sink/models/recursion_create_envelope_response.rb +11 -0
- data/lib/sink/models/response_allof_simple_response.rb +15 -0
- data/lib/sink/models/response_array_object_with_union_properties_response.rb +6 -0
- data/lib/sink/models/response_array_response_response.rb +6 -0
- data/lib/sink/models/response_missing_required_response.rb +15 -0
- data/lib/sink/models/response_nested_array_response.rb +21 -0
- data/lib/sink/models/response_object_all_properties_response.rb +49 -0
- data/lib/sink/models/response_object_no_properties_response.rb +8 -0
- data/lib/sink/models/response_object_with_additional_properties_prop_response.rb +17 -0
- data/lib/sink/models/response_object_with_heavily_nested_union_response.rb +11 -0
- data/lib/sink/models/response_only_read_only_properties_response.rb +16 -0
- data/lib/sink/models/responses_allof_cross_object.rb +15 -0
- data/lib/sink/models/return_.rb +11 -0
- data/lib/sink/models/root_response.rb +19 -0
- data/lib/sink/models/self_recursion.rb +15 -0
- data/lib/sink/models/shared_cursor_nested_response_prop_meta.rb +18 -0
- data/lib/sink/models/shared_self_recursion.rb +15 -0
- data/lib/sink/models/shipping_address.rb +62 -0
- data/lib/sink/models/simple_allof.rb +20 -0
- data/lib/sink/models/simple_object.rb +19 -0
- data/lib/sink/models/skip_this_resource_i_never_appear_response.rb +11 -0
- data/lib/sink/models/streaming_basic_response.rb +15 -0
- data/lib/sink/models/streaming_nested_params_response.rb +15 -0
- data/lib/sink/models/streaming_no_discriminator_response.rb +15 -0
- data/lib/sink/models/streaming_query_param_discriminator_response.rb +15 -0
- data/lib/sink/models/streaming_with_unrelated_default_param_response.rb +15 -0
- data/lib/sink/models/type_dates_response.rb +27 -0
- data/lib/sink/models/type_datetimes_response.rb +27 -0
- data/lib/sink/models/union_discriminated_variant_a.rb +19 -0
- data/lib/sink/models/union_discriminated_variant_b.rb +19 -0
- data/lib/sink/models/union_response_discriminated_by_property_name_response.rb +6 -0
- data/lib/sink/models/union_response_discriminated_with_basic_mapping_response.rb +6 -0
- data/lib/sink/models/union_type_mixed_types_response.rb +6 -0
- data/lib/sink/models/union_type_nullable_union_response.rb +6 -0
- data/lib/sink/models/union_type_objects_response.rb +6 -0
- data/lib/sink/models/union_type_super_mixed_types_response.rb +6 -0
- data/lib/sink/models/union_type_unknown_variant_response.rb +6 -0
- data/lib/sink/models/version_1_30_name_create_response.rb +11 -0
- data/lib/sink/models/widget.rb +12 -0
- data/lib/sink/models/write_only_response_simple_response.rb +12 -0
- data/lib/sink/page_cursor.rb +49 -0
- data/lib/sink/page_cursor_from_headers.rb +49 -0
- data/lib/sink/page_cursor_id.rb +45 -0
- data/lib/sink/page_cursor_nested_items.rb +65 -0
- data/lib/sink/page_cursor_nested_object_ref.rb +59 -0
- data/lib/sink/page_cursor_shared_ref.rb +59 -0
- data/lib/sink/page_cursor_top_level_array.rb +46 -0
- data/lib/sink/page_cursor_url.rb +46 -0
- data/lib/sink/page_offset.rb +49 -0
- data/lib/sink/page_offset_no_start_field.rb +45 -0
- data/lib/sink/page_offset_total_count.rb +53 -0
- data/lib/sink/page_page_number.rb +53 -0
- data/lib/sink/page_page_number_without_current_page_response.rb +45 -0
- data/lib/sink/pooled_net_requester.rb +63 -0
- data/lib/sink/request_options.rb +84 -0
- data/lib/sink/resources/body_params/objects.rb +31 -0
- data/lib/sink/resources/body_params/unions.rb +31 -0
- data/lib/sink/resources/body_params.rb +475 -0
- data/lib/sink/resources/cards.rb +488 -0
- data/lib/sink/resources/casing/eeoc.rb +32 -0
- data/lib/sink/resources/casing.rb +15 -0
- data/lib/sink/resources/clients.rb +27 -0
- data/lib/sink/resources/company/payments.rb +28 -0
- data/lib/sink/resources/company.rb +17 -0
- data/lib/sink/resources/complex_queries.rb +56 -0
- data/lib/sink/resources/config_tools/parent_with_skip_node_python/child_only_skip_python.rb +96 -0
- data/lib/sink/resources/config_tools/parent_with_skip_node_python.rb +98 -0
- data/lib/sink/resources/config_tools.rb +37 -0
- data/lib/sink/resources/decorator_tests/keep_this_resource.rb +27 -0
- data/lib/sink/resources/decorator_tests/languages.rb +55 -0
- data/lib/sink/resources/decorator_tests/skip_this_resource.rb +26 -0
- data/lib/sink/resources/decorator_tests.rb +36 -0
- data/lib/sink/resources/deeply_nested/level_one/level_two/level_three.rb +31 -0
- data/lib/sink/resources/deeply_nested/level_one/level_two.rb +33 -0
- data/lib/sink/resources/deeply_nested/level_one.rb +31 -0
- data/lib/sink/resources/deeply_nested.rb +15 -0
- data/lib/sink/resources/docstrings.rb +77 -0
- data/lib/sink/resources/empty_body.rb +55 -0
- data/lib/sink/resources/header_params.rb +33 -0
- data/lib/sink/resources/invalid_schemas/arrays.rb +24 -0
- data/lib/sink/resources/invalid_schemas/objects.rb +24 -0
- data/lib/sink/resources/invalid_schemas.rb +19 -0
- data/lib/sink/resources/make_ambiguous_schemas_explicit.rb +24 -0
- data/lib/sink/resources/make_ambiguous_schemas_looser.rb +24 -0
- data/lib/sink/resources/method_config.rb +156 -0
- data/lib/sink/resources/mixed_params/duplicates.rb +73 -0
- data/lib/sink/resources/mixed_params.rb +81 -0
- data/lib/sink/resources/model_referenced_in_parent_and_child/child.rb +24 -0
- data/lib/sink/resources/model_referenced_in_parent_and_child.rb +26 -0
- data/lib/sink/resources/names/can_cause_clashes/employment_data.rb +15 -0
- data/lib/sink/resources/names/can_cause_clashes/response.rb +30 -0
- data/lib/sink/resources/names/can_cause_clashes.rb +22 -0
- data/lib/sink/resources/names/documents.rb +26 -0
- data/lib/sink/resources/names/openapi_specials.rb +24 -0
- data/lib/sink/resources/names/params.rb +47 -0
- data/lib/sink/resources/names/reserved_names/import.rb +29 -0
- data/lib/sink/resources/names/reserved_names/methods.rb +37 -0
- data/lib/sink/resources/names/reserved_names/public/class_.rb +28 -0
- data/lib/sink/resources/names/reserved_names/public/interface.rb +28 -0
- data/lib/sink/resources/names/reserved_names/public/private.rb +28 -0
- data/lib/sink/resources/names/reserved_names/public.rb +38 -0
- data/lib/sink/resources/names/reserved_names.rb +43 -0
- data/lib/sink/resources/names.rb +139 -0
- data/lib/sink/resources/openapi_formats.rb +48 -0
- data/lib/sink/resources/pagination_tests/cursor.rb +32 -0
- data/lib/sink/resources/pagination_tests/items_types.rb +32 -0
- data/lib/sink/resources/pagination_tests/nested_items.rb +32 -0
- data/lib/sink/resources/pagination_tests/offset.rb +70 -0
- data/lib/sink/resources/pagination_tests/schema_types.rb +51 -0
- data/lib/sink/resources/pagination_tests.rb +31 -0
- data/lib/sink/resources/parent/child.rb +28 -0
- data/lib/sink/resources/parent.rb +17 -0
- data/lib/sink/resources/path_params.rb +196 -0
- data/lib/sink/resources/positional_params.rb +219 -0
- data/lib/sink/resources/query_params.rb +157 -0
- data/lib/sink/resources/recursion/shared_responses.rb +24 -0
- data/lib/sink/resources/recursion.rb +61 -0
- data/lib/sink/resources/resource_refs/paginated_model_first_ref.rb +13 -0
- data/lib/sink/resources/resource_refs/paginated_model_second_ref.rb +13 -0
- data/lib/sink/resources/resource_refs/parent/child.rb +29 -0
- data/lib/sink/resources/resource_refs/parent.rb +30 -0
- data/lib/sink/resources/resource_refs.rb +23 -0
- data/lib/sink/resources/resources.rb +24 -0
- data/lib/sink/resources/responses/union_types.rb +91 -0
- data/lib/sink/resources/responses.rb +297 -0
- data/lib/sink/resources/shared_query_params.rb +45 -0
- data/lib/sink/resources/streaming.rb +96 -0
- data/lib/sink/resources/testing.rb +22 -0
- data/lib/sink/resources/tests.rb +24 -0
- data/lib/sink/resources/tools.rb +30 -0
- data/lib/sink/resources/types/allofs.rb +13 -0
- data/lib/sink/resources/types/arrays.rb +57 -0
- data/lib/sink/resources/types/enums.rb +86 -0
- data/lib/sink/resources/types/maps.rb +27 -0
- data/lib/sink/resources/types/objects.rb +98 -0
- data/lib/sink/resources/types/primitives.rb +31 -0
- data/lib/sink/resources/types/read_only_params.rb +31 -0
- data/lib/sink/resources/types/unions.rb +115 -0
- data/lib/sink/resources/types/write_only_responses.rb +26 -0
- data/lib/sink/resources/types.rb +90 -0
- data/lib/sink/resources/undocumented_resource.rb +44 -0
- data/lib/sink/resources/version_1_30_names.rb +38 -0
- data/lib/sink/resources/widgets.rb +28 -0
- data/lib/sink/util.rb +78 -0
- data/lib/sink/version.rb +5 -0
- data/lib/sink.rb +253 -0
- metadata +301 -0
@@ -0,0 +1,29 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Sink
|
4
|
+
module Resources
|
5
|
+
class ResourceRefs
|
6
|
+
class Parent
|
7
|
+
class Child
|
8
|
+
def initialize(client:)
|
9
|
+
@client = client
|
10
|
+
end
|
11
|
+
|
12
|
+
# endpoint that returns a model that is referenced from a model in a parent
|
13
|
+
# resource
|
14
|
+
#
|
15
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
16
|
+
#
|
17
|
+
# @return [Sink::Models::ChildModel]
|
18
|
+
def returns_child_model(opts = {})
|
19
|
+
req = {}
|
20
|
+
req[:method] = :get
|
21
|
+
req[:path] = "/resource_refs/child"
|
22
|
+
req[:model] = Sink::Models::ChildModel
|
23
|
+
@client.request(req, opts)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Sink
|
4
|
+
module Resources
|
5
|
+
class ResourceRefs
|
6
|
+
class Parent
|
7
|
+
# @return [Sink::Resources::ResourceRefs::Parent::Child]
|
8
|
+
attr_reader :child
|
9
|
+
|
10
|
+
def initialize(client:)
|
11
|
+
@client = client
|
12
|
+
@child = Sink::Resources::ResourceRefs::Parent::Child.new(client: client)
|
13
|
+
end
|
14
|
+
|
15
|
+
# endpoint that returns a model that has a nested reference to a child model
|
16
|
+
#
|
17
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
18
|
+
#
|
19
|
+
# @return [Sink::Models::ParentModelWithChildRef]
|
20
|
+
def returns_parent_model_with_child_ref(opts = {})
|
21
|
+
req = {}
|
22
|
+
req[:method] = :get
|
23
|
+
req[:path] = "/resource_refs/parent_with_child_ref"
|
24
|
+
req[:model] = Sink::Models::ParentModelWithChildRef
|
25
|
+
@client.request(req, opts)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Sink
|
4
|
+
module Resources
|
5
|
+
class ResourceRefs
|
6
|
+
# @return [Sink::Resources::ResourceRefs::PaginatedModelFirstRef]
|
7
|
+
attr_reader :paginated_model_first_ref
|
8
|
+
|
9
|
+
# @return [Sink::Resources::ResourceRefs::PaginatedModelSecondRef]
|
10
|
+
attr_reader :paginated_model_second_ref
|
11
|
+
|
12
|
+
# @return [Sink::Resources::ResourceRefs::Parent]
|
13
|
+
attr_reader :parent
|
14
|
+
|
15
|
+
def initialize(client:)
|
16
|
+
@client = client
|
17
|
+
@paginated_model_first_ref = Sink::Resources::ResourceRefs::PaginatedModelFirstRef.new(client: client)
|
18
|
+
@paginated_model_second_ref = Sink::Resources::ResourceRefs::PaginatedModelSecondRef.new(client: client)
|
19
|
+
@parent = Sink::Resources::ResourceRefs::Parent.new(client: client)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Sink
|
4
|
+
module Resources
|
5
|
+
class Resources
|
6
|
+
def initialize(client:)
|
7
|
+
@client = client
|
8
|
+
end
|
9
|
+
|
10
|
+
# Endpoint returning no response
|
11
|
+
#
|
12
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
13
|
+
#
|
14
|
+
# @return [nil]
|
15
|
+
def foo(opts = {})
|
16
|
+
req = {}
|
17
|
+
req[:method] = :post
|
18
|
+
req[:path] = "/no_response"
|
19
|
+
req[:model] = NilClass
|
20
|
+
@client.request(req, opts)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,91 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Sink
|
4
|
+
module Resources
|
5
|
+
class Responses
|
6
|
+
class UnionTypes
|
7
|
+
def initialize(client:)
|
8
|
+
@client = client
|
9
|
+
end
|
10
|
+
|
11
|
+
# Endpoint with a top level union response of different types.
|
12
|
+
#
|
13
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
14
|
+
#
|
15
|
+
# @return [Boolean, Sink::Models::SimpleObject, Sink::Models::UnionTypeMixedTypesResponse::UnnamedTypeWithunionParent4]
|
16
|
+
def mixed_types(opts = {})
|
17
|
+
req = {}
|
18
|
+
req[:method] = :post
|
19
|
+
req[:path] = "/responses/unions/mixed_types"
|
20
|
+
req[:model] = Sink::Unknown
|
21
|
+
@client.request(req, opts)
|
22
|
+
end
|
23
|
+
|
24
|
+
# Endpoint with a top level union response of floats and integers.
|
25
|
+
#
|
26
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
27
|
+
#
|
28
|
+
# @return [Sink::Models::SimpleObject, Sink::Models::UnionTypeNullableUnionResponse::UnnamedTypeWithunionParent5]
|
29
|
+
def nullable_union(opts = {})
|
30
|
+
req = {}
|
31
|
+
req[:method] = :post
|
32
|
+
req[:path] = "/responses/unions/nullable"
|
33
|
+
req[:model] = Sink::Unknown
|
34
|
+
@client.request(req, opts)
|
35
|
+
end
|
36
|
+
|
37
|
+
# Endpoint with a top level union response of floats and integers.
|
38
|
+
#
|
39
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
40
|
+
#
|
41
|
+
# @return [Float]
|
42
|
+
def numbers(opts = {})
|
43
|
+
req = {}
|
44
|
+
req[:method] = :post
|
45
|
+
req[:path] = "/responses/unions/numbers"
|
46
|
+
req[:model] = Float
|
47
|
+
@client.request(req, opts)
|
48
|
+
end
|
49
|
+
|
50
|
+
# Endpoint with a top level union response of just object variants.
|
51
|
+
#
|
52
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
53
|
+
#
|
54
|
+
# @return [Sink::Models::SimpleObject, Sink::Models::UnionTypeObjectsResponse::UnnamedTypeWithunionParent6]
|
55
|
+
def objects(opts = {})
|
56
|
+
req = {}
|
57
|
+
req[:method] = :post
|
58
|
+
req[:path] = "/responses/unions/objects"
|
59
|
+
req[:model] = Sink::Unknown
|
60
|
+
@client.request(req, opts)
|
61
|
+
end
|
62
|
+
|
63
|
+
# Endpoint with a top level union response of different types.
|
64
|
+
#
|
65
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
66
|
+
#
|
67
|
+
# @return [Boolean, Object, Sink::Models::SimpleObject, Sink::Models::UnionTypeSuperMixedTypesResponse::UnnamedTypeWithunionParent7, String]
|
68
|
+
def super_mixed_types(opts = {})
|
69
|
+
req = {}
|
70
|
+
req[:method] = :post
|
71
|
+
req[:path] = "/responses/unions/super_mixed_types"
|
72
|
+
req[:model] = Sink::Unknown
|
73
|
+
@client.request(req, opts)
|
74
|
+
end
|
75
|
+
|
76
|
+
# Endpoint with a top level union response with a variant that is `type: unknown`
|
77
|
+
#
|
78
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
79
|
+
#
|
80
|
+
# @return [Object, Sink::Models::SimpleObject]
|
81
|
+
def unknown_variant(opts = {})
|
82
|
+
req = {}
|
83
|
+
req[:method] = :post
|
84
|
+
req[:path] = "/responses/unions/unknown_variant"
|
85
|
+
req[:model] = Sink::Unknown
|
86
|
+
@client.request(req, opts)
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
@@ -0,0 +1,297 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Sink
|
4
|
+
module Resources
|
5
|
+
class Responses
|
6
|
+
# @return [Sink::Resources::Responses::UnionTypes]
|
7
|
+
attr_reader :union_types
|
8
|
+
|
9
|
+
def initialize(client:)
|
10
|
+
@client = client
|
11
|
+
@union_types = Sink::Resources::Responses::UnionTypes.new(client: client)
|
12
|
+
end
|
13
|
+
|
14
|
+
# Endpoint with a top level additionalProperties response.
|
15
|
+
#
|
16
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
17
|
+
#
|
18
|
+
# @return [Hash]
|
19
|
+
def additional_properties(opts = {})
|
20
|
+
req = {}
|
21
|
+
req[:method] = :post
|
22
|
+
req[:path] = "/responses/additional_properties"
|
23
|
+
req[:model] = Hash
|
24
|
+
@client.request(req, opts)
|
25
|
+
end
|
26
|
+
|
27
|
+
# Endpoint with a top level additionalProperties response where the items type
|
28
|
+
# points to an object defined as a model in the config.
|
29
|
+
#
|
30
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
31
|
+
#
|
32
|
+
# @return [Hash]
|
33
|
+
def additional_properties_nested_model_reference(opts = {})
|
34
|
+
req = {}
|
35
|
+
req[:method] = :post
|
36
|
+
req[:path] = "/responses/additional_properties_nested_model_reference"
|
37
|
+
req[:model] = Hash
|
38
|
+
@client.request(req, opts)
|
39
|
+
end
|
40
|
+
|
41
|
+
# Method with a response object defined using allOf and inline schema definitions.
|
42
|
+
#
|
43
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
44
|
+
#
|
45
|
+
# @return [Sink::Models::ResponseAllofSimpleResponse]
|
46
|
+
def allof_simple(opts = {})
|
47
|
+
req = {}
|
48
|
+
req[:method] = :get
|
49
|
+
req[:path] = "/responses/allof/simple"
|
50
|
+
req[:model] = Sink::Models::ResponseAllofSimpleResponse
|
51
|
+
@client.request(req, opts)
|
52
|
+
end
|
53
|
+
|
54
|
+
# Method with a response object that uses anyOf to indicate nullability.
|
55
|
+
#
|
56
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
57
|
+
#
|
58
|
+
# @return [Sink::Models::ObjectWithAnyOfNullProperty]
|
59
|
+
def anyof_null(opts = {})
|
60
|
+
req = {}
|
61
|
+
req[:method] = :get
|
62
|
+
req[:path] = "/responses/anyof_null"
|
63
|
+
req[:model] = Sink::Models::ObjectWithAnyOfNullProperty
|
64
|
+
@client.request(req, opts)
|
65
|
+
end
|
66
|
+
|
67
|
+
# Endpoint that returns an array of objects with union properties.
|
68
|
+
#
|
69
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
70
|
+
#
|
71
|
+
# @return [Array<Sink::Models::ObjectWithUnionProperties>]
|
72
|
+
def array_object_with_union_properties(opts = {})
|
73
|
+
req = {}
|
74
|
+
req[:method] = :get
|
75
|
+
req[:path] = "/responses/array/object_with_union_properties"
|
76
|
+
req[:model] = Sink::ArrayOf.new(Sink::Models::ObjectWithUnionProperties)
|
77
|
+
@client.request(req, opts)
|
78
|
+
end
|
79
|
+
|
80
|
+
# Endpoint that returns a top-level array.
|
81
|
+
#
|
82
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
83
|
+
#
|
84
|
+
# @return [Array<Sink::Models::SimpleObject>]
|
85
|
+
def array_response(opts = {})
|
86
|
+
req = {}
|
87
|
+
req[:method] = :get
|
88
|
+
req[:path] = "/responses/array"
|
89
|
+
req[:model] = Sink::ArrayOf.new(Sink::Models::SimpleObject)
|
90
|
+
@client.request(req, opts)
|
91
|
+
end
|
92
|
+
|
93
|
+
# Endpoint with a top level boolean response.
|
94
|
+
#
|
95
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
96
|
+
#
|
97
|
+
# @return [Boolean]
|
98
|
+
def boolean_response(opts = {})
|
99
|
+
req = {}
|
100
|
+
req[:method] = :post
|
101
|
+
req[:path] = "/responses/boolean"
|
102
|
+
req[:model] = Sink::BooleanModel
|
103
|
+
@client.request(req, opts)
|
104
|
+
end
|
105
|
+
|
106
|
+
# Endpoint with an empty response.
|
107
|
+
#
|
108
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
109
|
+
#
|
110
|
+
# @return [nil]
|
111
|
+
def empty_response(opts = {})
|
112
|
+
req = {}
|
113
|
+
req[:method] = :post
|
114
|
+
req[:path] = "/responses/empty"
|
115
|
+
req[:model] = NilClass
|
116
|
+
@client.request(req, opts)
|
117
|
+
end
|
118
|
+
|
119
|
+
# Endpoint with a top level integer response.
|
120
|
+
#
|
121
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
122
|
+
#
|
123
|
+
# @return [Integer]
|
124
|
+
def integer_response(opts = {})
|
125
|
+
req = {}
|
126
|
+
req[:method] = :post
|
127
|
+
req[:path] = "/responses/integer"
|
128
|
+
req[:model] = Integer
|
129
|
+
@client.request(req, opts)
|
130
|
+
end
|
131
|
+
|
132
|
+
# Endpoint with a response schema that doesn't set the `required` property.
|
133
|
+
#
|
134
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
135
|
+
#
|
136
|
+
# @return [Sink::Models::ResponseMissingRequiredResponse]
|
137
|
+
def missing_required(opts = {})
|
138
|
+
req = {}
|
139
|
+
req[:method] = :get
|
140
|
+
req[:path] = "/responses/missing_required"
|
141
|
+
req[:model] = Sink::Models::ResponseMissingRequiredResponse
|
142
|
+
@client.request(req, opts)
|
143
|
+
end
|
144
|
+
|
145
|
+
# Endpoint that returns a nested array.
|
146
|
+
#
|
147
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
148
|
+
#
|
149
|
+
# @return [Sink::Models::ResponseNestedArrayResponse]
|
150
|
+
def nested_array(opts = {})
|
151
|
+
req = {}
|
152
|
+
req[:method] = :get
|
153
|
+
req[:path] = "/responses/array/nested"
|
154
|
+
req[:model] = Sink::Models::ResponseNestedArrayResponse
|
155
|
+
@client.request(req, opts)
|
156
|
+
end
|
157
|
+
|
158
|
+
# Method with a response object with a different property for each supported type.
|
159
|
+
#
|
160
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
161
|
+
#
|
162
|
+
# @return [Sink::Models::ResponseObjectAllPropertiesResponse]
|
163
|
+
def object_all_properties(opts = {})
|
164
|
+
req = {}
|
165
|
+
req[:method] = :get
|
166
|
+
req[:path] = "/responses/object/everything"
|
167
|
+
req[:model] = Sink::Models::ResponseObjectAllPropertiesResponse
|
168
|
+
@client.request(req, opts)
|
169
|
+
end
|
170
|
+
|
171
|
+
# Endpoint with an empty response.
|
172
|
+
#
|
173
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
174
|
+
#
|
175
|
+
# @return [Sink::Models::ResponseObjectNoPropertiesResponse]
|
176
|
+
def object_no_properties(opts = {})
|
177
|
+
req = {}
|
178
|
+
req[:method] = :post
|
179
|
+
req[:path] = "/responses/object_no_properties"
|
180
|
+
req[:model] = Sink::Models::ResponseObjectNoPropertiesResponse
|
181
|
+
@client.request(req, opts)
|
182
|
+
end
|
183
|
+
|
184
|
+
# Endpoint with an object response that contains an `additionalProperties`
|
185
|
+
# property with a nested schema.
|
186
|
+
#
|
187
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
188
|
+
#
|
189
|
+
# @return [Sink::Models::ResponseObjectWithAdditionalPropertiesPropResponse]
|
190
|
+
def object_with_additional_properties_prop(opts = {})
|
191
|
+
req = {}
|
192
|
+
req[:method] = :post
|
193
|
+
req[:path] = "/responses/object_with_additional_properties_prop"
|
194
|
+
req[:model] = Sink::Models::ResponseObjectWithAdditionalPropertiesPropResponse
|
195
|
+
@client.request(req, opts)
|
196
|
+
end
|
197
|
+
|
198
|
+
# Endpoint with an object response that contains a union property with multiple
|
199
|
+
# nested schemas.
|
200
|
+
#
|
201
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
202
|
+
#
|
203
|
+
# @return [Sink::Models::ResponseObjectWithHeavilyNestedUnionResponse]
|
204
|
+
def object_with_heavily_nested_union(opts = {})
|
205
|
+
req = {}
|
206
|
+
req[:method] = :post
|
207
|
+
req[:path] = "/responses/object_with_heavily_nested_union"
|
208
|
+
req[:model] = Sink::Models::ResponseObjectWithHeavilyNestedUnionResponse
|
209
|
+
@client.request(req, opts)
|
210
|
+
end
|
211
|
+
|
212
|
+
# Method with a response object that uses oneOf to indicate nullability.
|
213
|
+
#
|
214
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
215
|
+
#
|
216
|
+
# @return [Sink::Models::ObjectWithOneOfNullProperty]
|
217
|
+
def oneof_null(opts = {})
|
218
|
+
req = {}
|
219
|
+
req[:method] = :get
|
220
|
+
req[:path] = "/responses/oneof_null"
|
221
|
+
req[:model] = Sink::Models::ObjectWithOneOfNullProperty
|
222
|
+
@client.request(req, opts)
|
223
|
+
end
|
224
|
+
|
225
|
+
# Endpoint with a response that only has `readOnly` properties
|
226
|
+
#
|
227
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
228
|
+
#
|
229
|
+
# @return [Sink::Models::ResponseOnlyReadOnlyPropertiesResponse]
|
230
|
+
def only_read_only_properties(opts = {})
|
231
|
+
req = {}
|
232
|
+
req[:method] = :get
|
233
|
+
req[:path] = "/responses/only_read_only_properties"
|
234
|
+
req[:model] = Sink::Models::ResponseOnlyReadOnlyPropertiesResponse
|
235
|
+
@client.request(req, opts)
|
236
|
+
end
|
237
|
+
|
238
|
+
# Endpoint that returns a $ref to SimpleObject. This is used to test shared
|
239
|
+
# response models.
|
240
|
+
#
|
241
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
242
|
+
#
|
243
|
+
# @return [Sink::Models::SimpleObject]
|
244
|
+
def shared_simple_object(opts = {})
|
245
|
+
req = {}
|
246
|
+
req[:method] = :get
|
247
|
+
req[:path] = "/responses/shared_simple_object"
|
248
|
+
req[:model] = Sink::Models::SimpleObject
|
249
|
+
@client.request(req, opts)
|
250
|
+
end
|
251
|
+
|
252
|
+
# Endpoint with a top level string response.
|
253
|
+
#
|
254
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
255
|
+
#
|
256
|
+
# @return [String]
|
257
|
+
def string_response(opts = {})
|
258
|
+
req = {}
|
259
|
+
req[:method] = :post
|
260
|
+
req[:path] = "/responses/string"
|
261
|
+
req[:model] = String
|
262
|
+
@client.request(req, opts)
|
263
|
+
end
|
264
|
+
|
265
|
+
# Should not generate a named return type for object without defined properties;
|
266
|
+
# instead, it should simply use an `unknown` type or equivalent. In Java and Go,
|
267
|
+
# where we have fancier accessors for raw json stuff, we should generate a named
|
268
|
+
# type, but it should basically just have untyped additional properties. See
|
269
|
+
# https://linear.app/stainless/issue/STA-563/no-type-should-be-generated-for-endpoints-returning-type-object-schema.
|
270
|
+
#
|
271
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
272
|
+
#
|
273
|
+
# @return [Object]
|
274
|
+
def unknown_object(opts = {})
|
275
|
+
req = {}
|
276
|
+
req[:method] = :post
|
277
|
+
req[:path] = "/responses/unknown_object"
|
278
|
+
req[:model] = Sink::Unknown
|
279
|
+
@client.request(req, opts)
|
280
|
+
end
|
281
|
+
|
282
|
+
# Should return a ModelWithNestedModel object with a `properties` field that we
|
283
|
+
# can rename in the Stainless config to a prettier name.
|
284
|
+
#
|
285
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
286
|
+
#
|
287
|
+
# @return [Sink::Models::ModelWithNestedModel]
|
288
|
+
def with_model_in_nested_path(opts = {})
|
289
|
+
req = {}
|
290
|
+
req[:method] = :get
|
291
|
+
req[:path] = "/responses/with_model_in_nested_path"
|
292
|
+
req[:model] = Sink::Models::ModelWithNestedModel
|
293
|
+
@client.request(req, opts)
|
294
|
+
end
|
295
|
+
end
|
296
|
+
end
|
297
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Sink
|
4
|
+
module Resources
|
5
|
+
class SharedQueryParams
|
6
|
+
def initialize(client:)
|
7
|
+
@client = client
|
8
|
+
end
|
9
|
+
|
10
|
+
# @param params [Hash] Attributes to send in this request.
|
11
|
+
# @option params [String, nil] :get1
|
12
|
+
# @option params [String, nil] :shared1
|
13
|
+
# @option params [String, nil] :shared2
|
14
|
+
#
|
15
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
16
|
+
#
|
17
|
+
# @return [String]
|
18
|
+
def retrieve(params = {}, opts = {})
|
19
|
+
req = {}
|
20
|
+
req[:method] = :get
|
21
|
+
req[:path] = "/shared-query-params"
|
22
|
+
req[:query] = params
|
23
|
+
req[:model] = String
|
24
|
+
@client.request(req, opts)
|
25
|
+
end
|
26
|
+
|
27
|
+
# @param params [Hash] Attributes to send in this request.
|
28
|
+
# @option params [String, nil] :get1
|
29
|
+
# @option params [String, nil] :shared1
|
30
|
+
# @option params [String, nil] :shared2
|
31
|
+
#
|
32
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
33
|
+
#
|
34
|
+
# @return [String]
|
35
|
+
def del(params = {}, opts = {})
|
36
|
+
req = {}
|
37
|
+
req[:method] = :delete
|
38
|
+
req[:path] = "/shared-query-params"
|
39
|
+
req[:query] = params
|
40
|
+
req[:model] = String
|
41
|
+
@client.request(req, opts)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,96 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Sink
|
4
|
+
module Resources
|
5
|
+
class Streaming
|
6
|
+
def initialize(client:)
|
7
|
+
@client = client
|
8
|
+
end
|
9
|
+
|
10
|
+
# @param params [Hash] Attributes to send in this request.
|
11
|
+
# @option params [String] :model
|
12
|
+
# @option params [String] :prompt
|
13
|
+
# @option params [Boolean] :stream
|
14
|
+
#
|
15
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
16
|
+
#
|
17
|
+
# @return [Sink::Models::StreamingBasicResponse]
|
18
|
+
def basic(params = {}, opts = {})
|
19
|
+
req = {}
|
20
|
+
req[:method] = :post
|
21
|
+
req[:path] = "/streaming/basic"
|
22
|
+
req[:body] = params
|
23
|
+
req[:model] = Sink::Models::StreamingBasicResponse
|
24
|
+
@client.request(req, opts)
|
25
|
+
end
|
26
|
+
|
27
|
+
# @param params [Hash] Attributes to send in this request.
|
28
|
+
# @option params [String] :model
|
29
|
+
# @option params [String] :prompt
|
30
|
+
# @option params [ParentObject, nil] :parent_object
|
31
|
+
# @option params [Boolean] :stream
|
32
|
+
#
|
33
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
34
|
+
#
|
35
|
+
# @return [Sink::Models::StreamingNestedParamsResponse]
|
36
|
+
def nested_params(params = {}, opts = {})
|
37
|
+
req = {}
|
38
|
+
req[:method] = :post
|
39
|
+
req[:path] = "/streaming/nested_params"
|
40
|
+
req[:body] = params
|
41
|
+
req[:model] = Sink::Models::StreamingNestedParamsResponse
|
42
|
+
@client.request(req, opts)
|
43
|
+
end
|
44
|
+
|
45
|
+
# @param params [Hash] Attributes to send in this request.
|
46
|
+
# @option params [String] :model
|
47
|
+
# @option params [String] :prompt
|
48
|
+
#
|
49
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
50
|
+
#
|
51
|
+
# @return [Sink::Models::StreamingNoDiscriminatorResponse]
|
52
|
+
def no_discriminator(params = {}, opts = {})
|
53
|
+
req = {}
|
54
|
+
req[:method] = :post
|
55
|
+
req[:path] = "/streaming/no_discriminator"
|
56
|
+
req[:body] = params
|
57
|
+
req[:model] = Sink::Models::StreamingNoDiscriminatorResponse
|
58
|
+
@client.request(req, opts)
|
59
|
+
end
|
60
|
+
|
61
|
+
# @param params [Hash] Attributes to send in this request.
|
62
|
+
# @option params [String] :prompt
|
63
|
+
# @option params [Boolean] :should_stream
|
64
|
+
#
|
65
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
66
|
+
#
|
67
|
+
# @return [Sink::Models::StreamingQueryParamDiscriminatorResponse]
|
68
|
+
def query_param_discriminator(params = {}, opts = {})
|
69
|
+
req = {}
|
70
|
+
req[:method] = :get
|
71
|
+
req[:path] = "/streaming/query_param_discriminator"
|
72
|
+
req[:query] = params
|
73
|
+
req[:model] = Sink::Models::StreamingQueryParamDiscriminatorResponse
|
74
|
+
@client.request(req, opts)
|
75
|
+
end
|
76
|
+
|
77
|
+
# @param params [Hash] Attributes to send in this request.
|
78
|
+
# @option params [String] :model
|
79
|
+
# @option params [Symbol, ParamWithDefaultValue] :param_with_default_value
|
80
|
+
# @option params [String] :prompt
|
81
|
+
# @option params [Boolean] :stream
|
82
|
+
#
|
83
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
84
|
+
#
|
85
|
+
# @return [Sink::Models::StreamingWithUnrelatedDefaultParamResponse]
|
86
|
+
def with_unrelated_default_param(params = {}, opts = {})
|
87
|
+
req = {}
|
88
|
+
req[:method] = :post
|
89
|
+
req[:path] = "/streaming/with_unrelated_default_param"
|
90
|
+
req[:body] = params
|
91
|
+
req[:model] = Sink::Models::StreamingWithUnrelatedDefaultParamResponse
|
92
|
+
@client.request(req, opts)
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Sink
|
4
|
+
module Resources
|
5
|
+
class Testing
|
6
|
+
def initialize(client:)
|
7
|
+
@client = client
|
8
|
+
end
|
9
|
+
|
10
|
+
# @param opts [Hash, Sink::RequestOptions] Options to specify HTTP behaviour for this request.
|
11
|
+
#
|
12
|
+
# @return [Sink::Models::RootResponse]
|
13
|
+
def root(opts = {})
|
14
|
+
req = {}
|
15
|
+
req[:method] = :get
|
16
|
+
req[:path] = "/"
|
17
|
+
req[:model] = Sink::Models::RootResponse
|
18
|
+
@client.request(req, opts)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|