gir_ffi 0.14.1 → 0.15.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 (263) hide show
  1. checksums.yaml +4 -4
  2. data/Changelog.md +21 -0
  3. data/Gemfile +6 -4
  4. data/README.md +4 -4
  5. data/Rakefile +5 -5
  6. data/lib/ffi-glib/array.rb +14 -4
  7. data/lib/ffi-glib/byte_array.rb +7 -2
  8. data/lib/ffi-glib/container_class_methods.rb +1 -1
  9. data/lib/ffi-glib/error.rb +1 -1
  10. data/lib/ffi-glib/hash_table.rb +3 -3
  11. data/lib/ffi-glib/list.rb +1 -1
  12. data/lib/ffi-glib/list_methods.rb +1 -1
  13. data/lib/ffi-glib/main_loop.rb +3 -3
  14. data/lib/ffi-glib/ptr_array.rb +30 -8
  15. data/lib/ffi-glib/s_list.rb +1 -1
  16. data/lib/ffi-glib/variant.rb +1 -1
  17. data/lib/ffi-glib.rb +16 -16
  18. data/lib/ffi-gobject/object.rb +23 -32
  19. data/lib/ffi-gobject/param_spec.rb +1 -1
  20. data/lib/ffi-gobject/ruby_closure.rb +2 -2
  21. data/lib/ffi-gobject/value.rb +37 -28
  22. data/lib/ffi-gobject.rb +13 -13
  23. data/lib/ffi-gobject_introspection/gobject_type_init.rb +2 -2
  24. data/lib/ffi-gobject_introspection/i_arg_info.rb +2 -2
  25. data/lib/ffi-gobject_introspection/i_base_info.rb +27 -17
  26. data/lib/ffi-gobject_introspection/i_callable_info.rb +4 -4
  27. data/lib/ffi-gobject_introspection/i_constant_info.rb +2 -2
  28. data/lib/ffi-gobject_introspection/i_enum_info.rb +1 -0
  29. data/lib/ffi-gobject_introspection/i_field_info.rb +1 -1
  30. data/lib/ffi-gobject_introspection/i_function_info.rb +1 -1
  31. data/lib/ffi-gobject_introspection/i_interface_info.rb +1 -1
  32. data/lib/ffi-gobject_introspection/i_object_info.rb +2 -2
  33. data/lib/ffi-gobject_introspection/i_property_info.rb +2 -2
  34. data/lib/ffi-gobject_introspection/i_repository.rb +9 -6
  35. data/lib/ffi-gobject_introspection/i_struct_info.rb +2 -1
  36. data/lib/ffi-gobject_introspection/i_type_info.rb +13 -7
  37. data/lib/ffi-gobject_introspection/i_unresolved_info.rb +1 -1
  38. data/lib/ffi-gobject_introspection/i_vfunc_info.rb +1 -1
  39. data/lib/ffi-gobject_introspection/lib.rb +30 -19
  40. data/lib/ffi-gobject_introspection/strv.rb +1 -1
  41. data/lib/ffi-gobject_introspection.rb +20 -20
  42. data/lib/gir_ffi/allocation_helper.rb +1 -1
  43. data/lib/gir_ffi/arg_helper.rb +4 -4
  44. data/lib/gir_ffi/{in_out_pointer.rb → array_element_convertor.rb} +16 -23
  45. data/lib/gir_ffi/boolean.rb +1 -1
  46. data/lib/gir_ffi/boxed_base.rb +1 -1
  47. data/lib/gir_ffi/builder.rb +18 -10
  48. data/lib/gir_ffi/builders/argument_builder.rb +17 -17
  49. data/lib/gir_ffi/builders/base_argument_builder.rb +1 -0
  50. data/lib/gir_ffi/builders/base_method_builder.rb +7 -7
  51. data/lib/gir_ffi/builders/base_return_value_builder.rb +1 -1
  52. data/lib/gir_ffi/builders/base_type_builder.rb +1 -1
  53. data/lib/gir_ffi/builders/c_to_ruby_convertor.rb +5 -5
  54. data/lib/gir_ffi/builders/callback_argument_builder.rb +8 -8
  55. data/lib/gir_ffi/builders/callback_builder.rb +3 -3
  56. data/lib/gir_ffi/builders/callback_return_value_builder.rb +2 -2
  57. data/lib/gir_ffi/builders/closure_argument_builder.rb +1 -1
  58. data/lib/gir_ffi/builders/closure_return_value_builder.rb +1 -1
  59. data/lib/gir_ffi/builders/constant_builder.rb +1 -1
  60. data/lib/gir_ffi/builders/constructor_builder.rb +9 -9
  61. data/lib/gir_ffi/builders/enum_builder.rb +2 -2
  62. data/lib/gir_ffi/builders/field_builder.rb +16 -15
  63. data/lib/gir_ffi/builders/flags_builder.rb +2 -2
  64. data/lib/gir_ffi/builders/full_c_to_ruby_convertor.rb +1 -1
  65. data/lib/gir_ffi/builders/function_builder.rb +11 -5
  66. data/lib/gir_ffi/builders/initializer_builder.rb +3 -3
  67. data/lib/gir_ffi/builders/initializer_return_value_builder.rb +2 -2
  68. data/lib/gir_ffi/builders/interface_builder.rb +2 -2
  69. data/lib/gir_ffi/builders/mapping_method_builder.rb +9 -9
  70. data/lib/gir_ffi/builders/marshalling_method_builder.rb +7 -7
  71. data/lib/gir_ffi/builders/method_template.rb +1 -1
  72. data/lib/gir_ffi/builders/module_builder.rb +4 -6
  73. data/lib/gir_ffi/builders/object_builder.rb +6 -6
  74. data/lib/gir_ffi/builders/property_argument_builder.rb +1 -1
  75. data/lib/gir_ffi/builders/property_builder.rb +13 -12
  76. data/lib/gir_ffi/builders/property_return_value_builder.rb +1 -1
  77. data/lib/gir_ffi/builders/registered_type_builder.rb +14 -5
  78. data/lib/gir_ffi/builders/return_value_builder.rb +4 -4
  79. data/lib/gir_ffi/builders/ruby_to_c_convertor.rb +6 -6
  80. data/lib/gir_ffi/builders/signal_closure_builder.rb +2 -2
  81. data/lib/gir_ffi/builders/struct_builder.rb +4 -4
  82. data/lib/gir_ffi/builders/struct_like.rb +1 -1
  83. data/lib/gir_ffi/builders/type_builder.rb +12 -12
  84. data/lib/gir_ffi/builders/unintrospectable_boxed_builder.rb +2 -2
  85. data/lib/gir_ffi/builders/unintrospectable_builder.rb +2 -2
  86. data/lib/gir_ffi/builders/union_builder.rb +4 -4
  87. data/lib/gir_ffi/builders/user_defined_builder.rb +2 -2
  88. data/lib/gir_ffi/builders/vfunc_argument_builder.rb +1 -1
  89. data/lib/gir_ffi/builders/vfunc_builder.rb +6 -6
  90. data/lib/gir_ffi/builders/with_layout.rb +2 -2
  91. data/lib/gir_ffi/callback_base.rb +1 -1
  92. data/lib/gir_ffi/class_base.rb +5 -5
  93. data/lib/gir_ffi/core.rb +19 -20
  94. data/lib/gir_ffi/enum_base.rb +1 -1
  95. data/lib/gir_ffi/enum_like_base.rb +2 -2
  96. data/lib/gir_ffi/error_argument_info.rb +2 -2
  97. data/lib/gir_ffi/error_type_info.rb +1 -1
  98. data/lib/gir_ffi/ffi_ext/pointer.rb +1 -1
  99. data/lib/gir_ffi/ffi_ext.rb +1 -1
  100. data/lib/gir_ffi/flags_base.rb +1 -1
  101. data/lib/gir_ffi/in_pointer.rb +10 -0
  102. data/lib/gir_ffi/info_ext/full_type_name.rb +3 -3
  103. data/lib/gir_ffi/info_ext/i_arg_info.rb +1 -1
  104. data/lib/gir_ffi/info_ext/i_callable_info.rb +1 -1
  105. data/lib/gir_ffi/info_ext/i_callback_info.rb +1 -1
  106. data/lib/gir_ffi/info_ext/i_field_info.rb +1 -1
  107. data/lib/gir_ffi/info_ext/i_function_info.rb +1 -1
  108. data/lib/gir_ffi/info_ext/i_property_info.rb +2 -2
  109. data/lib/gir_ffi/info_ext/i_registered_type_info.rb +4 -5
  110. data/lib/gir_ffi/info_ext/i_signal_info.rb +7 -3
  111. data/lib/gir_ffi/info_ext/i_type_info.rb +48 -26
  112. data/lib/gir_ffi/info_ext/i_unresolved_info.rb +1 -1
  113. data/lib/gir_ffi/info_ext/i_value_info.rb +2 -2
  114. data/lib/gir_ffi/info_ext/i_vfunc_info.rb +2 -2
  115. data/lib/gir_ffi/info_ext/safe_constant_name.rb +8 -8
  116. data/lib/gir_ffi/info_ext/safe_function_name.rb +2 -2
  117. data/lib/gir_ffi/info_ext.rb +15 -15
  118. data/lib/gir_ffi/interface_base.rb +3 -3
  119. data/lib/gir_ffi/lib_c.rb +1 -1
  120. data/lib/gir_ffi/method_stubber.rb +1 -1
  121. data/lib/gir_ffi/module_base.rb +1 -1
  122. data/lib/gir_ffi/object_base.rb +3 -4
  123. data/lib/gir_ffi/receiver_argument_info.rb +1 -1
  124. data/lib/gir_ffi/receiver_type_info.rb +2 -2
  125. data/lib/gir_ffi/registered_type_base.rb +1 -1
  126. data/lib/gir_ffi/sized_array.rb +4 -2
  127. data/lib/gir_ffi/struct.rb +1 -1
  128. data/lib/gir_ffi/struct_base.rb +1 -1
  129. data/lib/gir_ffi/type_map.rb +2 -23
  130. data/lib/gir_ffi/unintrospectable_boxed_info.rb +2 -2
  131. data/lib/gir_ffi/unintrospectable_type_info.rb +1 -1
  132. data/lib/gir_ffi/union.rb +1 -1
  133. data/lib/gir_ffi/union_base.rb +1 -1
  134. data/lib/gir_ffi/user_defined_object_info.rb +6 -2
  135. data/lib/gir_ffi/user_defined_property_info.rb +33 -33
  136. data/lib/gir_ffi/version.rb +1 -1
  137. data/lib/gir_ffi-base/gobject/lib.rb +3 -2
  138. data/lib/gir_ffi-base/gobject.rb +26 -25
  139. data/lib/gir_ffi-base.rb +1 -1
  140. data/lib/gir_ffi.rb +3 -3
  141. data/tasks/test.rake +3 -2
  142. data/test/base_test_helper.rb +16 -9
  143. data/test/ffi-glib/array_test.rb +71 -56
  144. data/test/ffi-glib/byte_array_test.rb +13 -7
  145. data/test/ffi-glib/bytes_test.rb +24 -19
  146. data/test/ffi-glib/closure_test.rb +11 -11
  147. data/test/ffi-glib/destroy_notify_test.rb +6 -6
  148. data/test/ffi-glib/hash_table_test.rb +27 -27
  149. data/test/ffi-glib/list_test.rb +22 -22
  150. data/test/ffi-glib/main_loop_test.rb +12 -12
  151. data/test/ffi-glib/ptr_array_test.rb +39 -39
  152. data/test/ffi-glib/ruby_closure_test.rb +10 -10
  153. data/test/ffi-glib/s_list_test.rb +20 -20
  154. data/test/ffi-glib/strv_test.rb +19 -19
  155. data/test/ffi-glib/variant_test.rb +5 -5
  156. data/test/ffi-gobject/gobject_test.rb +48 -44
  157. data/test/ffi-gobject/object_class_test.rb +8 -8
  158. data/test/ffi-gobject/object_test.rb +49 -67
  159. data/test/ffi-gobject/param_spec_test.rb +12 -12
  160. data/test/ffi-gobject/value_test.rb +145 -125
  161. data/test/ffi-gobject_introspection/gobject_type_init_test.rb +8 -8
  162. data/test/ffi-gobject_introspection/i_base_info_test.rb +15 -16
  163. data/test/ffi-gobject_introspection/i_constant_info_test.rb +9 -13
  164. data/test/ffi-gobject_introspection/i_enum_info_test.rb +7 -7
  165. data/test/ffi-gobject_introspection/i_function_info_test.rb +1 -1
  166. data/test/ffi-gobject_introspection/i_interface_info_test.rb +10 -10
  167. data/test/ffi-gobject_introspection/i_object_info_test.rb +23 -23
  168. data/test/ffi-gobject_introspection/i_property_info_test.rb +19 -19
  169. data/test/ffi-gobject_introspection/i_registered_type_info_test.rb +10 -10
  170. data/test/ffi-gobject_introspection/i_repository_test.rb +31 -31
  171. data/test/ffi-gobject_introspection/i_struct_info_test.rb +10 -10
  172. data/test/ffi-gobject_introspection/i_type_info_test.rb +12 -15
  173. data/test/ffi-gobject_introspection/i_union_info_test.rb +7 -7
  174. data/test/ffi-gobject_introspection/i_vfunc_info_test.rb +16 -16
  175. data/test/ffi-gobject_introspection/lib_test.rb +3 -3
  176. data/test/ffi-gobject_introspection/strv_test.rb +9 -9
  177. data/test/ffi-gobject_test.rb +44 -44
  178. data/test/gir_ffi/allocation_helper_test.rb +13 -13
  179. data/test/gir_ffi/arg_helper_test.rb +63 -64
  180. data/test/gir_ffi/boolean_test.rb +20 -20
  181. data/test/gir_ffi/boxed_base_test.rb +18 -18
  182. data/test/gir_ffi/builder_test.rb +115 -93
  183. data/test/gir_ffi/builders/argument_builder_test.rb +280 -286
  184. data/test/gir_ffi/builders/base_argument_builder_test.rb +1 -1
  185. data/test/gir_ffi/builders/callback_argument_builder_test.rb +53 -56
  186. data/test/gir_ffi/builders/callback_builder_test.rb +71 -72
  187. data/test/gir_ffi/builders/callback_return_value_builder_test.rb +36 -40
  188. data/test/gir_ffi/builders/constant_builder_test.rb +1 -1
  189. data/test/gir_ffi/builders/constructor_builder_test.rb +10 -10
  190. data/test/gir_ffi/builders/enum_builder_test.rb +10 -10
  191. data/test/gir_ffi/builders/field_builder_test.rb +42 -42
  192. data/test/gir_ffi/builders/function_builder_test.rb +236 -224
  193. data/test/gir_ffi/builders/initializer_builder_test.rb +14 -14
  194. data/test/gir_ffi/builders/interface_builder_test.rb +9 -9
  195. data/test/gir_ffi/builders/module_builder_test.rb +18 -18
  196. data/test/gir_ffi/builders/object_builder_test.rb +38 -38
  197. data/test/gir_ffi/builders/property_builder_test.rb +91 -94
  198. data/test/gir_ffi/builders/registered_type_builder_test.rb +35 -11
  199. data/test/gir_ffi/builders/return_value_builder_test.rb +215 -222
  200. data/test/gir_ffi/builders/signal_closure_builder_test.rb +122 -113
  201. data/test/gir_ffi/builders/struct_builder_test.rb +32 -32
  202. data/test/gir_ffi/builders/unintrospectable_boxed_builder_test.rb +8 -14
  203. data/test/gir_ffi/builders/unintrospectable_builder_test.rb +23 -23
  204. data/test/gir_ffi/builders/union_builder_test.rb +12 -15
  205. data/test/gir_ffi/builders/user_defined_builder_test.rb +147 -147
  206. data/test/gir_ffi/builders/vfunc_argument_builder_test.rb +40 -40
  207. data/test/gir_ffi/builders/vfunc_builder_test.rb +145 -157
  208. data/test/gir_ffi/callback_base_test.rb +9 -9
  209. data/test/gir_ffi/class_base_test.rb +49 -51
  210. data/test/gir_ffi/core_test.rb +32 -32
  211. data/test/gir_ffi/enum_base_test.rb +19 -19
  212. data/test/gir_ffi/error_type_info_test.rb +23 -23
  213. data/test/gir_ffi/ffi_ext/pointer_test.rb +5 -5
  214. data/test/gir_ffi/g_type_test.rb +11 -11
  215. data/test/gir_ffi/in_pointer_test.rb +70 -50
  216. data/test/gir_ffi/info_ext/i_callable_info_test.rb +5 -5
  217. data/test/gir_ffi/info_ext/i_callback_info_test.rb +4 -4
  218. data/test/gir_ffi/info_ext/i_field_info_test.rb +6 -6
  219. data/test/gir_ffi/info_ext/i_function_info_test.rb +17 -17
  220. data/test/gir_ffi/info_ext/i_signal_info_test.rb +8 -8
  221. data/test/gir_ffi/info_ext/i_type_info_test.rb +229 -215
  222. data/test/gir_ffi/info_ext/i_unresolved_info_test.rb +4 -4
  223. data/test/gir_ffi/info_ext/safe_constant_name_test.rb +8 -8
  224. data/test/gir_ffi/info_ext/safe_function_name_test.rb +8 -8
  225. data/test/gir_ffi/interface_base_test.rb +8 -8
  226. data/test/gir_ffi/method_stubber_test.rb +19 -19
  227. data/test/gir_ffi/object_base_test.rb +19 -19
  228. data/test/gir_ffi/object_store_test.rb +13 -13
  229. data/test/gir_ffi/receiver_argument_info_test.rb +15 -15
  230. data/test/gir_ffi/sized_array_test.rb +68 -68
  231. data/test/gir_ffi/struct_base_test.rb +8 -8
  232. data/test/gir_ffi/struct_like_base_test.rb +64 -64
  233. data/test/gir_ffi/type_map_test.rb +6 -6
  234. data/test/gir_ffi/unintrospectable_type_info_test.rb +33 -33
  235. data/test/gir_ffi/union_base_test.rb +8 -8
  236. data/test/gir_ffi/user_defined_object_info_test.rb +34 -34
  237. data/test/gir_ffi/user_defined_property_info_test.rb +16 -16
  238. data/test/gir_ffi/variable_name_generator_test.rb +8 -8
  239. data/test/gir_ffi/version_test.rb +4 -4
  240. data/test/gir_ffi/zero_terminated_test.rb +34 -34
  241. data/test/gir_ffi_test_helper.rb +3 -3
  242. data/test/integration/callback_exceptions_test.rb +17 -21
  243. data/test/integration/derived_classes_test.rb +13 -13
  244. data/test/integration/generated_everything_test.rb +224 -224
  245. data/test/integration/generated_gimarshallingtests_test.rb +1118 -1017
  246. data/test/integration/generated_gio_test.rb +36 -36
  247. data/test/integration/generated_glib_test.rb +4 -6
  248. data/test/integration/generated_gobject_test.rb +43 -35
  249. data/test/integration/generated_gst_test.rb +16 -16
  250. data/test/integration/generated_gtk_source_test.rb +22 -17
  251. data/test/integration/generated_gtop_test.rb +8 -15
  252. data/test/integration/generated_pango_ft2_test.rb +2 -2
  253. data/test/integration/generated_pango_test.rb +4 -4
  254. data/test/integration/generated_regress_test.rb +1809 -1621
  255. data/test/integration/generated_secret_test.rb +8 -11
  256. data/test/integration/generated_utility_test.rb +81 -81
  257. data/test/integration/generated_warnlib_test.rb +13 -19
  258. data/test/integration/method_lookup_test.rb +6 -6
  259. data/test/introspection_test_helper.rb +48 -7
  260. data/test/minitest/stats_plugin.rb +1 -1
  261. metadata +11 -28
  262. data/lib/ffi-glib/array_methods.rb +0 -16
  263. data/test/gir_ffi/in_out_pointer_test.rb +0 -56
@@ -1,30 +1,54 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
5
  GirFFI.setup :Regress
6
6
 
7
7
  describe GirFFI::Builders::RegisteredTypeBuilder do
8
- describe '#setup_instance_method' do
9
- it 'restores a method that was removed' do
10
- Regress::TestObj.class_eval { remove_method 'instance_method' }
8
+ describe "#setup_instance_method" do
9
+ it "restores a method that was removed" do
10
+ Regress::TestObj.class_eval { remove_method "instance_method" }
11
11
 
12
12
  builder = Regress::TestObj.gir_ffi_builder
13
13
 
14
- builder.setup_instance_method 'instance_method'
14
+ builder.setup_instance_method "instance_method"
15
15
 
16
16
  obj = Regress::TestObj.constructor
17
- obj.must_respond_to 'instance_method'
17
+ _(obj).must_respond_to "instance_method"
18
18
  end
19
19
 
20
- it 'returns the name of the generated method' do
20
+ it "returns the name of the generated method" do
21
21
  builder = Regress::TestObj.gir_ffi_builder
22
- result = builder.setup_instance_method 'instance_method'
23
- result.must_equal 'instance_method'
22
+ result = builder.setup_instance_method "instance_method"
23
+ _(result).must_equal "instance_method"
24
24
  end
25
25
 
26
- it 'returns the name of the generated method if different from the info name' do
27
- skip 'Need some way to test this now that GLib::IConv is gone'
26
+ it "returns the name of the generated method if different from the info name" do
27
+ skip "Need some way to test this now that GLib::IConv is gone"
28
+ end
29
+ end
30
+
31
+ describe "#stub_methods" do
32
+ it "adds getter method aliases" do
33
+ instance = Regress::TestWi8021x.new
34
+ _(instance).must_respond_to :testbool
35
+ end
36
+
37
+ it "adds setter method aliases" do
38
+ instance = Regress::TestWi8021x.new
39
+ _(instance).must_respond_to :testbool=
40
+ end
41
+
42
+ it "adds getter alias for method with arguments" do
43
+ instance = Regress::TestObj.constructor
44
+ _(instance).must_respond_to :get_qdata
45
+ _(instance).must_respond_to :qdata
46
+ end
47
+
48
+ it "does not add setter alias for method with more than one argument" do
49
+ instance = Regress::TestObj.constructor
50
+ _(instance).must_respond_to :set_data
51
+ _(instance).wont_respond_to :data=
28
52
  end
29
53
  end
30
54
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
5
  describe GirFFI::Builders::ReturnValueBuilder do
6
6
  let(:var_gen) { GirFFI::VariableNameGenerator.new }
@@ -11,396 +11,389 @@ describe GirFFI::Builders::ReturnValueBuilder do
11
11
  GirFFI::Builders::ReturnValueBuilder.new(var_gen, return_type_info)
12
12
  end
13
13
 
14
- describe 'for :gint32' do
14
+ describe "for :gint32" do
15
15
  let(:method_info) do
16
- get_introspection_data('GIMarshallingTests',
17
- 'int_return_min')
16
+ get_introspection_data("GIMarshallingTests",
17
+ "int_return_min")
18
18
  end
19
19
 
20
- it 'has no statements in #post_conversion' do
21
- builder.post_conversion.must_equal []
20
+ it "has no statements in #post_conversion" do
21
+ _(builder.post_conversion).must_equal []
22
22
  end
23
23
 
24
- it 'returns the result of the c function directly' do
25
- builder.capture_variable_name.must_equal '_v1'
26
- builder.return_value_name.must_equal '_v1'
24
+ it "returns the result of the c function directly" do
25
+ _(builder.capture_variable_name).must_equal "_v1"
26
+ _(builder.return_value_name).must_equal "_v1"
27
27
  end
28
28
  end
29
29
 
30
- describe 'for :struct' do
31
- describe 'with transfer :nothing' do
30
+ describe "for :struct" do
31
+ describe "with transfer :nothing" do
32
32
  let(:method_info) do
33
- get_method_introspection_data('GIMarshallingTests',
34
- 'BoxedStruct',
35
- 'returnv')
33
+ get_method_introspection_data("GIMarshallingTests",
34
+ "BoxedStruct",
35
+ "returnv")
36
36
  end
37
37
 
38
- it 'wraps and copies the result in #post_conversion' do
39
- builder.capture_variable_name.must_equal '_v1'
40
- builder.post_conversion.must_equal ['_v2 = GIMarshallingTests::BoxedStruct.wrap_copy(_v1)']
38
+ it "wraps and copies the result in #post_conversion" do
39
+ _(builder.capture_variable_name).must_equal "_v1"
40
+ _(builder.post_conversion).must_equal ["_v2 = GIMarshallingTests::BoxedStruct.wrap_copy(_v1)"]
41
41
  end
42
42
 
43
- it 'returns the copied result' do
44
- builder.capture_variable_name.must_equal '_v1'
45
- builder.return_value_name.must_equal '_v2'
43
+ it "returns the copied result" do
44
+ _(builder.capture_variable_name).must_equal "_v1"
45
+ _(builder.return_value_name).must_equal "_v2"
46
46
  end
47
47
  end
48
48
  end
49
49
 
50
- describe 'for :union' do
50
+ describe "for :union" do
51
51
  let(:method_info) do
52
- get_method_introspection_data('GIMarshallingTests',
53
- 'Union',
54
- 'returnv')
52
+ get_method_introspection_data("GIMarshallingTests",
53
+ "Union",
54
+ "returnv")
55
55
  end
56
56
 
57
- it 'wraps the result in #post_conversion' do
58
- builder.capture_variable_name.must_equal '_v1'
59
- builder.post_conversion.must_equal ['_v2 = GIMarshallingTests::Union.wrap_copy(_v1)']
57
+ it "wraps the result in #post_conversion" do
58
+ _(builder.capture_variable_name).must_equal "_v1"
59
+ _(builder.post_conversion).must_equal ["_v2 = GIMarshallingTests::Union.wrap_copy(_v1)"]
60
60
  end
61
61
 
62
- it 'returns the wrapped result' do
63
- builder.capture_variable_name.must_equal '_v1'
64
- builder.return_value_name.must_equal '_v2'
62
+ it "returns the wrapped result" do
63
+ _(builder.capture_variable_name).must_equal "_v1"
64
+ _(builder.return_value_name).must_equal "_v2"
65
65
  end
66
66
  end
67
67
 
68
- describe 'for :interface' do
68
+ describe "for :interface" do
69
69
  let(:method_info) do
70
- get_method_introspection_data('Gio',
71
- 'File',
72
- 'new_for_commandline_arg')
70
+ get_method_introspection_data("Gio",
71
+ "File",
72
+ "new_for_commandline_arg")
73
73
  end
74
74
 
75
- it 'wraps the result in #post_conversion' do
76
- builder.capture_variable_name.must_equal '_v1'
77
- builder.post_conversion.must_equal ['_v2 = Gio::File.wrap(_v1)']
75
+ it "wraps the result in #post_conversion" do
76
+ _(builder.capture_variable_name).must_equal "_v1"
77
+ _(builder.post_conversion).must_equal ["_v2 = Gio::File.wrap(_v1)"]
78
78
  end
79
79
 
80
- it 'returns the wrapped result' do
81
- builder.capture_variable_name.must_equal '_v1'
82
- builder.return_value_name.must_equal '_v2'
80
+ it "returns the wrapped result" do
81
+ _(builder.capture_variable_name).must_equal "_v1"
82
+ _(builder.return_value_name).must_equal "_v2"
83
83
  end
84
84
  end
85
85
 
86
- describe 'for :object' do
87
- describe 'with full ownership transfer' do
86
+ describe "for :object" do
87
+ describe "with full ownership transfer" do
88
88
  let(:method_info) do
89
- get_method_introspection_data('GIMarshallingTests',
90
- 'Object',
91
- 'full_return')
89
+ get_method_introspection_data("GIMarshallingTests",
90
+ "Object",
91
+ "full_return")
92
92
  end
93
93
 
94
- it 'wraps the result in #post_conversion' do
95
- builder.capture_variable_name.must_equal '_v1'
96
- builder.post_conversion.must_equal ['_v2 = GIMarshallingTests::Object.wrap(_v1)']
94
+ it "wraps the result in #post_conversion" do
95
+ _(builder.capture_variable_name).must_equal "_v1"
96
+ _(builder.post_conversion).must_equal ["_v2 = GIMarshallingTests::Object.wrap(_v1)"]
97
97
  end
98
98
 
99
- it 'returns the wrapped result' do
100
- builder.capture_variable_name.must_equal '_v1'
101
- builder.return_value_name.must_equal '_v2'
99
+ it "returns the wrapped result" do
100
+ _(builder.capture_variable_name).must_equal "_v1"
101
+ _(builder.return_value_name).must_equal "_v2"
102
102
  end
103
103
  end
104
104
 
105
- describe 'with no ownership transfer' do
105
+ describe "with no ownership transfer" do
106
106
  let(:method_info) do
107
- get_method_introspection_data('GIMarshallingTests',
108
- 'Object',
109
- 'none_return')
107
+ get_method_introspection_data("GIMarshallingTests",
108
+ "Object",
109
+ "none_return")
110
110
  end
111
111
 
112
- it 'wraps the result in #post_conversion' do
113
- builder.capture_variable_name.must_equal '_v1'
114
- builder.post_conversion.
115
- must_equal ['_v2 = GIMarshallingTests::Object.wrap(_v1).tap { |it| it && it.ref }']
112
+ it "wraps the result in #post_conversion" do
113
+ _(builder.capture_variable_name).must_equal "_v1"
114
+ _(builder.post_conversion).
115
+ must_equal ["_v2 = GIMarshallingTests::Object.wrap(_v1).tap { |it| it && it.ref }"]
116
116
  end
117
117
 
118
- it 'returns the wrapped result' do
119
- builder.capture_variable_name.must_equal '_v1'
120
- builder.return_value_name.must_equal '_v2'
118
+ it "returns the wrapped result" do
119
+ _(builder.capture_variable_name).must_equal "_v1"
120
+ _(builder.return_value_name).must_equal "_v2"
121
121
  end
122
122
  end
123
123
  end
124
124
 
125
- describe 'for :strv' do
125
+ describe "for :strv" do
126
126
  let(:method_info) do
127
- get_method_introspection_data('GLib',
128
- 'KeyFile',
129
- 'get_locale_string_list')
127
+ get_method_introspection_data("GLib",
128
+ "KeyFile",
129
+ "get_locale_string_list")
130
130
  end
131
131
 
132
- it 'wraps the result in #post_conversion' do
133
- builder.capture_variable_name.must_equal '_v1'
134
- builder.post_conversion.must_equal ['_v2 = GLib::Strv.wrap(_v1)']
132
+ it "wraps the result in #post_conversion" do
133
+ _(builder.capture_variable_name).must_equal "_v1"
134
+ _(builder.post_conversion).must_equal ["_v2 = GLib::Strv.wrap(_v1)"]
135
135
  end
136
136
 
137
- it 'returns the wrapped result' do
138
- builder.capture_variable_name.must_equal '_v1'
139
- builder.return_value_name.must_equal '_v2'
137
+ it "returns the wrapped result" do
138
+ _(builder.capture_variable_name).must_equal "_v1"
139
+ _(builder.return_value_name).must_equal "_v2"
140
140
  end
141
141
  end
142
142
 
143
- describe 'for :zero_terminated' do
143
+ describe "for :zero_terminated" do
144
144
  let(:method_info) do
145
- get_method_introspection_data('GLib',
146
- 'Variant',
147
- 'dup_bytestring')
148
- end
149
- before do
150
- skip unless type_info.zero_terminated?
145
+ get_method_introspection_data("GLib",
146
+ "Variant",
147
+ "dup_bytestring")
151
148
  end
152
149
 
153
- it 'wraps the result in #post_conversion' do
154
- builder.capture_variable_name.must_equal '_v1'
155
- builder.post_conversion.must_equal ['_v2 = GirFFI::ZeroTerminated.wrap(:guint8, _v1)']
150
+ it "wraps the result in #post_conversion" do
151
+ _(builder.capture_variable_name).must_equal "_v1"
152
+ _(builder.post_conversion).must_equal ["_v2 = GirFFI::ZeroTerminated.wrap(:guint8, _v1)"]
156
153
  end
157
154
 
158
- it 'returns the wrapped result' do
159
- builder.capture_variable_name.must_equal '_v1'
160
- builder.return_value_name.must_equal '_v2'
155
+ it "returns the wrapped result" do
156
+ _(builder.capture_variable_name).must_equal "_v1"
157
+ _(builder.return_value_name).must_equal "_v2"
161
158
  end
162
159
  end
163
160
 
164
- describe 'for :byte_array' do
161
+ describe "for :byte_array" do
165
162
  let(:method_info) do
166
- get_introspection_data('GIMarshallingTests',
167
- 'bytearray_full_return')
163
+ get_introspection_data("GIMarshallingTests",
164
+ "bytearray_full_return")
168
165
  end
169
166
 
170
- it 'wraps the result in #post_conversion' do
171
- builder.capture_variable_name.must_equal '_v1'
172
- builder.post_conversion.must_equal ['_v2 = GLib::ByteArray.wrap(_v1)']
167
+ it "wraps the result in #post_conversion" do
168
+ _(builder.capture_variable_name).must_equal "_v1"
169
+ _(builder.post_conversion).must_equal ["_v2 = GLib::ByteArray.wrap(_v1)"]
173
170
  end
174
171
 
175
- it 'returns the wrapped result' do
176
- builder.capture_variable_name.must_equal '_v1'
177
- builder.return_value_name.must_equal '_v2'
172
+ it "returns the wrapped result" do
173
+ _(builder.capture_variable_name).must_equal "_v1"
174
+ _(builder.return_value_name).must_equal "_v2"
178
175
  end
179
176
  end
180
177
 
181
- describe 'for :ptr_array' do
178
+ describe "for :ptr_array" do
182
179
  let(:method_info) do
183
- get_introspection_data('GIMarshallingTests',
184
- 'gptrarray_utf8_none_return')
180
+ get_introspection_data("GIMarshallingTests",
181
+ "gptrarray_utf8_none_return")
185
182
  end
186
183
 
187
- it 'wraps the result in #post_conversion' do
188
- builder.capture_variable_name.must_equal '_v1'
189
- builder.post_conversion.must_equal ['_v2 = GLib::PtrArray.wrap(:utf8, _v1)']
184
+ it "wraps the result in #post_conversion" do
185
+ _(builder.capture_variable_name).must_equal "_v1"
186
+ _(builder.post_conversion).must_equal ["_v2 = GLib::PtrArray.wrap(:utf8, _v1)"]
190
187
  end
191
188
 
192
- it 'returns the wrapped result' do
193
- builder.capture_variable_name.must_equal '_v1'
194
- builder.return_value_name.must_equal '_v2'
189
+ it "returns the wrapped result" do
190
+ _(builder.capture_variable_name).must_equal "_v1"
191
+ _(builder.return_value_name).must_equal "_v2"
195
192
  end
196
193
  end
197
194
 
198
- describe 'for :glist' do
195
+ describe "for :glist" do
199
196
  let(:method_info) do
200
- get_introspection_data('GIMarshallingTests',
201
- 'glist_int_none_return')
197
+ get_introspection_data("GIMarshallingTests",
198
+ "glist_int_none_return")
202
199
  end
203
200
 
204
- it 'wraps the result in #post_conversion' do
205
- builder.capture_variable_name.must_equal '_v1'
206
- builder.post_conversion.must_equal ['_v2 = GLib::List.wrap(:gint32, _v1)']
201
+ it "wraps the result in #post_conversion" do
202
+ _(builder.capture_variable_name).must_equal "_v1"
203
+ _(builder.post_conversion).must_equal ["_v2 = GLib::List.wrap(:gint32, _v1)"]
207
204
  end
208
205
 
209
- it 'returns the wrapped result' do
210
- builder.capture_variable_name.must_equal '_v1'
211
- builder.return_value_name.must_equal '_v2'
206
+ it "returns the wrapped result" do
207
+ _(builder.capture_variable_name).must_equal "_v1"
208
+ _(builder.return_value_name).must_equal "_v2"
212
209
  end
213
210
  end
214
211
 
215
- describe 'for :gslist' do
212
+ describe "for :gslist" do
216
213
  let(:method_info) do
217
- get_introspection_data('GIMarshallingTests',
218
- 'gslist_int_none_return')
214
+ get_introspection_data("GIMarshallingTests",
215
+ "gslist_int_none_return")
219
216
  end
220
217
 
221
- it 'wraps the result in #post_conversion' do
222
- builder.capture_variable_name.must_equal '_v1'
223
- builder.post_conversion.must_equal ['_v2 = GLib::SList.wrap(:gint32, _v1)']
218
+ it "wraps the result in #post_conversion" do
219
+ _(builder.capture_variable_name).must_equal "_v1"
220
+ _(builder.post_conversion).must_equal ["_v2 = GLib::SList.wrap(:gint32, _v1)"]
224
221
  end
225
222
 
226
- it 'returns the wrapped result' do
227
- builder.capture_variable_name.must_equal '_v1'
228
- builder.return_value_name.must_equal '_v2'
223
+ it "returns the wrapped result" do
224
+ _(builder.capture_variable_name).must_equal "_v1"
225
+ _(builder.return_value_name).must_equal "_v2"
229
226
  end
230
227
  end
231
228
 
232
- describe 'for :ghash' do
229
+ describe "for :ghash" do
233
230
  let(:method_info) do
234
- get_introspection_data('GIMarshallingTests',
235
- 'ghashtable_int_none_return')
231
+ get_introspection_data("GIMarshallingTests",
232
+ "ghashtable_int_none_return")
236
233
  end
237
234
 
238
- it 'wraps the result in #post_conversion' do
239
- builder.capture_variable_name.must_equal '_v1'
240
- builder.post_conversion.must_equal ['_v2 = GLib::HashTable.wrap([:gint32, :gint32], _v1)']
235
+ it "wraps the result in #post_conversion" do
236
+ _(builder.capture_variable_name).must_equal "_v1"
237
+ _(builder.post_conversion).must_equal ["_v2 = GLib::HashTable.wrap([:gint32, :gint32], _v1)"]
241
238
  end
242
239
 
243
- it 'returns the wrapped result' do
244
- builder.capture_variable_name.must_equal '_v1'
245
- builder.return_value_name.must_equal '_v2'
240
+ it "returns the wrapped result" do
241
+ _(builder.capture_variable_name).must_equal "_v1"
242
+ _(builder.return_value_name).must_equal "_v2"
246
243
  end
247
244
  end
248
245
 
249
- describe 'for :array' do
246
+ describe "for :array" do
250
247
  let(:method_info) do
251
- get_introspection_data('GIMarshallingTests',
252
- 'garray_int_none_return')
248
+ get_introspection_data("GIMarshallingTests",
249
+ "garray_int_none_return")
253
250
  end
254
251
 
255
- it 'wraps the result in #post_conversion' do
256
- builder.capture_variable_name.must_equal '_v1'
257
- builder.post_conversion.must_equal ['_v2 = GLib::Array.wrap(:gint32, _v1)']
252
+ it "wraps the result in #post_conversion" do
253
+ _(builder.capture_variable_name).must_equal "_v1"
254
+ _(builder.post_conversion).must_equal ["_v2 = GLib::Array.wrap(:gint32, _v1)"]
258
255
  end
259
256
 
260
- it 'returns the wrapped result' do
261
- builder.capture_variable_name.must_equal '_v1'
262
- builder.return_value_name.must_equal '_v2'
257
+ it "returns the wrapped result" do
258
+ _(builder.capture_variable_name).must_equal "_v1"
259
+ _(builder.return_value_name).must_equal "_v2"
263
260
  end
264
261
  end
265
262
 
266
- describe 'for :error' do
263
+ describe "for :error" do
267
264
  let(:method_info) do
268
- get_introspection_data('GIMarshallingTests',
269
- 'gerror_return')
265
+ get_introspection_data("GIMarshallingTests",
266
+ "gerror_return")
270
267
  end
271
268
 
272
- it 'wraps the result in #post_conversion' do
273
- builder.capture_variable_name.must_equal '_v1'
274
- builder.post_conversion.must_equal ['_v2 = GLib::Error.wrap(_v1)']
269
+ it "wraps the result in #post_conversion" do
270
+ _(builder.capture_variable_name).must_equal "_v1"
271
+ _(builder.post_conversion).must_equal ["_v2 = GLib::Error.wrap(_v1)"]
275
272
  end
276
273
 
277
- it 'returns the wrapped result' do
278
- builder.capture_variable_name.must_equal '_v1'
279
- builder.return_value_name.must_equal '_v2'
274
+ it "returns the wrapped result" do
275
+ _(builder.capture_variable_name).must_equal "_v1"
276
+ _(builder.return_value_name).must_equal "_v2"
280
277
  end
281
278
  end
282
279
 
283
- describe 'for :c' do
284
- describe 'with fixed size' do
280
+ describe "for :c" do
281
+ describe "with fixed size" do
285
282
  let(:method_info) do
286
- get_introspection_data('GIMarshallingTests',
287
- 'array_fixed_int_return')
283
+ get_introspection_data("GIMarshallingTests",
284
+ "array_fixed_int_return")
288
285
  end
289
286
 
290
- it 'converts the result in #post_conversion' do
291
- builder.capture_variable_name.must_equal '_v1'
292
- builder.post_conversion.must_equal ['_v2 = GirFFI::SizedArray.wrap(:gint32, 4, _v1)']
287
+ it "converts the result in #post_conversion" do
288
+ _(builder.capture_variable_name).must_equal "_v1"
289
+ _(builder.post_conversion).must_equal ["_v2 = GirFFI::SizedArray.wrap(:gint32, 4, _v1)"]
293
290
  end
294
291
 
295
- it 'returns the wrapped result' do
296
- builder.capture_variable_name.must_equal '_v1'
297
- builder.return_value_name.must_equal '_v2'
292
+ it "returns the wrapped result" do
293
+ _(builder.capture_variable_name).must_equal "_v1"
294
+ _(builder.return_value_name).must_equal "_v2"
298
295
  end
299
296
  end
300
297
 
301
- describe 'with separate size parameter' do
298
+ describe "with separate size parameter" do
302
299
  let(:length_argument) { Object.new }
303
300
  let(:method_info) do
304
- get_method_introspection_data('GIMarshallingTests',
305
- 'Object',
306
- 'method_array_return')
301
+ get_method_introspection_data("GIMarshallingTests",
302
+ "Object",
303
+ "method_array_return")
307
304
  end
308
305
 
309
306
  before do
310
- allow(length_argument).to receive(:post_converted_name).and_return 'bar'
307
+ allow(length_argument).to receive(:post_converted_name).and_return "bar"
311
308
  builder.length_arg = length_argument
312
309
  end
313
310
 
314
- it 'converts the result in #post_conversion' do
315
- builder.capture_variable_name.must_equal '_v1'
316
- builder.post_conversion.must_equal ['_v2 = GirFFI::SizedArray.wrap(:gint32, bar, _v1)']
311
+ it "converts the result in #post_conversion" do
312
+ _(builder.capture_variable_name).must_equal "_v1"
313
+ _(builder.post_conversion).must_equal ["_v2 = GirFFI::SizedArray.wrap(:gint32, bar, _v1)"]
317
314
  end
318
315
 
319
- it 'returns the wrapped result' do
320
- builder.capture_variable_name.must_equal '_v1'
321
- builder.return_value_name.must_equal '_v2'
316
+ it "returns the wrapped result" do
317
+ _(builder.capture_variable_name).must_equal "_v1"
318
+ _(builder.return_value_name).must_equal "_v2"
322
319
  end
323
320
  end
324
321
  end
325
322
 
326
- describe 'for :utf8' do
327
- describe 'with no transfer' do
323
+ describe "for :utf8" do
324
+ describe "with no transfer" do
328
325
  let(:method_info) do
329
- get_introspection_data('GIMarshallingTests', 'utf8_none_return')
326
+ get_introspection_data("GIMarshallingTests", "utf8_none_return")
330
327
  end
331
328
 
332
- it 'converts the result in #post_conversion' do
333
- builder.capture_variable_name.must_equal '_v1'
334
- builder.post_conversion.must_equal ['_v2 = _v1.to_utf8']
329
+ it "converts the result in #post_conversion" do
330
+ _(builder.capture_variable_name).must_equal "_v1"
331
+ _(builder.post_conversion).must_equal ["_v2 = _v1.to_utf8"]
335
332
  end
336
333
 
337
- it 'returns the converted result' do
338
- builder.capture_variable_name.must_equal '_v1'
339
- builder.return_value_name.must_equal '_v2'
334
+ it "returns the converted result" do
335
+ _(builder.capture_variable_name).must_equal "_v1"
336
+ _(builder.return_value_name).must_equal "_v2"
340
337
  end
341
338
  end
342
339
 
343
- describe 'with full transfer' do
340
+ describe "with full transfer" do
344
341
  let(:method_info) do
345
- get_introspection_data('GIMarshallingTests', 'utf8_full_return')
342
+ get_introspection_data("GIMarshallingTests", "utf8_full_return")
346
343
  end
347
344
 
348
- it 'autoreleases and converts the result in #post_conversion' do
349
- builder.capture_variable_name.must_equal '_v1'
350
- builder.post_conversion.
351
- must_equal ['_v2 = GirFFI::AllocationHelper.free_after _v1, &:to_utf8']
345
+ it "autoreleases and converts the result in #post_conversion" do
346
+ _(builder.capture_variable_name).must_equal "_v1"
347
+ _(builder.post_conversion).
348
+ must_equal ["_v2 = GirFFI::AllocationHelper.free_after _v1, &:to_utf8"]
352
349
  end
353
350
 
354
- it 'returns the converted result' do
355
- builder.capture_variable_name.must_equal '_v1'
356
- builder.return_value_name.must_equal '_v2'
351
+ it "returns the converted result" do
352
+ _(builder.capture_variable_name).must_equal "_v1"
353
+ _(builder.return_value_name).must_equal "_v2"
357
354
  end
358
355
  end
359
356
  end
360
357
 
361
- describe 'for :void pointer' do
358
+ describe "for :void pointer" do
362
359
  let(:ownership_transfer) { :nothing }
363
360
  let(:callback_info) do
364
- get_introspection_data('GIMarshallingTests', 'CallbackIntInt')
361
+ get_introspection_data("GIMarshallingTests", "CallbackIntInt")
365
362
  end
366
363
  let(:type_info) { callback_info.args[1].argument_type }
367
364
 
368
- before do
369
- skip unless callback_info
370
- end
371
-
372
- it 'has no statements in #post_conversion' do
373
- builder.post_conversion.must_equal []
365
+ it "has no statements in #post_conversion" do
366
+ _(builder.post_conversion).must_equal []
374
367
  end
375
368
 
376
- it 'returns the result of the c function directly' do
377
- builder.capture_variable_name.must_equal '_v1'
378
- builder.return_value_name.must_equal '_v1'
369
+ it "returns the result of the c function directly" do
370
+ _(builder.capture_variable_name).must_equal "_v1"
371
+ _(builder.return_value_name).must_equal "_v1"
379
372
  end
380
373
  end
381
374
 
382
- describe 'for :void' do
375
+ describe "for :void" do
383
376
  let(:method_info) do
384
- get_method_introspection_data('Regress', 'TestObj', 'null_out')
377
+ get_method_introspection_data("Regress", "TestObj", "null_out")
385
378
  end
386
379
 
387
- it 'has no statements in #post_conversion' do
388
- builder.post_conversion.must_equal []
380
+ it "has no statements in #post_conversion" do
381
+ _(builder.post_conversion).must_equal []
389
382
  end
390
383
 
391
- it 'marks itself as irrelevant' do
392
- builder.relevant?.must_equal false
384
+ it "marks itself as irrelevant" do
385
+ _(builder.relevant?).must_equal false
393
386
  end
394
387
 
395
- it 'returns nothing' do
396
- builder.return_value_name.must_be_nil
388
+ it "returns nothing" do
389
+ _(builder.return_value_name).must_be_nil
397
390
  end
398
391
  end
399
392
 
400
- describe 'for a closure argument' do
393
+ describe "for a closure argument" do
401
394
  let(:ownership_transfer) { :nothing }
402
395
  let(:callback_info) do
403
- get_introspection_data('Regress', 'TestCallbackUserData')
396
+ get_introspection_data("Regress", "TestCallbackUserData")
404
397
  end
405
398
  let(:type_info) { callback_info.args[0].argument_type }
406
399
 
@@ -408,33 +401,33 @@ describe GirFFI::Builders::ReturnValueBuilder do
408
401
  builder.mark_as_user_data :dummy
409
402
  end
410
403
 
411
- it 'fetches the stored object in #post_conversion' do
412
- builder.capture_variable_name.must_equal '_v1'
413
- builder.post_conversion.must_equal ['_v2 = GirFFI::ArgHelper::OBJECT_STORE.fetch(_v1)']
404
+ it "fetches the stored object in #post_conversion" do
405
+ _(builder.capture_variable_name).must_equal "_v1"
406
+ _(builder.post_conversion).must_equal ["_v2 = GirFFI::ArgHelper::OBJECT_STORE.fetch(_v1)"]
414
407
  end
415
408
 
416
- it 'returns the stored object' do
417
- builder.capture_variable_name.must_equal '_v1'
418
- builder.return_value_name.must_equal '_v2'
409
+ it "returns the stored object" do
410
+ _(builder.capture_variable_name).must_equal "_v1"
411
+ _(builder.return_value_name).must_equal "_v2"
419
412
  end
420
413
  end
421
414
 
422
- describe 'for a skipped return value' do
415
+ describe "for a skipped return value" do
423
416
  let(:method_info) do
424
- get_method_introspection_data('Regress', 'TestObj', 'skip_return_val')
417
+ get_method_introspection_data("Regress", "TestObj", "skip_return_val")
425
418
  end
426
419
  let(:return_type_info) { GirFFI::ReturnValueInfo.new(type_info, :nothing, true) }
427
420
 
428
- it 'has no statements in #post_conversion' do
429
- builder.post_conversion.must_equal []
421
+ it "has no statements in #post_conversion" do
422
+ _(builder.post_conversion).must_equal []
430
423
  end
431
424
 
432
- it 'marks itself as irrelevant' do
433
- builder.relevant?.must_equal false
425
+ it "marks itself as irrelevant" do
426
+ _(builder.relevant?).must_equal false
434
427
  end
435
428
 
436
- it 'returns nothing' do
437
- builder.return_value_name.must_be_nil
429
+ it "returns nothing" do
430
+ _(builder.return_value_name).must_be_nil
438
431
  end
439
432
  end
440
433
  end