cybrid_api_id_ruby 0.124.79 → 0.124.80

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 (158) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/README.md +5 -5
  4. data/cybrid_api_id_ruby.gemspec +1 -1
  5. data/lib/cybrid_api_id_ruby/api/bank_applications_idp_api.rb +1 -1
  6. data/lib/cybrid_api_id_ruby/api/customer_tokens_idp_api.rb +1 -1
  7. data/lib/cybrid_api_id_ruby/api/organization_applications_idp_api.rb +1 -1
  8. data/lib/cybrid_api_id_ruby/api/users_idp_api.rb +1 -1
  9. data/lib/cybrid_api_id_ruby/api_client.rb +1 -1
  10. data/lib/cybrid_api_id_ruby/api_error.rb +1 -1
  11. data/lib/cybrid_api_id_ruby/configuration.rb +1 -1
  12. data/lib/cybrid_api_id_ruby/models/application_idp_model.rb +1 -1
  13. data/lib/cybrid_api_id_ruby/models/application_list_idp_model.rb +1 -1
  14. data/lib/cybrid_api_id_ruby/models/application_with_secret_all_of_idp_model.rb +1 -1
  15. data/lib/cybrid_api_id_ruby/models/application_with_secret_idp_model.rb +1 -1
  16. data/lib/cybrid_api_id_ruby/models/customer_token_idp_model.rb +1 -1
  17. data/lib/cybrid_api_id_ruby/models/error_response_idp_model.rb +1 -1
  18. data/lib/cybrid_api_id_ruby/models/patch_user_idp_model.rb +1 -1
  19. data/lib/cybrid_api_id_ruby/models/post_bank_application_idp_model.rb +1 -1
  20. data/lib/cybrid_api_id_ruby/models/post_customer_token_idp_model.rb +1 -1
  21. data/lib/cybrid_api_id_ruby/models/post_organization_application_idp_model.rb +1 -1
  22. data/lib/cybrid_api_id_ruby/models/post_user_idp_model.rb +1 -1
  23. data/lib/cybrid_api_id_ruby/models/user_idp_model.rb +1 -1
  24. data/lib/cybrid_api_id_ruby/models/user_list_idp_model.rb +1 -1
  25. data/lib/cybrid_api_id_ruby/version.rb +2 -2
  26. data/lib/cybrid_api_id_ruby.rb +1 -1
  27. data/spec/api/bank_applications_idp_api_spec.rb +1 -1
  28. data/spec/api/customer_tokens_idp_api_spec.rb +1 -1
  29. data/spec/api/organization_applications_idp_api_spec.rb +1 -1
  30. data/spec/api/users_idp_api_spec.rb +1 -1
  31. data/spec/api_client_spec.rb +1 -1
  32. data/spec/configuration_spec.rb +1 -1
  33. data/spec/models/application_idp_model_spec.rb +1 -1
  34. data/spec/models/application_list_idp_model_spec.rb +1 -1
  35. data/spec/models/application_with_secret_all_of_idp_model_spec.rb +1 -1
  36. data/spec/models/application_with_secret_idp_model_spec.rb +1 -1
  37. data/spec/models/customer_token_idp_model_spec.rb +1 -1
  38. data/spec/models/error_response_idp_model_spec.rb +1 -1
  39. data/spec/models/patch_user_idp_model_spec.rb +1 -1
  40. data/spec/models/post_bank_application_idp_model_spec.rb +1 -1
  41. data/spec/models/post_customer_token_idp_model_spec.rb +1 -1
  42. data/spec/models/post_organization_application_idp_model_spec.rb +1 -1
  43. data/spec/models/post_user_idp_model_spec.rb +1 -1
  44. data/spec/models/user_idp_model_spec.rb +1 -1
  45. data/spec/models/user_list_idp_model_spec.rb +1 -1
  46. data/spec/spec_helper.rb +1 -1
  47. data/vendor/bundle/ruby/3.3.0/cache/ethon-0.17.0.gem +0 -0
  48. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/byebug-12.0.0/gem_make.out +5 -5
  49. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
  50. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/jaro_winkler-1.5.6/gem_make.out +5 -5
  51. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
  52. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
  53. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
  54. data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/CHANGELOG.md +26 -1
  55. data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/README.md +1 -1
  56. data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/ethon.gemspec +6 -3
  57. data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curls/codes.rb +3 -2
  58. data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/version.rb +1 -1
  59. data/vendor/bundle/ruby/3.3.0/specifications/{ethon-0.16.0.gemspec → ethon-0.17.0.gemspec} +6 -5
  60. metadata +61 -105
  61. data/vendor/bundle/ruby/3.3.0/cache/ethon-0.16.0.gem +0 -0
  62. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/.github/workflows/ruby.yml +0 -41
  63. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/.gitignore +0 -8
  64. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/.rspec +0 -3
  65. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/Gemfile +0 -43
  66. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/Guardfile +0 -10
  67. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/Rakefile +0 -40
  68. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/benchmarks.rb +0 -104
  69. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/memory_leaks.rb +0 -114
  70. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/perf_spec_helper.rb +0 -37
  71. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/support/memory_test_helpers.rb +0 -76
  72. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/support/os_memory_leak_tracker.rb +0 -48
  73. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/profile/support/ruby_object_leak_tracker.rb +0 -49
  74. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/curl_spec.rb +0 -38
  75. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/callbacks_spec.rb +0 -81
  76. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/debug_info_spec.rb +0 -54
  77. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/features_spec.rb +0 -24
  78. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/form_spec.rb +0 -104
  79. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/header_spec.rb +0 -79
  80. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/custom_spec.rb +0 -177
  81. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/delete_spec.rb +0 -21
  82. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/get_spec.rb +0 -126
  83. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/head_spec.rb +0 -80
  84. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/options_spec.rb +0 -51
  85. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/patch_spec.rb +0 -51
  86. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/post_spec.rb +0 -317
  87. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http/put_spec.rb +0 -168
  88. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/http_spec.rb +0 -64
  89. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/informations_spec.rb +0 -126
  90. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/mirror_spec.rb +0 -47
  91. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/operations_spec.rb +0 -271
  92. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/options_spec.rb +0 -193
  93. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/queryable_spec.rb +0 -235
  94. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/response_callbacks_spec.rb +0 -152
  95. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy/util_spec.rb +0 -28
  96. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/easy_spec.rb +0 -203
  97. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/libc_spec.rb +0 -14
  98. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/loggable_spec.rb +0 -22
  99. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi/operations_spec.rb +0 -298
  100. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi/options_spec.rb +0 -182
  101. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi/stack_spec.rb +0 -80
  102. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/ethon/multi_spec.rb +0 -152
  103. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/spec_helper.rb +0 -28
  104. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/support/localhost_server.rb +0 -95
  105. data/vendor/bundle/ruby/3.3.0/gems/ethon-0.16.0/spec/support/server.rb +0 -115
  106. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/LICENSE +0 -0
  107. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curl.rb +0 -0
  108. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curls/classes.rb +0 -0
  109. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curls/constants.rb +0 -0
  110. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curls/form_options.rb +0 -0
  111. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curls/functions.rb +0 -0
  112. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curls/infos.rb +0 -0
  113. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curls/messages.rb +0 -0
  114. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curls/options.rb +0 -0
  115. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/curls/settings.rb +0 -0
  116. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/callbacks.rb +0 -0
  117. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/debug_info.rb +0 -0
  118. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/features.rb +0 -0
  119. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/form.rb +0 -0
  120. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/header.rb +0 -0
  121. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/actionable.rb +0 -0
  122. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/custom.rb +0 -0
  123. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/delete.rb +0 -0
  124. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/get.rb +0 -0
  125. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/head.rb +0 -0
  126. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/options.rb +0 -0
  127. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/patch.rb +0 -0
  128. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/post.rb +0 -0
  129. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/postable.rb +0 -0
  130. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/put.rb +0 -0
  131. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http/putable.rb +0 -0
  132. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/http.rb +0 -0
  133. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/informations.rb +0 -0
  134. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/mirror.rb +0 -0
  135. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/operations.rb +0 -0
  136. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/options.rb +0 -0
  137. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/params.rb +0 -0
  138. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/queryable.rb +0 -0
  139. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/response_callbacks.rb +0 -0
  140. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy/util.rb +0 -0
  141. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/easy.rb +0 -0
  142. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors/ethon_error.rb +0 -0
  143. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors/global_init.rb +0 -0
  144. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors/invalid_option.rb +0 -0
  145. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors/invalid_value.rb +0 -0
  146. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors/multi_add.rb +0 -0
  147. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors/multi_fdset.rb +0 -0
  148. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors/multi_remove.rb +0 -0
  149. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors/multi_timeout.rb +0 -0
  150. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors/select.rb +0 -0
  151. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/errors.rb +0 -0
  152. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/libc.rb +0 -0
  153. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/loggable.rb +0 -0
  154. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/multi/operations.rb +0 -0
  155. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/multi/options.rb +0 -0
  156. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/multi/stack.rb +0 -0
  157. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon/multi.rb +0 -0
  158. /data/vendor/bundle/ruby/3.3.0/gems/{ethon-0.16.0 → ethon-0.17.0}/lib/ethon.rb +0 -0
@@ -1,235 +0,0 @@
1
- # encoding: utf-8
2
- # frozen_string_literal: true
3
- require 'spec_helper'
4
-
5
- describe Ethon::Easy::Queryable do
6
- let(:hash) { {} }
7
- let!(:easy) { Ethon::Easy.new }
8
- let(:params) { Ethon::Easy::Params.new(easy, hash) }
9
-
10
- describe "#to_s" do
11
- context "when query_pairs empty" do
12
- before { params.instance_variable_set(:@query_pairs, []) }
13
-
14
- it "returns empty string" do
15
- expect(params.to_s).to eq("")
16
- end
17
- end
18
-
19
- context "when query_pairs not empty" do
20
- context "when escape" do
21
- before do
22
- params.escape = true
23
- end
24
-
25
- {
26
- '!' => '%21', '*' => '%2A', "'" => '%27', '(' => '%28',
27
- ')' => '%29', ';' => '%3B', ':' => '%3A', '@' => '%40',
28
- '&' => '%26', '=' => '%3D', '+' => '%2B', '$' => '%24',
29
- ',' => '%2C', '/' => '%2F', '?' => '%3F', '#' => '%23',
30
- '[' => '%5B', ']' => '%5D',
31
-
32
- '<' => '%3C', '>' => '%3E', '"' => '%22', '{' => '%7B',
33
- '}' => '%7D', '|' => '%7C', '\\' => '%5C', '`' => '%60',
34
- '^' => '%5E', '%' => '%25', ' ' => '%20', "\0" => '%00',
35
-
36
- 'まつもと' => '%E3%81%BE%E3%81%A4%E3%82%82%E3%81%A8',
37
- }.each do |value, percent|
38
- it "turns #{value.inspect} into #{percent}" do
39
- params.instance_variable_set(:@query_pairs, [[:a, value]])
40
- expect(params.to_s).to eq("a=#{percent}")
41
- end
42
- end
43
-
44
- {
45
- '.' => '%2E', '-' => '%2D', '_' => '%5F', '~' => '%7E',
46
- }.each do |value, percent|
47
- it "leaves #{value.inspect} instead of turning into #{percent}" do
48
- params.instance_variable_set(:@query_pairs, [[:a, value]])
49
- expect(params.to_s).to eq("a=#{value}")
50
- end
51
- end
52
- end
53
-
54
- context "when no escape" do
55
- before { params.instance_variable_set(:@query_pairs, [[:a, 1], [:b, 2]]) }
56
-
57
- it "returns concatenated query string" do
58
- expect(params.to_s).to eq("a=1&b=2")
59
- end
60
- end
61
- end
62
-
63
- context "when query_pairs contains a string" do
64
- before { params.instance_variable_set(:@query_pairs, ["{a: 1}"]) }
65
-
66
- it "returns correct string" do
67
- expect(params.to_s).to eq("{a: 1}")
68
- end
69
- end
70
- end
71
-
72
- describe "#build_query_pairs" do
73
- let(:pairs) { params.method(:build_query_pairs).call(hash) }
74
-
75
- context "when params is empty" do
76
- it "returns empty array" do
77
- expect(pairs).to eq([])
78
- end
79
- end
80
-
81
- context "when params is string" do
82
- let(:hash) { "{a: 1}" }
83
-
84
- it "wraps it in an array" do
85
- expect(pairs).to eq([hash])
86
- end
87
- end
88
-
89
- context "when params is simple hash" do
90
- let(:hash) { {:a => 1, :b => 2} }
91
-
92
- it "transforms" do
93
- expect(pairs).to include([:a, 1])
94
- expect(pairs).to include([:b, 2])
95
- end
96
- end
97
-
98
- context "when params is a nested hash" do
99
- let(:hash) { {:a => 1, :b => {:c => 2}} }
100
-
101
- it "transforms" do
102
- expect(pairs).to include([:a, 1])
103
- expect(pairs).to include(["b[c]", 2])
104
- end
105
- end
106
-
107
- context "when params contains an array" do
108
- let(:hash) { {:a => 1, :b => [2, 3]} }
109
-
110
- context "by default" do
111
- it "transforms" do
112
- expect(pairs).to include([:a, 1])
113
- expect(pairs).to include(["b[0]", 2])
114
- expect(pairs).to include(["b[1]", 3])
115
- end
116
- end
117
-
118
- context "when params_encoding is :rack" do
119
- before { params.params_encoding = :rack }
120
- it "transforms without indexes" do
121
- expect(pairs).to include([:a, 1])
122
- expect(pairs).to include(["b[]", 2])
123
- expect(pairs).to include(["b[]", 3])
124
- end
125
- end
126
-
127
- context "when params_encoding is :none" do
128
- before { params.params_encoding = :none }
129
- it "does no transformation" do
130
- expect(pairs).to include([:a, 1])
131
- expect(pairs).to include([:b, [2, 3]])
132
- end
133
- end
134
- end
135
-
136
- context "when params contains something nested in an array" do
137
- context "when string" do
138
- let(:hash) { {:a => {:b => ["hello", "world"]}} }
139
-
140
- it "transforms" do
141
- expect(pairs).to eq([["a[b][0]", "hello"], ["a[b][1]", "world"]])
142
- end
143
- end
144
-
145
- context "when hash" do
146
- let(:hash) { {:a => {:b => [{:c =>1}, {:d => 2}]}} }
147
-
148
- it "transforms" do
149
- expect(pairs).to eq([["a[b][0][c]", 1], ["a[b][1][d]", 2]])
150
- end
151
- end
152
-
153
- context "when file" do
154
- let(:file) { File.open("spec/spec_helper.rb") }
155
- let(:file_info) { params.method(:file_info).call(file) }
156
- let(:hash) { {:a => {:b => [file]}} }
157
- let(:mime_type) { file_info[1] }
158
-
159
- it "transforms" do
160
- expect(pairs).to eq([["a[b][0]", file_info]])
161
- end
162
-
163
- context "when MIME" do
164
- if defined?(MIME)
165
- context "when mime type" do
166
- it "sets mime type to text" do
167
- expect(mime_type).to eq("application/x-ruby")
168
- end
169
- end
170
- end
171
-
172
- context "when no mime type" do
173
- let(:file) { Tempfile.new("fubar") }
174
-
175
- it "sets mime type to default application/octet-stream" do
176
- expect(mime_type).to eq("application/octet-stream")
177
- end
178
- end
179
- end
180
-
181
- context "when no MIME" do
182
- before { hide_const("MIME") }
183
-
184
- it "sets mime type to default application/octet-stream" do
185
- expect(mime_type).to eq("application/octet-stream")
186
- end
187
- end
188
- end
189
- end
190
-
191
-
192
- context "when params contains file" do
193
- let(:file) { Tempfile.new("fubar") }
194
- let(:file_info) { params.method(:file_info).call(file) }
195
- let(:hash) { {:a => 1, :b => file} }
196
-
197
- it "transforms" do
198
- expect(pairs).to include([:a, 1])
199
- expect(pairs).to include([:b, file_info])
200
- end
201
- end
202
-
203
- context "when params key contains a null byte" do
204
- let(:hash) { {:a => "1\0" } }
205
-
206
- it "preserves" do
207
- expect(pairs).to eq([[:a, "1\0"]])
208
- end
209
- end
210
-
211
- context "when params value contains a null byte" do
212
- let(:hash) { {"a\0" => 1 } }
213
-
214
- it "preserves" do
215
- expect(pairs).to eq([["a\0", 1]])
216
- end
217
- end
218
- end
219
-
220
- describe "#empty?" do
221
- context "when params empty" do
222
- it "returns true" do
223
- expect(params.empty?).to be_truthy
224
- end
225
- end
226
-
227
- context "when params not empty" do
228
- let(:hash) { {:a => 1} }
229
-
230
- it "returns false" do
231
- expect(params.empty?).to be_falsey
232
- end
233
- end
234
- end
235
- end
@@ -1,152 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'spec_helper'
3
-
4
- describe Ethon::Easy::ResponseCallbacks do
5
- let(:easy) { Ethon::Easy.new }
6
-
7
- [:on_complete, :on_headers, :on_body, :on_progress].each do |callback_type|
8
- describe "##{callback_type}" do
9
- it "responds" do
10
- expect(easy).to respond_to("#{callback_type}")
11
- end
12
-
13
- context "when no block given" do
14
- it "returns @#{callback_type}" do
15
- expect(easy.send("#{callback_type}")).to eq([])
16
- end
17
- end
18
-
19
- context "when block given" do
20
- it "stores" do
21
- easy.send(callback_type) { p 1 }
22
- expect(easy.instance_variable_get("@#{callback_type}").size).to eq(1)
23
- end
24
- end
25
-
26
- context "when multiple blocks given" do
27
- it "stores" do
28
- easy.send(callback_type) { p 1 }
29
- easy.send(callback_type) { p 2 }
30
- expect(easy.instance_variable_get("@#{callback_type}").size).to eq(2)
31
- end
32
- end
33
- end
34
- end
35
-
36
- describe "#complete" do
37
- before do
38
- easy.on_complete {|r| String.new(r.url) }
39
- end
40
-
41
- it "executes blocks and passes self" do
42
- expect(String).to receive(:new).with(easy.url)
43
- easy.complete
44
- end
45
-
46
- context "when @on_complete nil" do
47
- it "doesn't raise" do
48
- easy.instance_variable_set(:@on_complete, nil)
49
- expect{ easy.complete }.to_not raise_error
50
- end
51
- end
52
- end
53
-
54
- describe "#headers" do
55
- before do
56
- easy.on_headers {|r| String.new(r.url) }
57
- end
58
-
59
- it "executes blocks and passes self" do
60
- expect(String).to receive(:new).with(easy.url)
61
- easy.headers
62
- end
63
-
64
- context "when @on_headers nil" do
65
- it "doesn't raise" do
66
- easy.instance_variable_set(:@on_headers, nil)
67
- expect{ easy.headers }.to_not raise_error
68
- end
69
- end
70
- end
71
-
72
- describe "#progress" do
73
- context "when requesting for realz" do
74
- it "executes callback" do
75
- post = Ethon::Easy::Http::Post.new("http://localhost:3001", {:body => "bar=fu"})
76
- post.setup(easy)
77
- @called = false
78
- @has_dltotal = false
79
- @has_ultotal = false
80
- easy.on_progress { @called = true }
81
- easy.on_progress { |dltotal, _, _, _| @has_dltotal ||= true }
82
- easy.on_progress { |_, _, ultotal, _| @has_ultotal ||= true }
83
- easy.perform
84
- expect(@called).to be true
85
- expect(@has_dltotal).to be true
86
- expect(@has_ultotal).to be true
87
- end
88
- end
89
-
90
- context "when pretending" do
91
- before do
92
- @dltotal = nil
93
- @dlnow = nil
94
- @ultotal = nil
95
- @ulnow = nil
96
- easy.on_progress { |dltotal, dlnow, ultotal, ulnow| @dltotal = dltotal ; @dlnow = dlnow; @ultotal = ultotal; @ulnow = ulnow }
97
- end
98
-
99
- it "executes blocks and passes dltotal" do
100
- easy.progress(1, 2, 3, 4)
101
- expect(@dltotal).to eq(1)
102
- end
103
-
104
- it "executes blocks and passes dlnow" do
105
- easy.progress(1, 2, 3, 4)
106
- expect(@dlnow).to eq(2)
107
- end
108
-
109
- it "executes blocks and passes ultotal" do
110
- easy.progress(1, 2, 3, 4)
111
- expect(@ultotal).to eq(3)
112
- end
113
-
114
- it "executes blocks and passes ulnow" do
115
- easy.progress(1, 2, 3, 4)
116
- expect(@ulnow).to eq(4)
117
- end
118
-
119
- context "when @on_progress nil" do
120
- it "doesn't raise" do
121
- easy.instance_variable_set(:@on_progress, nil)
122
- expect{ easy.progress(1, 2, 3, 4) }.to_not raise_error
123
- end
124
- end
125
- end
126
- end
127
-
128
- describe "#body" do
129
- before do
130
- @chunk = nil
131
- @r = nil
132
- easy.on_body { |chunk, r| @chunk = chunk ; @r = r }
133
- end
134
-
135
- it "executes blocks and passes self" do
136
- easy.body("the chunk")
137
- expect(@r).to be(easy)
138
- end
139
-
140
- it "executes blocks and passes chunk" do
141
- easy.body("the chunk")
142
- expect(@chunk).to eq("the chunk")
143
- end
144
-
145
- context "when @on_body nil" do
146
- it "doesn't raise" do
147
- easy.instance_variable_set(:@on_body, nil)
148
- expect{ easy.body("the chunk") }.to_not raise_error
149
- end
150
- end
151
- end
152
- end
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'spec_helper'
3
-
4
- describe Ethon::Easy::Util do
5
- class Dummy
6
- include Ethon::Easy::Util
7
- end
8
-
9
- let(:klass) { Dummy.new }
10
-
11
- describe "escape_zero_byte" do
12
- context "when value has no zero byte" do
13
- let(:value) { "hello world" }
14
-
15
- it "returns same value" do
16
- expect(klass.escape_zero_byte(value)).to be(value)
17
- end
18
- end
19
-
20
- context "when value has zero byte" do
21
- let(:value) { "hello \0world" }
22
-
23
- it "returns escaped" do
24
- expect(klass.escape_zero_byte(value)).to eq("hello \\0world")
25
- end
26
- end
27
- end
28
- end
@@ -1,203 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'spec_helper'
3
-
4
- describe Ethon::Easy do
5
- let(:easy) { Ethon::Easy.new }
6
-
7
- describe ".new" do
8
- it "inits curl" do
9
- expect(Ethon::Curl).to receive(:init)
10
- easy
11
- end
12
-
13
- context "when options are empty" do
14
- it "sets only callbacks" do
15
- expect_any_instance_of(Ethon::Easy).to receive(:set_callbacks)
16
- expect(Ethon::Easy).to receive(:set_option).never
17
- easy
18
- end
19
- end
20
-
21
- context "when options not empty" do
22
- context "when followlocation is set" do
23
- let(:options) { { :followlocation => true } }
24
- let(:easy) { Ethon::Easy.new(options) }
25
-
26
- it "sets followlocation" do
27
- expect_any_instance_of(Ethon::Easy).to receive(:set_callbacks)
28
- expect(Ethon::Curl).to receive(:set_option).with(:followlocation, true, anything)
29
- easy
30
- end
31
- end
32
- end
33
- end
34
-
35
- describe "#set_attributes" do
36
- context "when options are empty" do
37
- it "sets only callbacks" do
38
- expect_any_instance_of(Ethon::Easy).to receive(:set_callbacks)
39
- expect(Ethon::Easy).to receive(:set_option).never
40
- easy
41
- end
42
- end
43
-
44
- context "when options aren't empty" do
45
- context "when valid key" do
46
- it "sets" do
47
- expect(easy).to receive(:verbose=).with(true)
48
- easy.set_attributes({:verbose => true})
49
- end
50
- end
51
-
52
- context "when invalid key" do
53
- it "raises invalid option error" do
54
- expect{ easy.set_attributes({:fubar => 1}) }.to raise_error(Ethon::Errors::InvalidOption)
55
- end
56
- end
57
- end
58
- end
59
-
60
- describe "#reset" do
61
- before { easy.url = "www.example.com" }
62
-
63
- it "resets url" do
64
- easy.reset
65
- expect(easy.url).to be_nil
66
- end
67
-
68
- it "resets escape?" do
69
- easy.escape = false
70
- easy.reset
71
- expect(easy.escape?).to be_truthy
72
- end
73
-
74
- it "resets hash" do
75
- easy.reset
76
- expect(easy.instance_variable_get(:@hash)).to be_nil
77
- end
78
-
79
- it "resets easy handle" do
80
- expect(Ethon::Curl).to receive(:easy_reset)
81
- easy.reset
82
- end
83
-
84
- it "resets on_complete" do
85
- easy.on_complete { p 1 }
86
- easy.reset
87
- expect(easy.on_complete).to be_empty
88
- end
89
-
90
- it "resets on_headers" do
91
- easy.on_headers { p 1 }
92
- easy.reset
93
- expect(easy.on_headers).to be_empty
94
- end
95
-
96
- it "resets on_body" do
97
- easy.on_body { p 1 }
98
- easy.reset
99
- expect(easy.on_body).to be_empty
100
- end
101
- end
102
-
103
- describe "#dup" do
104
- let!(:easy) do
105
- easy = Ethon::Easy.new
106
- easy.url = "http://localhost:3001/"
107
- easy.on_complete { 'on_complete' }
108
- easy.on_headers { 'on_headers' }
109
- easy.on_progress { 'on_progress' }
110
- easy.response_body = String.new('test_body')
111
- easy.response_headers = String.new('test_headers')
112
- easy
113
- end
114
- let!(:e) { easy.dup }
115
-
116
- it "sets a new handle" do
117
- expect(e.handle).not_to eq(easy.handle)
118
- end
119
-
120
- it "preserves url" do
121
- expect(e.url).to eq(easy.url)
122
- end
123
-
124
- it "preserves on_complete callback" do
125
- expect(e.on_complete).to be(easy.on_complete)
126
- end
127
-
128
- it "preserves on_headers callback" do
129
- expect(e.on_headers).to be(easy.on_headers)
130
- end
131
-
132
- it 'preserves body_write_callback of original handle' do
133
- expect { easy.perform }.to change { easy.response_body }
134
- expect { easy.perform }.not_to change { e.response_body }
135
- end
136
-
137
- it "preserves on_progress callback" do
138
- expect(e.on_progress).to be(easy.on_progress)
139
- end
140
-
141
- it 'sets new body_write_callback of duplicated handle' do
142
- expect { e.perform }.to change { e.response_body }
143
- expect { e.perform }.not_to change { easy.response_body }
144
- end
145
-
146
- it 'preserves headers_write_callback of original handle' do
147
- expect { easy.perform }.to change { easy.response_headers }
148
- expect { easy.perform }.not_to change { e.response_headers }
149
- end
150
-
151
- it 'sets new headers_write_callback of duplicated handle' do
152
- expect { e.perform }.to change { e.response_headers }
153
- expect { e.perform }.not_to change { easy.response_headers }
154
- end
155
-
156
- it "resets response_body" do
157
- expect(e.response_body).to be_empty
158
- end
159
-
160
- it "resets response_headers" do
161
- expect(e.response_headers).to be_empty
162
- end
163
-
164
- it "sets response_body for duplicated Easy" do
165
- e.perform
166
- expect(e.response_body).not_to be_empty
167
- end
168
-
169
- it "sets response_headers for duplicated Easy" do
170
- e.perform
171
- expect(e.response_headers).not_to be_empty
172
- end
173
-
174
- it "preserves response_body for original Easy" do
175
- e.perform
176
- expect(easy.response_body).to eq('test_body')
177
- end
178
-
179
- it "preserves response_headers for original Easy" do
180
- e.perform
181
- expect(easy.response_headers).to eq('test_headers')
182
- end
183
- end
184
-
185
- describe "#mirror" do
186
- it "returns a Mirror" do
187
- expect(easy.mirror).to be_a(Ethon::Easy::Mirror)
188
- end
189
-
190
- it "builds from easy" do
191
- expect(Ethon::Easy::Mirror).to receive(:from_easy).with(easy)
192
- easy.mirror
193
- end
194
- end
195
-
196
- describe "#log_inspect" do
197
- [ :url, :response_code, :return_code, :total_time ].each do |name|
198
- it "contains #{name}" do
199
- expect(easy.log_inspect).to match name.to_s
200
- end
201
- end
202
- end
203
- end
@@ -1,14 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'spec_helper'
3
-
4
- describe Ethon::Libc do
5
- describe "#getdtablesize", :if => !Ethon::Curl.windows? do
6
- it "returns an integer" do
7
- expect(Ethon::Libc.getdtablesize).to be_a(Integer)
8
- end
9
-
10
- it "returns bigger zero", :if => !Ethon::Curl.windows? do
11
- expect(Ethon::Libc.getdtablesize).to_not be_zero
12
- end
13
- end
14
- end
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
- require "spec_helper"
3
-
4
- describe Ethon::Loggable do
5
-
6
- describe "#logger=" do
7
-
8
- let(:logger) do
9
- Logger.new($stdout).tap do |log|
10
- log.level = Logger::INFO
11
- end
12
- end
13
-
14
- before do
15
- Ethon.logger = logger
16
- end
17
-
18
- it "sets the logger" do
19
- expect(Ethon.logger).to eq(logger)
20
- end
21
- end
22
- end