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,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
- require 'gir_ffi'
5
+ require "gir_ffi"
6
6
 
7
7
  GirFFI.setup :GIMarshallingTests
8
8
 
@@ -20,205 +20,203 @@ describe GIMarshallingTests do
20
20
  derived_klass.new
21
21
  end
22
22
 
23
- describe 'GIMarshallingTests::BoxedStruct' do
23
+ describe "GIMarshallingTests::BoxedStruct" do
24
24
  let(:instance) { GIMarshallingTests::BoxedStruct.new }
25
25
 
26
- it 'has a writable field long_' do
26
+ it "has a writable field long_" do
27
27
  instance.long_ = 42
28
28
  assert_equal 42, instance.long_
29
29
  instance.long_ = 43
30
30
  assert_equal 43, instance.long_
31
31
  end
32
32
 
33
- it 'has a writable field string_' do
34
- skip unless get_field_introspection_data('GIMarshallingTests', 'BoxedStruct', 'string_')
35
- instance.string_ = 'foobar'
36
- instance.string_.must_equal 'foobar'
33
+ it "has a writable field string_" do
34
+ instance.string_ = "foobar"
35
+ _(instance.string_).must_equal "foobar"
37
36
  end
38
37
 
39
- it 'has a writable field g_strv' do
40
- instance.g_strv.must_be :==, []
38
+ it "has a writable field g_strv" do
39
+ _(instance.g_strv).must_be :==, []
41
40
  instance.g_strv = %w(foo bar)
42
- instance.g_strv.must_be :==, %w(foo bar)
41
+ _(instance.g_strv).must_be :==, %w(foo bar)
43
42
  end
44
43
 
45
- it 'creates an instance using #new' do
44
+ it "creates an instance using #new" do
46
45
  bx = GIMarshallingTests::BoxedStruct.new
47
46
  assert_instance_of GIMarshallingTests::BoxedStruct, bx
48
- bx.struct.must_be :owned?
47
+ _(bx.struct).must_be :owned?
49
48
  end
50
49
 
51
- it 'has a working method #inv' do
50
+ it "has a working method #inv" do
52
51
  instance.long_ = 42
53
52
  instance.inv
54
53
  pass
55
54
  end
56
55
 
57
- it 'has a working function #inout' do
56
+ it "has a working function #inout" do
58
57
  bx = GIMarshallingTests::BoxedStruct.new
59
58
  bx.long_ = 42
60
- bx.struct.must_be :owned?
59
+ _(bx.struct).must_be :owned?
61
60
 
62
61
  res = GIMarshallingTests::BoxedStruct.inout bx
63
- bx.struct.must_be :owned?
64
- res.struct.must_be :owned?
62
+ _(bx.struct).must_be :owned?
63
+ _(res.struct).must_be :owned?
65
64
 
66
65
  assert_equal 0, res.long_
67
66
  end
68
67
 
69
- it 'has a working function #out' do
68
+ it "has a working function #out" do
70
69
  res = GIMarshallingTests::BoxedStruct.out
71
- res.struct.must_be :owned?
70
+ _(res.struct).must_be :owned?
72
71
  assert_equal 42, res.long_
73
72
  end
74
73
 
75
- it 'has a working function #returnv' do
74
+ it "has a working function #returnv" do
76
75
  res = GIMarshallingTests::BoxedStruct.returnv
77
- res.struct.must_be :owned?
76
+ _(res.struct).must_be :owned?
78
77
  assert_equal 42, res.long_
79
- res.g_strv.must_be :==, %w(0 1 2)
78
+ _(res.g_strv).must_be :==, %w(0 1 2)
80
79
  end
81
80
  end
82
81
 
83
- it 'has the constant CONSTANT_GERROR_CODE' do
82
+ it "has the constant CONSTANT_GERROR_CODE" do
84
83
  assert_equal 5, GIMarshallingTests::CONSTANT_GERROR_CODE
85
84
  end
86
85
 
87
- it 'has the constant CONSTANT_GERROR_DEBUG_MESSAGE' do
88
- GIMarshallingTests::CONSTANT_GERROR_DEBUG_MESSAGE.must_equal(
89
- 'we got an error, life is shit')
86
+ it "has the constant CONSTANT_GERROR_DEBUG_MESSAGE" do
87
+ _(GIMarshallingTests::CONSTANT_GERROR_DEBUG_MESSAGE).must_equal(
88
+ "we got an error, life is shit")
90
89
  end
91
90
 
92
- it 'has the constant CONSTANT_GERROR_DOMAIN' do
93
- assert_equal 'gi-marshalling-tests-gerror-domain',
91
+ it "has the constant CONSTANT_GERROR_DOMAIN" do
92
+ assert_equal "gi-marshalling-tests-gerror-domain",
94
93
  GIMarshallingTests::CONSTANT_GERROR_DOMAIN
95
94
  end
96
95
 
97
- it 'has the constant CONSTANT_GERROR_MESSAGE' do
98
- assert_equal 'gi-marshalling-tests-gerror-message',
96
+ it "has the constant CONSTANT_GERROR_MESSAGE" do
97
+ assert_equal "gi-marshalling-tests-gerror-message",
99
98
  GIMarshallingTests::CONSTANT_GERROR_MESSAGE
100
99
  end
101
100
 
102
- it 'has the constant CONSTANT_NUMBER' do
101
+ it "has the constant CONSTANT_NUMBER" do
103
102
  assert_equal 42, GIMarshallingTests::CONSTANT_NUMBER
104
103
  end
105
104
 
106
- it 'has the constant CONSTANT_UTF8' do
107
- assert_equal 'const ♥ utf8', GIMarshallingTests::CONSTANT_UTF8
105
+ it "has the constant CONSTANT_UTF8" do
106
+ assert_equal "const ♥ utf8", GIMarshallingTests::CONSTANT_UTF8
108
107
  end
109
108
 
110
- describe 'GIMarshallingTests::Enum' do
111
- it 'has the member :value1' do
109
+ describe "GIMarshallingTests::Enum" do
110
+ it "has the member :value1" do
112
111
  assert_equal 0, GIMarshallingTests::Enum[:value1]
113
112
  end
114
113
 
115
- it 'has the member :value2' do
114
+ it "has the member :value2" do
116
115
  assert_equal 1, GIMarshallingTests::Enum[:value2]
117
116
  end
118
117
 
119
- it 'has the member :value3' do
118
+ it "has the member :value3" do
120
119
  assert_equal 42, GIMarshallingTests::Enum[:value3]
121
120
  end
122
121
  end
123
122
 
124
- describe 'GIMarshallingTests::Flags' do
125
- it 'has the member :value1' do
123
+ describe "GIMarshallingTests::Flags" do
124
+ it "has the member :value1" do
126
125
  assert_equal 1, GIMarshallingTests::Flags[:value1]
127
126
  end
128
127
 
129
- it 'has the member :value2' do
128
+ it "has the member :value2" do
130
129
  assert_equal 2, GIMarshallingTests::Flags[:value2]
131
130
  end
132
131
 
133
- it 'has the member :value3' do
132
+ it "has the member :value3" do
134
133
  assert_equal 4, GIMarshallingTests::Flags[:value3]
135
134
  end
136
135
 
137
- it 'has the member :mask' do
136
+ it "has the member :mask" do
138
137
  assert_equal 3, GIMarshallingTests::Flags[:mask]
139
138
  end
140
139
 
141
- it 'has the member :mask2' do
140
+ it "has the member :mask2" do
142
141
  assert_equal 3, GIMarshallingTests::Flags[:mask2]
143
142
  end
144
143
 
145
- it 'has a working function #in' do
144
+ it "has a working function #in" do
146
145
  GIMarshallingTests::Flags.in value2: true
147
146
  end
148
147
 
149
- it 'has a working function #in_zero' do
148
+ it "has a working function #in_zero" do
150
149
  GIMarshallingTests::Flags.in_zero 0
151
150
  end
152
151
 
153
- it 'has a working function #inout' do
152
+ it "has a working function #inout" do
154
153
  result = GIMarshallingTests::Flags.inout value2: true
155
- result.must_equal(value1: true)
154
+ _(result).must_equal(value1: true)
156
155
  end
157
156
 
158
- it 'has a working function #out' do
157
+ it "has a working function #out" do
159
158
  result = GIMarshallingTests::Flags.out
160
- result.must_equal(value2: true)
159
+ _(result).must_equal(value2: true)
161
160
  end
162
161
 
163
- it 'has a working function #returnv' do
162
+ it "has a working function #returnv" do
164
163
  result = GIMarshallingTests::Flags.returnv
165
- result.must_equal(value2: true)
164
+ _(result).must_equal(value2: true)
166
165
  end
167
166
  end
168
167
 
169
- describe 'GIMarshallingTests::GEnum' do
170
- it 'has the member :value1' do
168
+ describe "GIMarshallingTests::GEnum" do
169
+ it "has the member :value1" do
171
170
  assert_equal 0, GIMarshallingTests::GEnum[:value1]
172
171
  end
173
172
 
174
- it 'has the member :value2' do
173
+ it "has the member :value2" do
175
174
  assert_equal 1, GIMarshallingTests::GEnum[:value2]
176
175
  end
177
176
 
178
- it 'has the member :value3' do
177
+ it "has the member :value3" do
179
178
  assert_equal 42, GIMarshallingTests::GEnum[:value3]
180
179
  end
181
180
 
182
- it 'has a working function #in' do
181
+ it "has a working function #in" do
183
182
  GIMarshallingTests::GEnum.in :value3
184
183
  end
185
184
 
186
- it 'has a working function #inout' do
185
+ it "has a working function #inout" do
187
186
  result = GIMarshallingTests::GEnum.inout :value3
188
- result.must_equal :value1
187
+ _(result).must_equal :value1
189
188
  end
190
189
 
191
- it 'has a working function #out' do
190
+ it "has a working function #out" do
192
191
  result = GIMarshallingTests::GEnum.out
193
- result.must_equal :value3
192
+ _(result).must_equal :value3
194
193
  end
195
194
 
196
- it 'has a working function #returnv' do
195
+ it "has a working function #returnv" do
197
196
  result = GIMarshallingTests::GEnum.returnv
198
- result.must_equal :value3
197
+ _(result).must_equal :value3
199
198
  end
200
199
  end
201
200
 
202
- describe 'GIMarshallingTests::Interface' do
203
- it 'has a working method #test_int8_in' do
201
+ describe "GIMarshallingTests::Interface" do
202
+ it "has a working method #test_int8_in" do
204
203
  derived_klass.class_eval { include GIMarshallingTests::Interface }
205
204
  derived_instance = make_derived_instance do |info|
206
205
  info.install_vfunc_implementation :test_int8_in, proc { |obj, in_| obj.int = in_ }
207
206
  end
208
207
  derived_instance.test_int8_in 8
209
- derived_instance.int.must_equal 8
208
+ _(derived_instance.int).must_equal 8
210
209
  end
211
210
  end
212
211
 
213
- describe 'GIMarshallingTests::Interface2' do
214
- it 'must be tested for clashes with Interface' do
215
- skip 'Needs more work to determine desired behavior'
212
+ describe "GIMarshallingTests::Interface2" do
213
+ it "must be tested for clashes with Interface" do
214
+ skip "Needs more work to determine desired behavior"
216
215
  end
217
216
  end
218
217
 
219
- describe 'GIMarshallingTests::Interface3' do
220
- it 'has a working method #test_variant_array_in' do
221
- skip unless get_introspection_data 'GIMarshallingTests', 'Interface3'
218
+ describe "GIMarshallingTests::Interface3" do
219
+ it "has a working method #test_variant_array_in" do
222
220
  derived_klass.class_eval { include GIMarshallingTests::Interface3 }
223
221
  derived_instance = make_derived_instance do |info|
224
222
  info.install_vfunc_implementation :test_variant_array_in, proc { |obj, in_|
@@ -226,141 +224,134 @@ describe GIMarshallingTests do
226
224
  }
227
225
  end
228
226
  derived_instance.test_variant_array_in [GLib::Variant.new_byte(42)]
229
- derived_instance.int.must_equal 42
227
+ _(derived_instance.int).must_equal 42
230
228
  end
231
229
  end
232
230
 
233
- describe 'GIMarshallingTests::InterfaceImpl' do
234
- before do
235
- skip unless get_introspection_data 'GIMarshallingTests', 'InterfaceImpl'
236
- end
237
-
238
- it 'has a working method #get_as_interface' do
231
+ describe "GIMarshallingTests::InterfaceImpl" do
232
+ it "has a working method #get_as_interface" do
239
233
  obj = GIMarshallingTests::InterfaceImpl.new []
240
234
  result = obj.get_as_interface
241
- result.must_be_kind_of GIMarshallingTests::Interface
235
+ _(result).must_be_kind_of GIMarshallingTests::Interface
242
236
  end
243
237
  end
244
238
 
245
- describe 'GIMarshallingTests::NestedStruct' do
239
+ describe "GIMarshallingTests::NestedStruct" do
246
240
  let(:instance) { GIMarshallingTests::NestedStruct.new }
247
- it 'has a writable field simple_struct' do
241
+ it "has a writable field simple_struct" do
248
242
  assert_instance_of GIMarshallingTests::SimpleStruct,
249
243
  instance.simple_struct
250
244
  new_struct = GIMarshallingTests::SimpleStruct.new
251
245
  new_struct.int8 = 42
252
246
  instance.simple_struct = new_struct
253
- instance.simple_struct.int8.must_equal 42
247
+ _(instance.simple_struct.int8).must_equal 42
254
248
  end
255
249
  end
256
250
 
257
- describe 'GIMarshallingTests::NoTypeFlags' do
258
- it 'has the member :value1' do
251
+ describe "GIMarshallingTests::NoTypeFlags" do
252
+ it "has the member :value1" do
259
253
  assert_equal 1, GIMarshallingTests::NoTypeFlags[:value1]
260
254
  end
261
- it 'has the member :value2' do
255
+ it "has the member :value2" do
262
256
  assert_equal 2, GIMarshallingTests::NoTypeFlags[:value2]
263
257
  end
264
- it 'has the member :value3' do
258
+ it "has the member :value3" do
265
259
  assert_equal 4, GIMarshallingTests::NoTypeFlags[:value3]
266
260
  end
267
- it 'has the member :mask' do
261
+ it "has the member :mask" do
268
262
  assert_equal 3, GIMarshallingTests::NoTypeFlags[:mask]
269
263
  end
270
- it 'has the member :mask2' do
264
+ it "has the member :mask2" do
271
265
  assert_equal 3, GIMarshallingTests::NoTypeFlags[:mask2]
272
266
  end
273
267
  end
274
268
 
275
- describe 'GIMarshallingTests::NotSimpleStruct' do
269
+ describe "GIMarshallingTests::NotSimpleStruct" do
276
270
  let(:instance) { GIMarshallingTests::NotSimpleStruct.new }
277
271
 
278
- it 'has a writable field pointer' do
279
- instance.pointer.must_be_nil
272
+ it "has a writable field pointer" do
273
+ _(instance.pointer).must_be_nil
280
274
  nested = GIMarshallingTests::NestedStruct.new
281
275
  nested.simple_struct.int8 = 23
282
276
  instance.pointer = nested
283
- instance.pointer.simple_struct.int8.must_equal 23
277
+ _(instance.pointer.simple_struct.int8).must_equal 23
284
278
  end
285
279
  end
286
280
 
287
- it 'has the constant OVERRIDES_CONSTANT' do
281
+ it "has the constant OVERRIDES_CONSTANT" do
288
282
  assert_equal 42, GIMarshallingTests::OVERRIDES_CONSTANT
289
283
  end
290
284
 
291
- describe 'GIMarshallingTests::Object' do
292
- it 'creates an instance using #new' do
285
+ describe "GIMarshallingTests::Object" do
286
+ it "creates an instance using #new" do
293
287
  ob = GIMarshallingTests::Object.new 42
294
288
  assert_instance_of GIMarshallingTests::Object, ob
295
289
  assert_equal 42, ob.int
296
290
  end
297
291
 
298
- it 'fails to create an instance using #new_fail' do
299
- skip unless get_method_introspection_data('GIMarshallingTests', 'Object', 'new_fail')
300
- proc { GIMarshallingTests::Object.new_fail 42 }.must_raise GirFFI::GLibError
292
+ it "fails to create an instance using #new_fail" do
293
+ _(proc { GIMarshallingTests::Object.new_fail 42 }).must_raise GirFFI::GLibError
301
294
  end
302
295
 
303
- it 'has a working function #full_inout' do
296
+ it "has a working function #full_inout" do
304
297
  ob = GIMarshallingTests::Object.new 42
305
- object_ref_count(ob).must_equal 1
298
+ _(object_ref_count(ob)).must_equal 1
306
299
 
307
300
  res = GIMarshallingTests::Object.full_inout ob
308
301
 
309
- object_ref_count(ob).must_equal 1
310
- object_ref_count(res).must_equal 1
302
+ _(object_ref_count(ob)).must_equal 1
303
+ _(object_ref_count(res)).must_equal 1
311
304
 
312
- res.must_be_instance_of GIMarshallingTests::Object
313
- res.int.must_equal 0
305
+ _(res).must_be_instance_of GIMarshallingTests::Object
306
+ _(res.int).must_equal 0
314
307
  end
315
308
 
316
- it 'has a working function #full_out' do
309
+ it "has a working function #full_out" do
317
310
  res = GIMarshallingTests::Object.full_out
318
- res.must_be_instance_of GIMarshallingTests::Object
319
- object_ref_count(res).must_equal 1
311
+ _(res).must_be_instance_of GIMarshallingTests::Object
312
+ _(object_ref_count(res)).must_equal 1
320
313
  end
321
314
 
322
- it 'has a working function #full_return' do
315
+ it "has a working function #full_return" do
323
316
  res = GIMarshallingTests::Object.full_return
324
- res.must_be_instance_of GIMarshallingTests::Object
325
- object_ref_count(res).must_equal 1
317
+ _(res).must_be_instance_of GIMarshallingTests::Object
318
+ _(object_ref_count(res)).must_equal 1
326
319
  end
327
320
 
328
- it 'has a working function #none_inout' do
321
+ it "has a working function #none_inout" do
329
322
  ob = GIMarshallingTests::Object.new 42
330
- object_ref_count(ob).must_equal 1
323
+ _(object_ref_count(ob)).must_equal 1
331
324
 
332
325
  res = GIMarshallingTests::Object.none_inout ob
333
326
 
334
- object_ref_count(ob).must_equal 1
335
- object_ref_count(res).must_equal 2
327
+ _(object_ref_count(ob)).must_equal 1
328
+ _(object_ref_count(res)).must_equal 2
336
329
 
337
- res.must_be_instance_of GIMarshallingTests::Object
338
- ob.int.must_equal 42
339
- res.int.must_equal 0
330
+ _(res).must_be_instance_of GIMarshallingTests::Object
331
+ _(ob.int).must_equal 42
332
+ _(res.int).must_equal 0
340
333
  end
341
334
 
342
- it 'has a working function #none_out' do
335
+ it "has a working function #none_out" do
343
336
  res = GIMarshallingTests::Object.none_out
344
- res.must_be_instance_of GIMarshallingTests::Object
345
- object_ref_count(res).must_equal 2
337
+ _(res).must_be_instance_of GIMarshallingTests::Object
338
+ _(object_ref_count(res)).must_equal 2
346
339
  end
347
340
 
348
- it 'has a working function #none_return' do
341
+ it "has a working function #none_return" do
349
342
  res = GIMarshallingTests::Object.none_return
350
- res.must_be_instance_of GIMarshallingTests::Object
351
- object_ref_count(res).must_equal 2
343
+ _(res).must_be_instance_of GIMarshallingTests::Object
344
+ _(object_ref_count(res)).must_equal 2
352
345
  end
353
346
 
354
- it 'has a working function #static_method' do
347
+ it "has a working function #static_method" do
355
348
  GIMarshallingTests::Object.static_method
356
349
  pass
357
350
  end
358
351
 
359
352
  let(:instance) { GIMarshallingTests::Object.new 42 }
360
353
 
361
- it 'has a working method #call_vfunc_with_callback' do
362
- skip unless get_method_introspection_data('GIMarshallingTests', 'Object',
363
- 'call_vfunc_with_callback')
354
+ it "has a working method #call_vfunc_with_callback" do
364
355
  cb = nil
365
356
  user_data = nil
366
357
  result = nil
@@ -374,20 +365,18 @@ describe GIMarshallingTests do
374
365
  end
375
366
  derived_instance.call_vfunc_with_callback
376
367
 
377
- user_data.must_equal 0xdeadbeef
368
+ _(user_data).must_equal 0xdeadbeef
378
369
  # TODO: Change implementation of CallbackBase so that this becomes an
379
370
  # instance of GIMarshallingTests::CallbackIntInt
380
- cb.must_be_instance_of FFI::Function
381
- result.must_equal 42
371
+ _(cb).must_be_instance_of FFI::Function
372
+ _(result).must_equal 42
382
373
  end
383
374
 
384
- it 'has a working method #full_in' do
385
- skip 'This function is defined in the header but not implemented'
375
+ it "has a working method #full_in" do
376
+ skip "This function is defined in the header but not implemented"
386
377
  end
387
378
 
388
- it 'has a working method #get_ref_info_for_vfunc_in_object_transfer_full' do
389
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
390
- 'vfunc_in_object_transfer_full')
379
+ it "has a working method #get_ref_info_for_vfunc_in_object_transfer_full" do
391
380
  obj = nil
392
381
  derived_instance = make_derived_instance do |info|
393
382
  info.install_vfunc_implementation :vfunc_in_object_transfer_full, proc { |_this, object|
@@ -396,13 +385,11 @@ describe GIMarshallingTests do
396
385
  end
397
386
  result = derived_instance.
398
387
  get_ref_info_for_vfunc_in_object_transfer_full GIMarshallingTests::Object.gtype
399
- result.must_equal [1, false]
400
- obj.must_be_instance_of GIMarshallingTests::Object
388
+ _(result).must_equal [1, false]
389
+ _(obj).must_be_instance_of GIMarshallingTests::Object
401
390
  end
402
391
 
403
- it 'has a working method #get_ref_info_for_vfunc_in_object_transfer_none' do
404
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
405
- 'vfunc_in_object_transfer_none')
392
+ it "has a working method #get_ref_info_for_vfunc_in_object_transfer_none" do
406
393
  obj = nil
407
394
  derived_instance = make_derived_instance do |info|
408
395
  info.install_vfunc_implementation :vfunc_in_object_transfer_none, proc { |_this, object|
@@ -411,14 +398,12 @@ describe GIMarshallingTests do
411
398
  end
412
399
  result = derived_instance.
413
400
  get_ref_info_for_vfunc_in_object_transfer_none GIMarshallingTests::Object.gtype
414
- object_ref_count(obj).must_be :>, 0
415
- result.must_equal [2, false]
416
- obj.must_be_instance_of GIMarshallingTests::Object
401
+ _(object_ref_count(obj)).must_be :>, 0
402
+ _(result).must_equal [2, false]
403
+ _(obj).must_be_instance_of GIMarshallingTests::Object
417
404
  end
418
405
 
419
- it 'has a working method #get_ref_info_for_vfunc_out_object_transfer_full' do
420
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
421
- 'vfunc_out_object_transfer_full')
406
+ it "has a working method #get_ref_info_for_vfunc_out_object_transfer_full" do
422
407
  obj = nil
423
408
  derived_instance = make_derived_instance do |info|
424
409
  info.install_vfunc_implementation :vfunc_out_object_transfer_full, proc { |_obj|
@@ -426,162 +411,145 @@ describe GIMarshallingTests do
426
411
  }
427
412
  end
428
413
  result = derived_instance.get_ref_info_for_vfunc_out_object_transfer_full
429
- object_ref_count(obj).must_be :>, 0
414
+ _(object_ref_count(obj)).must_be :>, 0
430
415
  # TODO: Check desired result
431
- result.must_equal [2, false]
416
+ _(result).must_equal [2, false]
432
417
  end
433
418
 
434
- it 'has a working method #get_ref_info_for_vfunc_out_object_transfer_none' do
435
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
436
- 'vfunc_out_object_transfer_none')
419
+ it "has a working method #get_ref_info_for_vfunc_out_object_transfer_none" do
437
420
  derived_instance = make_derived_instance do |info|
438
421
  info.install_vfunc_implementation :vfunc_out_object_transfer_none, proc { |_obj|
439
422
  GIMarshallingTests::Object.new 42
440
423
  }
441
424
  end
442
425
  result = derived_instance.get_ref_info_for_vfunc_out_object_transfer_none
443
- result.must_equal [1, false]
426
+ _(result).must_equal [1, false]
444
427
  end
445
428
 
446
- it 'has a working method #get_ref_info_for_vfunc_return_object_transfer_full' do
447
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
448
- 'vfunc_return_object_transfer_full')
429
+ it "has a working method #get_ref_info_for_vfunc_return_object_transfer_full" do
449
430
  derived_instance = make_derived_instance do |info|
450
431
  info.install_vfunc_implementation :vfunc_return_object_transfer_full, proc { |_obj|
451
432
  GIMarshallingTests::Object.new 42
452
433
  }
453
434
  end
454
435
  result = derived_instance.get_ref_info_for_vfunc_return_object_transfer_full
455
- result.must_equal [2, false]
436
+ _(result).must_equal [2, false]
456
437
  end
457
438
 
458
- it 'has a working method #get_ref_info_for_vfunc_return_object_transfer_none' do
459
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
460
- 'vfunc_return_object_transfer_none')
439
+ it "has a working method #get_ref_info_for_vfunc_return_object_transfer_none" do
461
440
  derived_instance = make_derived_instance do |info|
462
441
  info.install_vfunc_implementation :vfunc_return_object_transfer_none, proc { |_obj|
463
442
  GIMarshallingTests::Object.new 42
464
443
  }
465
444
  end
466
445
  result = derived_instance.get_ref_info_for_vfunc_return_object_transfer_none
467
- result.must_equal [1, false]
446
+ _(result).must_equal [1, false]
468
447
  end
469
448
 
470
- it 'has a working method #int8_in' do
449
+ it "has a working method #int8_in" do
471
450
  derived_instance = make_derived_instance do |info|
472
451
  info.install_vfunc_implementation :method_int8_in, proc { |obj, in_| obj.int = in_ }
473
452
  end
474
453
  derived_instance.int8_in 23
475
- derived_instance.int.must_equal 23
454
+ _(derived_instance.int).must_equal 23
476
455
  end
477
456
 
478
- it 'has a working method #int8_out' do
479
- # GLib minor version and GObjectIntrospection minor version should be in sync
480
- skip 'Introspection data is not generated correctly' if GLib::MINOR_VERSION < 42
481
-
457
+ it "has a working method #int8_out" do
482
458
  derived_instance = make_derived_instance do |info|
483
459
  info.install_vfunc_implementation :method_int8_out, proc { |_obj| 42 }
484
460
  end
485
461
 
486
- derived_instance.int8_out.must_equal 42
462
+ _(derived_instance.int8_out).must_equal 42
487
463
  end
488
464
 
489
- it 'has a working method #method' do
465
+ it "has a working method #method" do
490
466
  instance.method
491
467
  pass
492
468
  end
493
469
 
494
- it 'has a working method #method_array_in' do
470
+ it "has a working method #method_array_in" do
495
471
  instance.method_array_in [-1, 0, 1, 2]
496
472
  pass
497
473
  end
498
474
 
499
- it 'has a working method #method_array_inout' do
475
+ it "has a working method #method_array_inout" do
500
476
  res = instance.method_array_inout [-1, 0, 1, 2]
501
- res.must_be :==, [-2, -1, 0, 1, 2]
477
+ _(res).must_be :==, [-2, -1, 0, 1, 2]
502
478
  end
503
479
 
504
- it 'has a working method #method_array_out' do
480
+ it "has a working method #method_array_out" do
505
481
  res = instance.method_array_out
506
- res.must_be :==, [-1, 0, 1, 2]
482
+ _(res).must_be :==, [-1, 0, 1, 2]
507
483
  end
508
484
 
509
- it 'has a working method #method_array_return' do
485
+ it "has a working method #method_array_return" do
510
486
  res = instance.method_array_return
511
- res.must_be :==, [-1, 0, 1, 2]
487
+ _(res).must_be :==, [-1, 0, 1, 2]
512
488
  end
513
489
 
514
- it 'has a working method #method_int8_arg_and_out_callee' do
515
- skip unless get_method_introspection_data('GIMarshallingTests', 'Object',
516
- 'method_int8_arg_and_out_callee')
490
+ it "has a working method #method_int8_arg_and_out_callee" do
517
491
  derived_instance = make_derived_instance do |info|
518
492
  info.install_vfunc_implementation :method_int8_arg_and_out_callee, proc { |_obj, arg|
519
493
  2 * arg
520
494
  }
521
495
  end
522
496
  result = derived_instance.method_int8_arg_and_out_callee 32
523
- result.must_equal 64
497
+ _(result).must_equal 64
524
498
  end
525
499
 
526
- it 'has a working method #method_int8_arg_and_out_caller' do
527
- skip unless get_method_introspection_data('GIMarshallingTests', 'Object',
528
- 'method_int8_arg_and_out_caller')
500
+ it "has a working method #method_int8_arg_and_out_caller" do
529
501
  derived_instance = make_derived_instance do |info|
530
502
  info.install_vfunc_implementation :method_int8_arg_and_out_caller, proc { |_obj, arg|
531
503
  2 * arg
532
504
  }
533
505
  end
534
506
  result = derived_instance.method_int8_arg_and_out_caller 32
535
- result.must_equal 64
507
+ _(result).must_equal 64
536
508
  end
537
509
 
538
- it 'has a working method #method_int8_in' do
510
+ it "has a working method #method_int8_in" do
539
511
  derived_instance = make_derived_instance do |info|
540
512
  info.install_vfunc_implementation :method_int8_in, proc { |obj, in_| obj.int = in_ }
541
513
  end
542
514
  derived_instance.method_int8_in 108
543
- derived_instance.int.must_equal 108
515
+ _(derived_instance.int).must_equal 108
544
516
  end
545
517
 
546
- it 'has a working method #method_int8_out' do
518
+ it "has a working method #method_int8_out" do
547
519
  derived_instance = make_derived_instance do |info|
548
520
  info.install_vfunc_implementation :method_int8_out, proc { |_obj| 42 }
549
521
  end
550
- derived_instance.method_int8_out.must_equal 42
522
+ _(derived_instance.method_int8_out).must_equal 42
551
523
  end
552
524
 
553
- it 'has a working method #method_str_arg_out_ret' do
554
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
555
- 'method_str_arg_out_ret')
525
+ it "has a working method #method_str_arg_out_ret" do
556
526
  derived_instance = make_derived_instance do |info|
557
527
  info.install_vfunc_implementation :method_str_arg_out_ret, proc { |_obj, arg| [arg, 42] }
558
528
  end
559
- derived_instance.method_str_arg_out_ret('foo').must_equal ['foo', 42]
529
+ _(derived_instance.method_str_arg_out_ret("foo")).must_equal ["foo", 42]
560
530
  end
561
531
 
562
- it 'has a working method #method_variant_array_in' do
563
- skip 'This function is defined in the header but not implemented'
532
+ it "has a working method #method_variant_array_in" do
533
+ skip "This function is defined in the header but not implemented"
564
534
  end
565
535
 
566
- it 'has a working method #method_with_default_implementation' do
536
+ it "has a working method #method_with_default_implementation" do
567
537
  instance.method_with_default_implementation 104
568
538
  assert_equal 104, instance.int
569
539
  end
570
540
 
571
- it 'has a working method #none_in' do
541
+ it "has a working method #none_in" do
572
542
  instance.none_in
573
543
  pass
574
544
  end
575
545
 
576
- it 'has a working method #overridden_method' do
577
- instance.set_property('int', 0)
546
+ it "has a working method #overridden_method" do
547
+ instance.set_property("int", 0)
578
548
  instance.overridden_method
579
549
  pass
580
550
  end
581
551
 
582
- it 'has a working method #vfunc_array_out_parameter' do
583
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
584
- 'vfunc_array_out_parameter')
552
+ it "has a working method #vfunc_array_out_parameter" do
585
553
  derived_instance = make_derived_instance do |info|
586
554
  info.install_vfunc_implementation :vfunc_array_out_parameter, proc { |_obj|
587
555
  [1.1, 2.2, 3.3]
@@ -589,113 +557,104 @@ describe GIMarshallingTests do
589
557
  end
590
558
  result = derived_instance.vfunc_array_out_parameter
591
559
  arr = result.to_a
592
- arr.length.must_equal 3
593
- arr[0].must_be_close_to 1.1
594
- arr[1].must_be_close_to 2.2
595
- arr[2].must_be_close_to 3.3
560
+ _(arr.length).must_equal 3
561
+ _(arr[0]).must_be_close_to 1.1
562
+ _(arr[1]).must_be_close_to 2.2
563
+ _(arr[2]).must_be_close_to 3.3
596
564
  end
597
565
 
598
- it 'has a working method #vfunc_caller_allocated_out_parameter' do
599
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
600
- 'vfunc_caller_allocated_out_parameter')
566
+ it "has a working method #vfunc_caller_allocated_out_parameter" do
601
567
  derived_instance = make_derived_instance do |info|
602
568
  info.install_vfunc_implementation :vfunc_caller_allocated_out_parameter, proc { |_obj|
603
- 'Hello!'
569
+ "Hello!"
604
570
  }
605
571
  end
606
572
  result = derived_instance.vfunc_caller_allocated_out_parameter
607
- result.must_equal 'Hello!'
573
+ _(result).must_equal "Hello!"
608
574
  end
609
575
 
610
- it 'has a working method #vfunc_meth_with_error' do
576
+ it "has a working method #vfunc_meth_with_error" do
611
577
  derived_instance = make_derived_instance do |info|
612
578
  info.install_vfunc_implementation :vfunc_meth_with_err, proc { |_object, x|
613
- raise 'This is not the answer!' unless x == 42
579
+ raise "This is not the answer!" unless x == 42
614
580
 
615
581
  true
616
582
  }
617
583
  end
618
584
  result = derived_instance.vfunc_meth_with_error 42
619
- result.must_equal true
585
+ _(result).must_equal true
620
586
 
621
- err = proc { derived_instance.vfunc_meth_with_error(21) }.
587
+ err = _(proc { derived_instance.vfunc_meth_with_error(21) }).
622
588
  must_raise GirFFI::GLibError
623
- err.message.must_equal 'This is not the answer!'
624
- err.domain.must_equal 'gir_ffi'
625
- err.code.must_equal 0
589
+ _(err.message).must_equal "This is not the answer!"
590
+ _(err.domain).must_equal "gir_ffi"
591
+ _(err.code).must_equal 0
626
592
  end
627
593
 
628
- it 'has a working method #vfunc_multiple_out_parameters' do
594
+ it "has a working method #vfunc_multiple_out_parameters" do
629
595
  derived_instance = make_derived_instance do |info|
630
596
  info.install_vfunc_implementation(
631
597
  :vfunc_multiple_out_parameters,
632
598
  proc { |*_args| [42.1, -142.3] })
633
599
  end
634
600
  result = derived_instance.vfunc_multiple_out_parameters
635
- result[0].must_be_close_to 42.1
636
- result[1].must_be_close_to(-142.3)
601
+ _(result[0]).must_be_close_to 42.1
602
+ _(result[1]).must_be_close_to(-142.3)
637
603
  end
638
604
 
639
- it 'has a working method #vfunc_one_out_parameter' do
605
+ it "has a working method #vfunc_one_out_parameter" do
640
606
  derived_instance = make_derived_instance do |info|
641
607
  info.install_vfunc_implementation(
642
608
  :vfunc_one_out_parameter,
643
609
  proc { |*_args| 23.4 })
644
610
  end
645
- derived_instance.vfunc_one_out_parameter.
611
+ _(derived_instance.vfunc_one_out_parameter).
646
612
  must_be_within_epsilon 23.4
647
613
  end
648
614
 
649
- it 'has a working method #vfunc_out_enum' do
650
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
651
- 'vfunc_out_enum')
615
+ it "has a working method #vfunc_out_enum" do
652
616
  derived_instance = make_derived_instance do |info|
653
617
  info.install_vfunc_implementation :vfunc_out_enum, proc { |_obj| :value2 }
654
618
  end
655
- derived_instance.vfunc_out_enum.must_equal :value2
619
+ _(derived_instance.vfunc_out_enum).must_equal :value2
656
620
  end
657
621
 
658
- it 'has a working method #vfunc_return_enum' do
659
- skip unless get_vfunc_introspection_data('GIMarshallingTests', 'Object',
660
- 'vfunc_return_enum')
622
+ it "has a working method #vfunc_return_enum" do
661
623
  derived_instance = make_derived_instance do |info|
662
624
  info.install_vfunc_implementation :vfunc_return_enum, proc { |_obj| :value2 }
663
625
  end
664
- derived_instance.vfunc_return_enum.must_equal :value2
626
+ _(derived_instance.vfunc_return_enum).must_equal :value2
665
627
  end
666
628
 
667
- it 'has a working method #vfunc_return_value_and_multiple_out_parameters' do
629
+ it "has a working method #vfunc_return_value_and_multiple_out_parameters" do
668
630
  derived_instance = make_derived_instance do |info|
669
631
  info.install_vfunc_implementation(
670
632
  :vfunc_return_value_and_multiple_out_parameters,
671
633
  proc { |*_args| [42, -142, 3] })
672
634
  end
673
- derived_instance.vfunc_return_value_and_multiple_out_parameters.
635
+ _(derived_instance.vfunc_return_value_and_multiple_out_parameters).
674
636
  must_equal [42, -142, 3]
675
637
  end
676
638
 
677
- it 'has a working method #vfunc_return_value_and_one_out_parameter' do
639
+ it "has a working method #vfunc_return_value_and_one_out_parameter" do
678
640
  derived_instance = make_derived_instance do |info|
679
641
  info.install_vfunc_implementation(
680
642
  :vfunc_return_value_and_one_out_parameter,
681
643
  proc { |*_args| [42, -142] })
682
644
  end
683
- derived_instance.vfunc_return_value_and_one_out_parameter.
645
+ _(derived_instance.vfunc_return_value_and_one_out_parameter).
684
646
  must_equal [42, -142]
685
647
  end
686
648
 
687
- it 'has a working method #vfunc_return_value_only' do
649
+ it "has a working method #vfunc_return_value_only" do
688
650
  derived_instance = make_derived_instance do |info|
689
651
  info.install_vfunc_implementation :vfunc_return_value_only, proc { |_obj| 0x1234_5678 }
690
652
  end
691
653
  result = derived_instance.vfunc_return_value_only
692
- result.must_equal 0x1234_5678
654
+ _(result).must_equal 0x1234_5678
693
655
  end
694
656
 
695
- it 'has a working method #vfunc_with_callback' do
696
- skip unless get_method_introspection_data('GIMarshallingTests', 'Object',
697
- 'vfunc_with_callback')
698
-
657
+ it "has a working method #vfunc_with_callback" do
699
658
  result = 1
700
659
 
701
660
  derived_instance = make_derived_instance do |info|
@@ -708,103 +667,103 @@ describe GIMarshallingTests do
708
667
 
709
668
  # The current implementation of the vfunc_with_callback method currently
710
669
  # doesn't actually call the virtual function vfunc_with_callback.
711
- result.must_equal 1
712
- result.wont_equal 42 + 23
670
+ _(result).must_equal 1
671
+ _(result).wont_equal 42 + 23
713
672
  end
714
673
 
715
674
  describe "its 'int' property" do
716
- it 'can be retrieved with #get_property' do
717
- assert_equal 42, instance.get_property('int')
675
+ it "can be retrieved with #get_property" do
676
+ assert_equal 42, instance.get_property("int")
718
677
  end
719
- it 'can be retrieved with #int' do
678
+ it "can be retrieved with #int" do
720
679
  assert_equal 42, instance.int
721
680
  end
722
- it 'can be set with #set_property' do
723
- instance.set_property('int', 13)
724
- assert_equal 13, instance.get_property('int')
681
+ it "can be set with #set_property" do
682
+ instance.set_property("int", 13)
683
+ assert_equal 13, instance.get_property("int")
725
684
  end
726
- it 'can be set with #int=' do
685
+ it "can be set with #int=" do
727
686
  instance.int = 1
728
687
  assert_equal 1, instance.int
729
688
  end
730
689
  end
731
690
  end
732
691
 
733
- describe 'GIMarshallingTests::OverridesObject' do
734
- it 'creates an instance using #new' do
692
+ describe "GIMarshallingTests::OverridesObject" do
693
+ it "creates an instance using #new" do
735
694
  ob = GIMarshallingTests::OverridesObject.new
736
695
  assert_instance_of GIMarshallingTests::OverridesObject, ob
737
696
  end
738
697
 
739
- it 'has a working function #returnv' do
698
+ it "has a working function #returnv" do
740
699
  ob = GIMarshallingTests::OverridesObject.returnv
741
700
  assert_instance_of GIMarshallingTests::OverridesObject, ob
742
701
  end
743
702
 
744
703
  let(:instance) { GIMarshallingTests::OverridesObject.new }
745
704
 
746
- it 'has a working method #method' do
705
+ it "has a working method #method" do
747
706
  result = instance.method
748
- result.must_equal 42
707
+ _(result).must_equal 42
749
708
  end
750
709
 
751
- it 'does not have accessors for its parent instance' do
752
- instance.wont_respond_to :parent_instance
753
- instance.wont_respond_to :parent_instance=
710
+ it "does not have accessors for its parent instance" do
711
+ _(instance).wont_respond_to :parent_instance
712
+ _(instance).wont_respond_to :parent_instance=
754
713
  end
755
714
  end
756
715
 
757
- describe 'GIMarshallingTests::OverridesStruct' do
716
+ describe "GIMarshallingTests::OverridesStruct" do
758
717
  let(:instance) { GIMarshallingTests::OverridesStruct.new }
759
718
 
760
- it 'has a writable field long_' do
719
+ it "has a writable field long_" do
761
720
  instance.long_ = 43
762
- instance.long_.must_equal 43
721
+ _(instance.long_).must_equal 43
763
722
  end
764
723
 
765
- it 'creates an instance using #new' do
724
+ it "creates an instance using #new" do
766
725
  ob = GIMarshallingTests::OverridesStruct.new
767
726
  assert_instance_of GIMarshallingTests::OverridesStruct, ob
768
727
  end
769
728
 
770
- it 'has a working method #method' do
771
- instance.method.must_equal 42
729
+ it "has a working method #method" do
730
+ _(instance.method).must_equal 42
772
731
  end
773
732
 
774
- it 'has a working function #returnv' do
733
+ it "has a working function #returnv" do
775
734
  ob = GIMarshallingTests::OverridesStruct.returnv
776
735
  assert_instance_of GIMarshallingTests::OverridesStruct, ob
777
736
  end
778
737
  end
779
738
 
780
- describe 'GIMarshallingTests::PointerStruct' do
781
- it 'creates an instance using #new' do
739
+ describe "GIMarshallingTests::PointerStruct" do
740
+ it "creates an instance using #new" do
782
741
  ps = GIMarshallingTests::PointerStruct.new
783
742
  assert_instance_of GIMarshallingTests::PointerStruct, ps
784
743
  end
785
744
 
786
745
  let(:instance) { GIMarshallingTests::PointerStruct.new }
787
746
 
788
- it 'has a writable field long_' do
747
+ it "has a writable field long_" do
789
748
  assert_equal 0, instance.long_
790
749
  instance.long_ = 1056
791
750
  assert_equal 1056, instance.long_
792
751
  end
793
752
 
794
- it 'has a working method #inv' do
753
+ it "has a working method #inv" do
795
754
  instance.long_ = 42
796
755
  instance.inv
797
756
  pass
798
757
  end
799
758
 
800
- it 'has a working function #returnv' do
759
+ it "has a working function #returnv" do
801
760
  ob = GIMarshallingTests::PointerStruct.returnv
802
761
  assert_instance_of GIMarshallingTests::PointerStruct, ob
803
762
  end
804
763
  end
805
764
 
806
- describe 'GIMarshallingTests::PropertiesObject' do
807
- it 'creates an instance using #new' do
765
+ describe "GIMarshallingTests::PropertiesObject" do
766
+ it "creates an instance using #new" do
808
767
  ob = GIMarshallingTests::PropertiesObject.new
809
768
  assert_instance_of GIMarshallingTests::PropertiesObject, ob
810
769
  end
@@ -812,781 +771,897 @@ describe GIMarshallingTests do
812
771
  let(:instance) { GIMarshallingTests::PropertiesObject.new }
813
772
 
814
773
  describe "its 'some-boolean' property" do
815
- it 'can be retrieved with #get_property' do
816
- instance.get_property('some-boolean').must_equal false
774
+ it "can be retrieved with #get_property" do
775
+ _(instance.get_property("some-boolean")).must_equal false
817
776
  end
818
777
 
819
- it 'can be retrieved with #some_boolean' do
820
- instance.some_boolean.must_equal false
778
+ it "can be retrieved with #some_boolean" do
779
+ _(instance.some_boolean).must_equal false
821
780
  end
822
781
 
823
- it 'can be set with #set_property' do
824
- instance.set_property('some-boolean', true)
825
- instance.get_property('some-boolean').must_equal true
782
+ it "can be set with #set_property" do
783
+ instance.set_property("some-boolean", true)
784
+ _(instance.get_property("some-boolean")).must_equal true
826
785
  end
827
786
 
828
- it 'can be set with #some_boolean=' do
787
+ it "can be set with #some_boolean=" do
829
788
  instance.some_boolean = true
830
- instance.get_property('some-boolean').must_equal true
789
+ _(instance.get_property("some-boolean")).must_equal true
831
790
  end
832
791
  end
833
792
 
834
793
  describe "its 'some-boxed-glist' property" do
835
- before do
836
- skip unless get_property_introspection_data('GIMarshallingTests',
837
- 'PropertiesObject',
838
- 'some-boxed-glist')
839
- end
840
-
841
- it 'can be retrieved with #get_property' do
842
- instance.get_property('some-boxed-glist').must_be_nil
794
+ it "can be retrieved with #get_property" do
795
+ _(instance.get_property("some-boxed-glist")).must_be_nil
843
796
  end
844
797
 
845
- it 'can be retrieved with #some_boxed_glist' do
846
- instance.some_boxed_glist.must_be_nil
798
+ it "can be retrieved with #some_boxed_glist" do
799
+ _(instance.some_boxed_glist).must_be_nil
847
800
  end
848
801
 
849
- it 'can be set with #set_property_extended' do
850
- instance.set_property_extended('some-boxed-glist', [1, 2, 3])
851
- instance.some_boxed_glist.to_a.must_equal [1, 2, 3]
802
+ it "can be set with #set_property" do
803
+ instance.set_property("some-boxed-glist", [1, 2, 3])
804
+ _(instance.some_boxed_glist.to_a).must_equal [1, 2, 3]
852
805
  end
853
806
 
854
- it 'can be set with #some_boxed_glist=' do
807
+ it "can be set with #some_boxed_glist=" do
855
808
  instance.some_boxed_glist = [1, 2, 3]
856
- instance.some_boxed_glist.to_a.must_equal [1, 2, 3]
857
- instance.get_property_extended('some-boxed-glist').to_a.must_equal [1, 2, 3]
809
+ _(instance.some_boxed_glist.to_a).must_equal [1, 2, 3]
810
+ _(instance.get_property("some-boxed-glist").to_a).must_equal [1, 2, 3]
858
811
  end
859
812
  end
860
813
 
861
814
  describe "its 'some-boxed-struct' property" do
862
- before do
863
- skip unless get_property_introspection_data('GIMarshallingTests',
864
- 'PropertiesObject',
865
- 'some-boxed-struct')
815
+ it "can be retrieved with #get_property" do
816
+ _(instance.get_property("some-boxed-struct")).must_be_nil
866
817
  end
867
818
 
868
- it 'can be retrieved with #get_property' do
869
- instance.get_property('some-boxed-struct').must_be_nil
819
+ it "can be retrieved with #some_boxed_struct" do
820
+ _(instance.some_boxed_struct).must_be_nil
870
821
  end
871
822
 
872
- it 'can be retrieved with #some_boxed_struct' do
873
- instance.some_boxed_struct.must_be_nil
874
- end
875
-
876
- it 'can be set with #set_property' do
823
+ it "can be set with #set_property" do
877
824
  boxed = GIMarshallingTests::BoxedStruct.new
878
825
  boxed.long_ = 42
879
- instance.set_property('some-boxed-struct', boxed)
880
- instance.get_property('some-boxed-struct').long_.must_equal 42
826
+ instance.set_property("some-boxed-struct", boxed)
827
+ _(instance.get_property("some-boxed-struct").long_).must_equal 42
881
828
  end
882
829
 
883
- it 'can be set with #some_boxed_struct=' do
830
+ it "can be set with #some_boxed_struct=" do
884
831
  boxed = GIMarshallingTests::BoxedStruct.new
885
832
  boxed.long_ = 43
886
833
  instance.some_boxed_struct = boxed
887
- instance.some_boxed_struct.long_.must_equal 43
834
+ _(instance.some_boxed_struct.long_).must_equal 43
835
+ end
836
+ end
837
+
838
+ describe "its 'some-byte-array' property" do
839
+ before { skip_below("1.57.2") }
840
+
841
+ it "can be retrieved with #get_property" do
842
+ _(instance.get_property("some-byte-array")).must_be_nil
843
+ end
844
+
845
+ it "can be retrieved with #some_byte_array" do
846
+ _(instance.some_byte_array).must_be_nil
847
+ end
848
+
849
+ it "can be set with #set_property" do
850
+ instance.set_property "some-byte-array", "some bytes"
851
+ _(instance.get_property("some-byte-array").to_string).must_equal "some bytes"
852
+ end
853
+
854
+ it "can be set with #some_byte_array=" do
855
+ instance.some_byte_array = "some bytes"
856
+ _(instance.some_byte_array.to_string).must_equal "some bytes"
888
857
  end
889
858
  end
890
859
 
891
860
  describe "its 'some-char' property" do
892
- it 'can be retrieved with #get_property' do
893
- instance.get_property('some-char').must_equal 0
861
+ it "can be retrieved with #get_property" do
862
+ _(instance.get_property("some-char")).must_equal 0
894
863
  end
895
864
 
896
- it 'can be retrieved with #some_char' do
897
- instance.some_char.must_equal 0
865
+ it "can be retrieved with #some_char" do
866
+ _(instance.some_char).must_equal 0
898
867
  end
899
868
 
900
- it 'can be set with #set_property' do
901
- instance.set_property 'some-char', 42
902
- instance.get_property('some-char').must_equal 42
869
+ it "can be set with #set_property" do
870
+ instance.set_property "some-char", 42
871
+ _(instance.get_property("some-char")).must_equal 42
903
872
  end
904
873
 
905
- it 'can be set with #some_char=' do
874
+ it "can be set with #some_char=" do
906
875
  instance.some_char = 43
907
- instance.some_char.must_equal 43
876
+ _(instance.some_char).must_equal 43
908
877
  end
909
878
  end
910
879
 
911
880
  describe "its 'some-double' property" do
912
- it 'can be retrieved with #get_property' do
913
- instance.get_property('some-double').must_equal 0.0
881
+ it "can be retrieved with #get_property" do
882
+ _(instance.get_property("some-double")).must_equal 0.0
914
883
  end
915
884
 
916
- it 'can be retrieved with #some_double' do
917
- instance.some_double.must_equal 0.0
885
+ it "can be retrieved with #some_double" do
886
+ _(instance.some_double).must_equal 0.0
918
887
  end
919
888
 
920
- it 'can be set with #set_property' do
921
- instance.set_property('some-double', 3.14)
922
- instance.get_property('some-double').must_equal 3.14
889
+ it "can be set with #set_property" do
890
+ instance.set_property("some-double", 3.14)
891
+ _(instance.get_property("some-double")).must_equal 3.14
923
892
  end
924
893
 
925
- it 'can be set with #some_double=' do
894
+ it "can be set with #some_double=" do
926
895
  instance.some_double = 3.14
927
- instance.some_double.must_equal 3.14
896
+ _(instance.some_double).must_equal 3.14
897
+ end
898
+ end
899
+
900
+ describe "its 'some-enum' property" do
901
+ before { skip_below("1.52.1") }
902
+
903
+ it "can be retrieved with #get_property" do
904
+ _(instance.get_property("some-enum")).must_equal :value1
905
+ end
906
+
907
+ it "can be retrieved with #some_enum" do
908
+ _(instance.some_enum).must_equal :value1
909
+ end
910
+
911
+ it "can be set with #set_property" do
912
+ instance.set_property("some-enum", :value3)
913
+ _(instance.get_property("some-enum")).must_equal :value3
914
+ end
915
+
916
+ it "can be set with #some_enum=" do
917
+ instance.some_enum = :value3
918
+ _(instance.some_enum).must_equal :value3
919
+ _(instance.get_property("some-enum")).must_equal :value3
920
+ end
921
+ end
922
+
923
+ describe "its 'some-flags' property" do
924
+ before { skip_below("1.52.1") }
925
+
926
+ it "can be retrieved with #get_property" do
927
+ _(instance.get_property("some-flags")).must_equal value1: true
928
+ end
929
+
930
+ it "can be retrieved with #some_flags" do
931
+ _(instance.some_flags).must_equal value1: true
932
+ end
933
+
934
+ it "can be set with #set_property" do
935
+ instance.set_property("some-flags", value3: true)
936
+ _(instance.get_property("some-flags")).must_equal value3: true
937
+ end
938
+
939
+ it "can be set with #some_flags=" do
940
+ instance.some_flags = :value3
941
+ _(instance.some_flags).must_equal(value3: true)
942
+ _(instance.get_property("some-flags")).must_equal(value3: true)
928
943
  end
929
944
  end
930
945
 
931
946
  describe "its 'some-float' property" do
932
- it 'can be retrieved with #get_property' do
933
- instance.get_property('some-float').must_equal 0.0
947
+ it "can be retrieved with #get_property" do
948
+ _(instance.get_property("some-float")).must_equal 0.0
934
949
  end
935
950
 
936
- it 'can be retrieved with #some_float' do
937
- instance.some_float.must_equal 0.0
951
+ it "can be retrieved with #some_float" do
952
+ _(instance.some_float).must_equal 0.0
938
953
  end
939
954
 
940
- it 'can be set with #set_property' do
941
- instance.set_property('some-float', 3.14)
942
- instance.get_property('some-float').must_be_close_to 3.14
955
+ it "can be set with #set_property" do
956
+ instance.set_property("some-float", 3.14)
957
+ _(instance.get_property("some-float")).must_be_close_to 3.14
943
958
  end
944
959
 
945
- it 'can be set with #some_float=' do
960
+ it "can be set with #some_float=" do
946
961
  instance.some_float = 3.14
947
- instance.some_float.must_be_close_to 3.14
962
+ _(instance.some_float).must_be_close_to 3.14
963
+ end
964
+ end
965
+
966
+ describe "its 'some-gvalue' property" do
967
+ before { skip_below "1.52.1" }
968
+
969
+ it "can be retrieved with #get_property" do
970
+ _(instance.get_property("some-gvalue")).must_be_nil
971
+ end
972
+
973
+ it "can be retrieved with #some_gvalue" do
974
+ _(instance.some_gvalue).must_be_nil
975
+ end
976
+
977
+ it "can be set with #set_property" do
978
+ value = GObject::Value.from 42
979
+ instance.set_property("some-gvalue", value)
980
+ _(instance.get_property("some-gvalue").get_value).must_equal 42
981
+ end
982
+
983
+ it "can be set with #some_gvalue=" do
984
+ value = GObject::Value.from 42
985
+ instance.some_gvalue = value
986
+ _(instance.some_gvalue.get_value).must_equal 42
987
+ _(instance.get_property("some-gvalue").get_value).must_equal 42
948
988
  end
949
989
  end
950
990
 
951
991
  describe "its 'some-int' property" do
952
- it 'can be retrieved with #get_property' do
953
- instance.get_property('some-int').must_equal 0
992
+ it "can be retrieved with #get_property" do
993
+ _(instance.get_property("some-int")).must_equal 0
954
994
  end
955
995
 
956
- it 'can be retrieved with #some_int' do
957
- instance.some_int.must_equal 0
996
+ it "can be retrieved with #some_int" do
997
+ _(instance.some_int).must_equal 0
958
998
  end
959
999
 
960
- it 'can be set with #set_property' do
961
- instance.set_property 'some-int', 4242
962
- instance.get_property('some-int').must_equal 4242
1000
+ it "can be set with #set_property" do
1001
+ instance.set_property "some-int", 4242
1002
+ _(instance.get_property("some-int")).must_equal 4242
963
1003
  end
964
1004
 
965
- it 'can be set with #some_int=' do
1005
+ it "can be set with #some_int=" do
966
1006
  instance.some_int = 4243
967
- instance.some_int.must_equal 4243
1007
+ _(instance.some_int).must_equal 4243
968
1008
  end
969
1009
  end
970
1010
 
971
1011
  describe "its 'some-int64' property" do
972
- it 'can be retrieved with #get_property' do
973
- instance.get_property('some-int64').must_equal 0
1012
+ it "can be retrieved with #get_property" do
1013
+ _(instance.get_property("some-int64")).must_equal 0
974
1014
  end
975
1015
 
976
- it 'can be retrieved with #some_int64' do
977
- instance.some_int64.must_equal 0
1016
+ it "can be retrieved with #some_int64" do
1017
+ _(instance.some_int64).must_equal 0
978
1018
  end
979
1019
 
980
- it 'can be set with #set_property' do
981
- instance.set_property 'some-int64', 42_000_000_000_000
982
- instance.get_property('some-int64').must_equal 42_000_000_000_000
1020
+ it "can be set with #set_property" do
1021
+ instance.set_property "some-int64", 42_000_000_000_000
1022
+ _(instance.get_property("some-int64")).must_equal 42_000_000_000_000
983
1023
  end
984
1024
 
985
- it 'can be set with #some_int64=' do
1025
+ it "can be set with #some_int64=" do
986
1026
  instance.some_int64 = 43_000_000_000_000
987
- instance.some_int64.must_equal 43_000_000_000_000
1027
+ _(instance.some_int64).must_equal 43_000_000_000_000
988
1028
  end
989
1029
  end
990
1030
 
991
1031
  describe "its 'some-long' property" do
992
- it 'can be retrieved with #get_property' do
993
- instance.get_property('some-long').must_equal 0
1032
+ it "can be retrieved with #get_property" do
1033
+ _(instance.get_property("some-long")).must_equal 0
994
1034
  end
995
1035
 
996
- it 'can be retrieved with #some_long' do
997
- instance.some_long.must_equal 0
1036
+ it "can be retrieved with #some_long" do
1037
+ _(instance.some_long).must_equal 0
998
1038
  end
999
1039
 
1000
- it 'can be set with #set_property' do
1001
- instance.set_property 'some-long', 4242
1002
- instance.get_property('some-long').must_equal 4242
1040
+ it "can be set with #set_property" do
1041
+ instance.set_property "some-long", 4242
1042
+ _(instance.get_property("some-long")).must_equal 4242
1003
1043
  end
1004
1044
 
1005
- it 'can be set with #some_long=' do
1045
+ it "can be set with #some_long=" do
1006
1046
  instance.some_long = 4243
1007
- instance.some_long.must_equal 4243
1047
+ _(instance.some_long).must_equal 4243
1008
1048
  end
1009
1049
  end
1010
1050
 
1011
1051
  describe "its 'some-object' property" do
1012
- before do
1013
- skip unless get_property_introspection_data('GIMarshallingTests',
1014
- 'PropertiesObject',
1015
- 'some-object')
1052
+ it "can be retrieved with #get_property" do
1053
+ _(instance.get_property("some-object")).must_be_nil
1016
1054
  end
1017
1055
 
1018
- it 'can be retrieved with #get_property' do
1019
- instance.get_property('some-object').must_be_nil
1056
+ it "can be retrieved with #some_object" do
1057
+ _(instance.some_object).must_be_nil
1020
1058
  end
1021
1059
 
1022
- it 'can be retrieved with #some_object' do
1023
- instance.some_object.must_be_nil
1024
- end
1025
-
1026
- it 'can be set with #set_property' do
1060
+ it "can be set with #set_property" do
1027
1061
  ob = GIMarshallingTests::Object.new 42
1028
- instance.set_property 'some-object', ob
1029
- instance.get_property('some-object').must_equal ob
1062
+ instance.set_property "some-object", ob
1063
+ _(instance.get_property("some-object")).must_equal ob
1030
1064
  end
1031
1065
 
1032
- it 'can be set with #some_object=' do
1066
+ it "can be set with #some_object=" do
1033
1067
  ob = GIMarshallingTests::Object.new 42
1034
1068
  instance.some_object = ob
1035
- instance.some_object.must_equal ob
1069
+ _(instance.some_object).must_equal ob
1036
1070
  end
1037
1071
  end
1038
1072
 
1039
- describe "its 'some-strv' property" do
1040
- before do
1041
- skip unless get_property_introspection_data('GIMarshallingTests',
1042
- 'PropertiesObject',
1043
- 'some-strv')
1073
+ describe "its 'some-readonly' property" do
1074
+ before { skip_below("1.57.2") }
1075
+
1076
+ it "can be retrieved with #get_property" do
1077
+ _(instance.get_property("some-readonly")).must_equal 42
1044
1078
  end
1045
1079
 
1046
- it 'can be retrieved with #get_property' do
1047
- instance.get_property('some-strv').must_be :==, []
1080
+ it "can be retrieved with #some_readonly" do
1081
+ _(instance.some_readonly).must_equal 42
1082
+ end
1083
+ end
1084
+
1085
+ describe "its 'some-strv' property" do
1086
+ it "can be retrieved with #get_property" do
1087
+ _(instance.get_property("some-strv")).must_be :==, []
1048
1088
  end
1049
1089
 
1050
- it 'can be retrieved with #some_strv' do
1051
- instance.some_strv.must_be :==, []
1090
+ it "can be retrieved with #some_strv" do
1091
+ _(instance.some_strv).must_be :==, []
1052
1092
  end
1053
1093
 
1054
- it 'can be set with #set_property_extended' do
1055
- instance.set_property_extended('some-strv', %w(foo bar))
1056
- instance.get_property('some-strv').must_be :==, %w(foo bar)
1094
+ it "can be set with #set_property" do
1095
+ instance.set_property("some-strv", %w(foo bar))
1096
+ _(instance.get_property("some-strv")).must_be :==, %w(foo bar)
1057
1097
  end
1058
1098
 
1059
- it 'can be set with #some_strv=' do
1099
+ it "can be set with #some_strv=" do
1060
1100
  instance.some_strv = %w(foo bar)
1061
- instance.some_strv.must_be :==, %w(foo bar)
1101
+ _(instance.some_strv).must_be :==, %w(foo bar)
1062
1102
  end
1063
1103
  end
1064
1104
 
1065
1105
  describe "its 'some-uchar' property" do
1066
- it 'can be retrieved with #get_property' do
1067
- instance.get_property('some-uchar').must_equal 0
1106
+ it "can be retrieved with #get_property" do
1107
+ _(instance.get_property("some-uchar")).must_equal 0
1068
1108
  end
1069
1109
 
1070
- it 'can be retrieved with #some_uchar' do
1071
- instance.some_uchar.must_equal 0
1110
+ it "can be retrieved with #some_uchar" do
1111
+ _(instance.some_uchar).must_equal 0
1072
1112
  end
1073
1113
 
1074
- it 'can be set with #set_property' do
1075
- instance.set_property 'some-uchar', 42
1076
- instance.get_property('some-uchar').must_equal 42
1114
+ it "can be set with #set_property" do
1115
+ instance.set_property "some-uchar", 42
1116
+ _(instance.get_property("some-uchar")).must_equal 42
1077
1117
  end
1078
1118
 
1079
- it 'can be set with #some_uchar=' do
1119
+ it "can be set with #some_uchar=" do
1080
1120
  instance.some_uchar = 43
1081
- instance.some_uchar.must_equal 43
1121
+ _(instance.some_uchar).must_equal 43
1082
1122
  end
1083
1123
  end
1084
1124
 
1085
1125
  describe "its 'some-uint' property" do
1086
- it 'can be retrieved with #get_property' do
1087
- instance.get_property('some-uint').must_equal 0
1126
+ it "can be retrieved with #get_property" do
1127
+ _(instance.get_property("some-uint")).must_equal 0
1088
1128
  end
1089
1129
 
1090
- it 'can be retrieved with #some_uint' do
1091
- instance.some_uint.must_equal 0
1130
+ it "can be retrieved with #some_uint" do
1131
+ _(instance.some_uint).must_equal 0
1092
1132
  end
1093
1133
 
1094
- it 'can be set with #set_property' do
1095
- instance.set_property 'some-uint', 4242
1096
- instance.get_property('some-uint').must_equal 4242
1134
+ it "can be set with #set_property" do
1135
+ instance.set_property "some-uint", 4242
1136
+ _(instance.get_property("some-uint")).must_equal 4242
1097
1137
  end
1098
1138
 
1099
- it 'can be set with #some_uint=' do
1139
+ it "can be set with #some_uint=" do
1100
1140
  instance.some_uint = 4243
1101
- instance.some_uint.must_equal 4243
1141
+ _(instance.some_uint).must_equal 4243
1102
1142
  end
1103
1143
  end
1104
1144
 
1105
1145
  describe "its 'some-uint64' property" do
1106
- it 'can be retrieved with #get_property' do
1107
- instance.get_property('some-uint64').must_equal 0
1146
+ it "can be retrieved with #get_property" do
1147
+ _(instance.get_property("some-uint64")).must_equal 0
1108
1148
  end
1109
1149
 
1110
- it 'can be retrieved with #some_uint64' do
1111
- instance.some_uint64.must_equal 0
1150
+ it "can be retrieved with #some_uint64" do
1151
+ _(instance.some_uint64).must_equal 0
1112
1152
  end
1113
1153
 
1114
- it 'can be set with #set_property' do
1115
- instance.set_property 'some-uint64', 42_000_000_000_000
1116
- instance.get_property('some-uint64').must_equal 42_000_000_000_000
1154
+ it "can be set with #set_property" do
1155
+ instance.set_property "some-uint64", 42_000_000_000_000
1156
+ _(instance.get_property("some-uint64")).must_equal 42_000_000_000_000
1117
1157
  end
1118
1158
 
1119
- it 'can be set with #some_uint64=' do
1159
+ it "can be set with #some_uint64=" do
1120
1160
  instance.some_uint64 = 43_000_000_000_000
1121
- instance.some_uint64.must_equal 43_000_000_000_000
1161
+ _(instance.some_uint64).must_equal 43_000_000_000_000
1122
1162
  end
1123
1163
  end
1124
1164
 
1125
1165
  describe "its 'some-ulong' property" do
1126
- it 'can be retrieved with #get_property' do
1127
- instance.get_property('some-ulong').must_equal 0
1166
+ it "can be retrieved with #get_property" do
1167
+ _(instance.get_property("some-ulong")).must_equal 0
1128
1168
  end
1129
1169
 
1130
- it 'can be retrieved with #some_ulong' do
1131
- instance.some_ulong.must_equal 0
1170
+ it "can be retrieved with #some_ulong" do
1171
+ _(instance.some_ulong).must_equal 0
1132
1172
  end
1133
1173
 
1134
- it 'can be set with #set_property' do
1135
- instance.set_property 'some-ulong', 4242
1136
- instance.get_property('some-ulong').must_equal 4242
1174
+ it "can be set with #set_property" do
1175
+ instance.set_property "some-ulong", 4242
1176
+ _(instance.get_property("some-ulong")).must_equal 4242
1137
1177
  end
1138
1178
 
1139
- it 'can be set with #some_ulong=' do
1179
+ it "can be set with #some_ulong=" do
1140
1180
  instance.some_ulong = 4243
1141
- instance.some_ulong.must_equal 4243
1181
+ _(instance.some_ulong).must_equal 4243
1142
1182
  end
1143
1183
  end
1144
1184
 
1145
1185
  describe "its 'some-variant' property" do
1146
- before do
1147
- skip unless get_property_introspection_data('GIMarshallingTests',
1148
- 'PropertiesObject',
1149
- 'some-variant')
1186
+ it "can be retrieved with #get_property" do
1187
+ _(instance.get_property("some-variant")).must_be_nil
1150
1188
  end
1151
1189
 
1152
- it 'can be retrieved with #get_property' do
1153
- instance.get_property('some-variant').must_be_nil
1190
+ it "can be retrieved with #some_variant" do
1191
+ _(instance.some_variant).must_be_nil
1154
1192
  end
1155
1193
 
1156
- it 'can be retrieved with #some_variant' do
1157
- instance.some_variant.must_be_nil
1194
+ it "can be set with #set_property" do
1195
+ value = GLib::Variant.new_string("Foo")
1196
+ instance.set_property "some-variant", value
1197
+ _(instance.get_property("some-variant")).must_equal value
1158
1198
  end
1159
1199
 
1160
- it 'can be set with #set_property' do
1161
- value = GLib::Variant.new_string('Foo')
1162
- instance.set_property 'some-variant', value
1163
- instance.get_property('some-variant').must_equal value
1164
- end
1165
-
1166
- it 'can be set with #some_variant=' do
1167
- value = GLib::Variant.new_string('Foo')
1200
+ it "can be set with #some_variant=" do
1201
+ value = GLib::Variant.new_string("Foo")
1168
1202
  instance.some_variant = value
1169
- instance.some_variant.must_equal value
1203
+ _(instance.some_variant).must_equal value
1170
1204
  end
1171
1205
  end
1172
1206
  end
1173
1207
 
1174
- describe 'GIMarshallingTests::SecondEnum' do
1175
- it 'has the member :secondvalue1' do
1208
+ describe "GIMarshallingTests::SecondEnum" do
1209
+ it "has the member :secondvalue1" do
1176
1210
  assert_equal 0, GIMarshallingTests::SecondEnum[:secondvalue1]
1177
1211
  end
1178
- it 'has the member :secondvalue2' do
1212
+ it "has the member :secondvalue2" do
1179
1213
  assert_equal 1, GIMarshallingTests::SecondEnum[:secondvalue2]
1180
1214
  end
1181
1215
  end
1182
1216
 
1183
- describe 'GIMarshallingTests::SimpleStruct' do
1184
- it 'creates an instance using #new' do
1217
+ describe "GIMarshallingTests::SimpleStruct" do
1218
+ it "creates an instance using #new" do
1185
1219
  ss = GIMarshallingTests::SimpleStruct.new
1186
1220
  assert_instance_of GIMarshallingTests::SimpleStruct, ss
1187
1221
  end
1188
1222
 
1189
1223
  let(:instance) { GIMarshallingTests::SimpleStruct.new }
1190
1224
 
1191
- it 'has a writable field long_' do
1192
- instance.long_.must_equal 0
1225
+ it "has a writable field long_" do
1226
+ _(instance.long_).must_equal 0
1193
1227
  instance.long_ = 1056
1194
- instance.long_.must_equal 1056
1228
+ _(instance.long_).must_equal 1056
1195
1229
  end
1196
1230
 
1197
- it 'has a writable field int8' do
1198
- instance.int8.must_equal 0
1231
+ it "has a writable field int8" do
1232
+ _(instance.int8).must_equal 0
1199
1233
  instance.int8 = -43
1200
- instance.int8.must_equal(-43)
1234
+ _(instance.int8).must_equal(-43)
1201
1235
  end
1202
1236
 
1203
- it 'has a working method #inv' do
1237
+ it "has a working method #inv" do
1204
1238
  instance.long_ = 6
1205
1239
  instance.int8 = 7
1206
1240
  instance.inv
1207
1241
  pass
1208
1242
  end
1209
1243
 
1210
- it 'has a working method #method' do
1244
+ it "has a working method #method" do
1211
1245
  instance.long_ = 6
1212
1246
  instance.int8 = 7
1213
1247
  instance.method
1214
1248
  pass
1215
1249
  end
1216
1250
 
1217
- it 'has a working function #returnv' do
1251
+ it "has a working function #returnv" do
1218
1252
  ss = GIMarshallingTests::SimpleStruct.returnv
1219
1253
  assert_instance_of GIMarshallingTests::SimpleStruct, ss
1220
1254
  end
1221
1255
  end
1222
1256
 
1223
- describe 'GIMarshallingTests::SubObject' do
1224
- it 'creates an instance using #new' do
1257
+ describe "GIMarshallingTests::SubObject" do
1258
+ it "creates an instance using #new" do
1225
1259
  so = GIMarshallingTests::SubObject.new
1226
- so.must_be_instance_of GIMarshallingTests::SubObject
1227
- GObject.type_name_from_instance(so).
1228
- must_equal 'GIMarshallingTestsSubObject'
1260
+ _(so).must_be_instance_of GIMarshallingTests::SubObject
1261
+ _(GObject.type_name_from_instance(so)).
1262
+ must_equal "GIMarshallingTestsSubObject"
1229
1263
  end
1230
1264
 
1231
1265
  let(:instance) { GIMarshallingTests::SubObject.new }
1232
1266
 
1233
- it 'has a working method #overwritten_method' do
1267
+ it "has a working method #overwritten_method" do
1234
1268
  instance.overwritten_method
1235
1269
  pass
1236
1270
  end
1237
1271
 
1238
- it 'has a working method #sub_method' do
1272
+ it "has a working method #sub_method" do
1239
1273
  instance.sub_method
1240
1274
  pass
1241
1275
  end
1242
1276
 
1243
- it 'does not have accessors for its parent instance' do
1244
- instance.wont_respond_to :parent_instance
1245
- instance.wont_respond_to :parent_instance=
1277
+ it "does not have accessors for its parent instance" do
1278
+ _(instance).wont_respond_to :parent_instance
1279
+ _(instance).wont_respond_to :parent_instance=
1246
1280
  end
1247
1281
  end
1248
1282
 
1249
- describe 'GIMarshallingTests::SubSubObject' do
1250
- it 'creates an instance using #new' do
1283
+ describe "GIMarshallingTests::SubSubObject" do
1284
+ it "creates an instance using #new" do
1251
1285
  so = GIMarshallingTests::SubSubObject.new
1252
1286
  assert_instance_of GIMarshallingTests::SubSubObject, so
1253
- GObject.type_name_from_instance(so).
1254
- must_equal 'GIMarshallingTestsSubSubObject'
1287
+ _(GObject.type_name_from_instance(so)).
1288
+ must_equal "GIMarshallingTestsSubSubObject"
1255
1289
  end
1256
1290
 
1257
1291
  let(:instance) { GIMarshallingTests::SubSubObject.new }
1258
1292
 
1259
- it 'does not have accessors for its parent instance' do
1260
- instance.wont_respond_to :parent_instance
1261
- instance.wont_respond_to :parent_instance=
1293
+ it "does not have accessors for its parent instance" do
1294
+ _(instance).wont_respond_to :parent_instance
1295
+ _(instance).wont_respond_to :parent_instance=
1262
1296
  end
1263
1297
  end
1264
1298
 
1265
- describe 'GIMarshallingTests::Union' do
1266
- it 'creates an instance with #new' do
1299
+ describe "GIMarshallingTests::Union" do
1300
+ it "creates an instance with #new" do
1267
1301
  u = GIMarshallingTests::Union.new
1268
1302
  assert_instance_of GIMarshallingTests::Union, u
1269
1303
  end
1270
1304
 
1271
1305
  let(:instance) { GIMarshallingTests::Union.new }
1272
1306
 
1273
- it 'has a writable field long_' do
1307
+ it "has a writable field long_" do
1274
1308
  assert_equal 0, instance.long_
1275
1309
  instance.long_ = 1056
1276
1310
  assert_equal 1056, instance.long_
1277
1311
  end
1278
1312
 
1279
- it 'has a working method #inv' do
1313
+ it "has a working method #inv" do
1280
1314
  instance.long_ = 42
1281
1315
  instance.inv
1282
1316
  pass
1283
1317
  end
1284
1318
 
1285
- it 'has a working method #method' do
1319
+ it "has a working method #method" do
1286
1320
  instance.long_ = 42
1287
1321
  instance.method
1288
1322
  pass
1289
1323
  end
1290
1324
 
1291
- it 'has a working function #inout' do
1292
- skip 'This function is defined in the header but not implemented'
1325
+ it "has a working function #inout" do
1326
+ skip "This function is defined in the header but not implemented"
1293
1327
  end
1294
1328
 
1295
- it 'has a working function #out' do
1296
- skip 'This function is defined in the header but not implemented'
1329
+ it "has a working function #out" do
1330
+ skip "This function is defined in the header but not implemented"
1297
1331
  end
1298
1332
 
1299
- it 'has a working function #returnv' do
1333
+ it "has a working function #returnv" do
1300
1334
  u = GIMarshallingTests::Union.returnv
1301
1335
  assert_instance_of GIMarshallingTests::Union, u
1302
1336
  end
1303
1337
  end
1304
1338
 
1305
- it 'has a working function #array_enum_in' do
1339
+ it "has a working function #array_bool_in" do
1340
+ skip_below "1.51.1"
1341
+ GIMarshallingTests.array_bool_in [true, false, true, true]
1342
+ end
1343
+
1344
+ it "has a working function #array_bool_out" do
1345
+ skip_below "1.51.1"
1346
+ result = GIMarshallingTests.array_bool_out
1347
+ _(result.to_a).must_equal [true, false, true, true]
1348
+ end
1349
+
1350
+ it "has a working function #array_enum_in" do
1306
1351
  GIMarshallingTests.array_enum_in [:value1, :value2, :value3]
1307
1352
  end
1308
1353
 
1309
- it 'has a working function #array_fixed_inout' do
1354
+ it "has a working function #array_fixed_inout" do
1310
1355
  res = GIMarshallingTests.array_fixed_inout [-1, 0, 1, 2]
1311
- res.must_be :==, [2, 1, 0, -1]
1356
+ _(res).must_be :==, [2, 1, 0, -1]
1312
1357
  end
1313
1358
 
1314
- it 'has a working function #array_fixed_int_in' do
1359
+ it "has a working function #array_fixed_int_in" do
1315
1360
  GIMarshallingTests.array_fixed_int_in [-1, 0, 1, 2]
1316
1361
  pass
1317
1362
  end
1318
1363
 
1319
- it 'has a working function #array_fixed_int_return' do
1364
+ it "has a working function #array_fixed_int_return" do
1320
1365
  res = GIMarshallingTests.array_fixed_int_return
1321
- res.must_be :==, [-1, 0, 1, 2]
1366
+ _(res).must_be :==, [-1, 0, 1, 2]
1322
1367
  end
1323
1368
 
1324
- it 'has a working function #array_fixed_out' do
1369
+ it "has a working function #array_fixed_out" do
1325
1370
  res = GIMarshallingTests.array_fixed_out
1326
- res.must_be :==, [-1, 0, 1, 2]
1371
+ _(res).must_be :==, [-1, 0, 1, 2]
1327
1372
  end
1328
1373
 
1329
- it 'has a working function #array_fixed_out_struct' do
1374
+ it "has a working function #array_fixed_out_struct" do
1330
1375
  res = GIMarshallingTests.array_fixed_out_struct
1331
1376
  assert_equal [[7, 6], [6, 7]], res.map { |s| [s.long_, s.int8] }
1332
1377
  end
1333
1378
 
1334
- it 'has a working function #array_fixed_short_in' do
1379
+ it "has a working function #array_fixed_short_in" do
1335
1380
  GIMarshallingTests.array_fixed_short_in [-1, 0, 1, 2]
1336
1381
  pass
1337
1382
  end
1338
1383
 
1339
- it 'has a working function #array_fixed_short_return' do
1384
+ it "has a working function #array_fixed_short_return" do
1340
1385
  res = GIMarshallingTests.array_fixed_short_return
1341
- res.must_be :==, [-1, 0, 1, 2]
1386
+ _(res).must_be :==, [-1, 0, 1, 2]
1342
1387
  end
1343
1388
 
1344
- it 'has a working function #array_gvariant_container_in' do
1389
+ it "has a working function #array_gvariant_container_in" do
1345
1390
  v1 = GLib::Variant.new_int32(27)
1346
- v2 = GLib::Variant.new_string('Hello')
1391
+ v2 = GLib::Variant.new_string("Hello")
1347
1392
  result = GIMarshallingTests.array_gvariant_container_in [v1, v2]
1348
1393
  arr = result.to_a
1349
- arr.size.must_equal 2
1350
- arr[0].get_int32.must_equal 27
1351
- arr[1].get_string.must_equal 'Hello'
1394
+ _(arr.size).must_equal 2
1395
+ _(arr[0].get_int32).must_equal 27
1396
+ _(arr[1].get_string).must_equal "Hello"
1352
1397
  end
1353
1398
 
1354
- it 'has a working function #array_gvariant_full_in' do
1399
+ it "has a working function #array_gvariant_full_in" do
1355
1400
  v1 = GLib::Variant.new_int32(27)
1356
- v2 = GLib::Variant.new_string('Hello')
1401
+ v2 = GLib::Variant.new_string("Hello")
1357
1402
  result = GIMarshallingTests.array_gvariant_full_in [v1, v2]
1358
1403
  arr = result.to_a
1359
- arr.size.must_equal 2
1360
- arr[0].get_int32.must_equal 27
1361
- arr[1].get_string.must_equal 'Hello'
1404
+ _(arr.size).must_equal 2
1405
+ _(arr[0].get_int32).must_equal 27
1406
+ _(arr[1].get_string).must_equal "Hello"
1362
1407
  end
1363
1408
 
1364
- it 'has a working function #array_gvariant_none_in' do
1409
+ it "has a working function #array_gvariant_none_in" do
1365
1410
  v1 = GLib::Variant.new_int32(27)
1366
- v2 = GLib::Variant.new_string('Hello')
1411
+ v2 = GLib::Variant.new_string("Hello")
1367
1412
  result = GIMarshallingTests.array_gvariant_none_in [v1, v2]
1368
1413
  arr = result.to_a
1369
- arr.size.must_equal 2
1370
- arr[0].get_int32.must_equal 27
1371
- arr[1].get_string.must_equal 'Hello'
1414
+ _(arr.size).must_equal 2
1415
+ _(arr[0].get_int32).must_equal 27
1416
+ _(arr[1].get_string).must_equal "Hello"
1372
1417
  end
1373
1418
 
1374
- it 'has a working function #array_in' do
1419
+ it "has a working function #array_in" do
1375
1420
  GIMarshallingTests.array_in [-1, 0, 1, 2]
1376
1421
  pass
1377
1422
  end
1378
1423
 
1379
- it 'has a working function #array_in_guint64_len' do
1424
+ it "has a working function #array_in_guint64_len" do
1380
1425
  GIMarshallingTests.array_in_guint64_len [-1, 0, 1, 2]
1381
1426
  pass
1382
1427
  end
1383
1428
 
1384
- it 'has a working function #array_in_guint8_len' do
1429
+ it "has a working function #array_in_guint8_len" do
1385
1430
  GIMarshallingTests.array_in_guint8_len [-1, 0, 1, 2]
1386
1431
  pass
1387
1432
  end
1388
1433
 
1389
- it 'has a working function #array_in_len_before' do
1434
+ it "has a working function #array_in_len_before" do
1390
1435
  GIMarshallingTests.array_in_len_before [-1, 0, 1, 2]
1391
1436
  pass
1392
1437
  end
1393
1438
 
1394
- it 'has a working function #array_in_len_zero_terminated' do
1439
+ it "has a working function #array_in_len_zero_terminated" do
1395
1440
  GIMarshallingTests.array_in_len_zero_terminated [-1, 0, 1, 2]
1396
1441
  pass
1397
1442
  end
1398
1443
 
1399
- it 'has a working function #array_in_nonzero_nonlen' do
1400
- skip unless get_introspection_data 'GIMarshallingTests', 'array_in_nonzero_nonlen'
1401
- GIMarshallingTests.array_in_nonzero_nonlen 1, 'abcd'.bytes.to_a
1444
+ it "has a working function #array_in_nonzero_nonlen" do
1445
+ GIMarshallingTests.array_in_nonzero_nonlen 1, "abcd".bytes.to_a
1402
1446
  pass
1403
1447
  end
1404
1448
 
1405
- it 'has a working function #array_in_utf8_two_in' do
1406
- skip unless get_introspection_data 'GIMarshallingTests', 'array_in_utf8_two_in'
1407
- GIMarshallingTests.array_in_utf8_two_in [-1, 0, 1, 2], '1', '2'
1449
+ it "has a working function #array_in_utf8_two_in" do
1450
+ GIMarshallingTests.array_in_utf8_two_in [-1, 0, 1, 2], "1", "2"
1408
1451
  pass
1409
1452
  end
1410
1453
 
1411
- it 'has a working function #array_in_utf8_two_in_out_of_order' do
1412
- skip unless get_introspection_data 'GIMarshallingTests', 'array_in_utf8_two_in_out_of_order'
1413
- GIMarshallingTests.array_in_utf8_two_in_out_of_order '1', [-1, 0, 1, 2], '2'
1454
+ it "has a working function #array_in_utf8_two_in_out_of_order" do
1455
+ GIMarshallingTests.array_in_utf8_two_in_out_of_order "1", [-1, 0, 1, 2], "2"
1414
1456
  pass
1415
1457
  end
1416
1458
 
1417
- it 'has a working function #array_inout' do
1459
+ it "has a working function #array_inout" do
1418
1460
  res = GIMarshallingTests.array_inout [-1, 0, 1, 2]
1419
- res.must_be :==, [-2, -1, 0, 1, 2]
1461
+ _(res).must_be :==, [-2, -1, 0, 1, 2]
1420
1462
  end
1421
1463
 
1422
- it 'has a working function #array_inout_etc' do
1464
+ it "has a working function #array_inout_etc" do
1423
1465
  arr, sum = GIMarshallingTests.array_inout_etc 42, [-1, 0, 1, 2], 24
1424
- arr.must_be :==, [42, -1, 0, 1, 24]
1425
- sum.must_equal 42 + 24
1466
+ _(arr).must_be :==, [42, -1, 0, 1, 24]
1467
+ _(sum).must_equal 42 + 24
1426
1468
  end
1427
1469
 
1428
- it 'has a working function #array_out' do
1470
+ it "has a working function #array_int64_in" do
1471
+ skip_below "1.51.1"
1472
+ GIMarshallingTests.array_int64_in [-1, 0, 1, 2]
1473
+ end
1474
+
1475
+ it "has a working function #array_out" do
1429
1476
  res = GIMarshallingTests.array_out
1430
- res.must_be :==, [-1, 0, 1, 2]
1477
+ _(res).must_be :==, [-1, 0, 1, 2]
1431
1478
  end
1432
1479
 
1433
- it 'has a working function #array_out_etc' do
1480
+ it "has a working function #array_out_etc" do
1434
1481
  arr, sum = GIMarshallingTests.array_out_etc 42, 24
1435
- arr.must_be :==, [42, 0, 1, 24]
1436
- sum.must_equal 42 + 24
1482
+ _(arr).must_be :==, [42, 0, 1, 24]
1483
+ _(sum).must_equal 42 + 24
1437
1484
  end
1438
1485
 
1439
- it 'has a working function #array_return' do
1486
+ it "has a working function #array_return" do
1440
1487
  res = GIMarshallingTests.array_return
1441
- res.must_be :==, [-1, 0, 1, 2]
1488
+ _(res).must_be :==, [-1, 0, 1, 2]
1442
1489
  end
1443
1490
 
1444
- it 'has a working function #array_return_etc' do
1491
+ it "has a working function #array_return_etc" do
1445
1492
  arr, sum = GIMarshallingTests.array_return_etc 42, 24
1446
- arr.must_be :==, [42, 0, 1, 24]
1447
- sum.must_equal 42 + 24
1493
+ _(arr).must_be :==, [42, 0, 1, 24]
1494
+ _(sum).must_equal 42 + 24
1448
1495
  end
1449
1496
 
1450
- it 'has a working function #array_simple_struct_in' do
1497
+ it "has a working function #array_simple_struct_in" do
1451
1498
  arr = [1, 2, 3].map do |val|
1452
1499
  GIMarshallingTests::SimpleStruct.new.tap { |struct| struct.long_ = val }
1453
1500
  end
1454
1501
  GIMarshallingTests.array_simple_struct_in arr
1455
1502
  end
1456
1503
 
1457
- it 'has a working function #array_string_in' do
1504
+ it "has a working function #array_string_in" do
1458
1505
  GIMarshallingTests.array_string_in %w(foo bar)
1459
1506
  pass
1460
1507
  end
1461
1508
 
1462
- it 'has a working function #array_struct_in' do
1509
+ it "has a working function #array_struct_in" do
1463
1510
  arr = [1, 2, 3].map do |val|
1464
1511
  GIMarshallingTests::BoxedStruct.new.tap { |struct| struct.long_ = val }
1465
1512
  end
1466
1513
  GIMarshallingTests.array_struct_in arr
1467
1514
  end
1468
1515
 
1469
- it 'has a working function #array_struct_take_in' do
1516
+ it "has a working function #array_struct_take_in" do
1470
1517
  arr = [1, 2, 3].map do |val|
1471
1518
  GIMarshallingTests::BoxedStruct.new.tap { |struct| struct.long_ = val }
1472
1519
  end
1473
1520
  # NOTE: This copies values so arr's elements stay valid
1474
1521
  GIMarshallingTests.array_struct_take_in arr
1475
1522
 
1476
- arr.map(&:long_).must_equal [1, 2, 3]
1523
+ _(arr.map(&:long_)).must_equal [1, 2, 3]
1477
1524
  end
1478
1525
 
1479
- it 'has a working function #array_struct_value_in' do
1480
- skip unless get_introspection_data 'GIMarshallingTests', 'array_struct_value_in'
1526
+ it "has a working function #array_struct_value_in" do
1481
1527
  arr = [1, 2, 3].map do |val|
1482
1528
  GIMarshallingTests::BoxedStruct.new.tap { |struct| struct.long_ = val }
1483
1529
  end
1484
1530
  GIMarshallingTests.array_struct_value_in arr
1485
1531
  end
1486
1532
 
1487
- it 'has a working function #array_uint8_in' do
1488
- arr = 'abcd'.bytes.to_a
1533
+ it "has a working function #array_uint64_in" do
1534
+ skip_below "1.51.1"
1535
+ GIMarshallingTests.array_uint64_in [-1, 0, 1, 2]
1536
+ end
1537
+
1538
+ it "has a working function #array_uint8_in" do
1539
+ arr = "abcd".bytes.to_a
1489
1540
  GIMarshallingTests.array_uint8_in arr
1490
1541
  pass
1491
1542
  end
1492
1543
 
1493
- it 'has a working function #array_zero_terminated_in' do
1544
+ it "has a working function #array_unichar_in" do
1545
+ skip_below "1.51.1"
1546
+ arr = [0x63, 0x6f, 0x6e, 0x73, 0x74,
1547
+ 0x20, 0x2665, 0x20, 0x75, 0x74,
1548
+ 0x66, 0x38]
1549
+ GIMarshallingTests.array_unichar_in arr
1550
+ end
1551
+
1552
+ it "has a working function #array_unichar_out" do
1553
+ skip_below "1.51.1"
1554
+ result = GIMarshallingTests.array_unichar_out
1555
+ _(result.to_a).must_equal [0x63, 0x6f, 0x6e, 0x73, 0x74,
1556
+ 0x20, 0x2665, 0x20, 0x75, 0x74,
1557
+ 0x66, 0x38]
1558
+ end
1559
+
1560
+ it "has a working function #array_zero_terminated_in" do
1494
1561
  GIMarshallingTests.array_zero_terminated_in %w(0 1 2)
1495
1562
  pass
1496
1563
  end
1497
1564
 
1498
- it 'has a working function #array_zero_terminated_inout' do
1565
+ it "has a working function #array_zero_terminated_inout" do
1499
1566
  res = GIMarshallingTests.array_zero_terminated_inout %w(0 1 2)
1500
- res.must_be :==, ['-1', '0', '1', '2']
1567
+ _(res).must_be :==, ["-1", "0", "1", "2"]
1501
1568
  end
1502
1569
 
1503
- it 'has a working function #array_zero_terminated_out' do
1570
+ it "has a working function #array_zero_terminated_out" do
1504
1571
  res = GIMarshallingTests.array_zero_terminated_out
1505
- res.must_be :==, %w(0 1 2)
1572
+ _(res).must_be :==, %w(0 1 2)
1506
1573
  end
1507
1574
 
1508
- it 'has a working function #array_zero_terminated_return' do
1575
+ it "has a working function #array_zero_terminated_return" do
1509
1576
  res = GIMarshallingTests.array_zero_terminated_return
1510
- res.must_be :==, %w(0 1 2)
1577
+ _(res).must_be :==, %w(0 1 2)
1511
1578
  end
1512
1579
 
1513
- it 'has a working function #array_zero_terminated_return_null' do
1580
+ it "has a working function #array_zero_terminated_return_null" do
1514
1581
  res = GIMarshallingTests.array_zero_terminated_return_null
1515
- res.must_be :==, []
1582
+ _(res).must_be :==, []
1516
1583
  end
1517
1584
 
1518
- it 'has a working function #array_zero_terminated_return_struct' do
1585
+ it "has a working function #array_zero_terminated_return_struct" do
1519
1586
  res = GIMarshallingTests.array_zero_terminated_return_struct
1520
- res.to_a.map(&:long_).must_equal [42, 43, 44]
1587
+ _(res.to_a.map(&:long_)).must_equal [42, 43, 44]
1521
1588
  end
1522
1589
 
1523
- it 'has a working function #boolean_in_false' do
1590
+ it "has a working function #array_zero_terminated_return_unichar" do
1591
+ skip_below "1.51.1"
1592
+ res = GIMarshallingTests.array_zero_terminated_return_unichar
1593
+ _(res.to_a).must_equal [0x63, 0x6f, 0x6e, 0x73, 0x74,
1594
+ 0x20, 0x2665, 0x20, 0x75, 0x74,
1595
+ 0x66, 0x38]
1596
+ end
1597
+
1598
+ it "has a working function #boolean_in_false" do
1524
1599
  GIMarshallingTests.boolean_in_false false
1525
1600
  pass
1526
1601
  end
1527
1602
 
1528
- it 'has a working function #boolean_in_true' do
1603
+ it "has a working function #boolean_in_true" do
1529
1604
  GIMarshallingTests.boolean_in_true true
1530
1605
  pass
1531
1606
  end
1532
1607
 
1533
- it 'has a working function #boolean_inout_false_true' do
1608
+ it "has a working function #boolean_inout_false_true" do
1534
1609
  res = GIMarshallingTests.boolean_inout_false_true false
1535
- res.must_equal true
1610
+ _(res).must_equal true
1536
1611
  end
1537
1612
 
1538
- it 'has a working function #boolean_inout_true_false' do
1613
+ it "has a working function #boolean_inout_true_false" do
1539
1614
  res = GIMarshallingTests.boolean_inout_true_false true
1540
- res.must_equal false
1615
+ _(res).must_equal false
1541
1616
  end
1542
1617
 
1543
- it 'has a working function #boolean_out_false' do
1618
+ it "has a working function #boolean_out_false" do
1544
1619
  res = GIMarshallingTests.boolean_out_false
1545
- res.must_equal false
1620
+ _(res).must_equal false
1546
1621
  end
1547
1622
 
1548
- it 'has a working function #boolean_out_true' do
1623
+ it "has a working function #boolean_out_true" do
1549
1624
  res = GIMarshallingTests.boolean_out_true
1550
- res.must_equal true
1625
+ _(res).must_equal true
1551
1626
  end
1552
1627
 
1553
- it 'has a working function #boolean_return_false' do
1628
+ it "has a working function #boolean_return_false" do
1554
1629
  res = GIMarshallingTests.boolean_return_false
1555
- res.must_equal false
1630
+ _(res).must_equal false
1556
1631
  end
1557
1632
 
1558
- it 'has a working function #boolean_return_true' do
1633
+ it "has a working function #boolean_return_true" do
1559
1634
  res = GIMarshallingTests.boolean_return_true
1560
- res.must_equal true
1635
+ _(res).must_equal true
1561
1636
  end
1562
1637
 
1563
- it 'has a working function #boxed_struct_inout' do
1638
+ it "has a working function #boxed_struct_inout" do
1564
1639
  bx = GIMarshallingTests::BoxedStruct.new
1565
1640
  bx.long_ = 42
1566
1641
  res = GIMarshallingTests.boxed_struct_inout bx
1567
- res.long_.must_equal 0
1642
+ _(res.long_).must_equal 0
1568
1643
  end
1569
1644
 
1570
- it 'has a working function #boxed_struct_out' do
1645
+ it "has a working function #boxed_struct_out" do
1571
1646
  res = GIMarshallingTests.boxed_struct_out
1572
- res.long_.must_equal 42
1647
+ _(res.long_).must_equal 42
1573
1648
  end
1574
1649
 
1575
- it 'has a working function #boxed_struct_returnv' do
1650
+ it "has a working function #boxed_struct_returnv" do
1576
1651
  res = GIMarshallingTests.boxed_struct_returnv
1577
- res.long_.must_equal 42
1578
- res.g_strv.must_be :==, %w(0 1 2)
1652
+ _(res.long_).must_equal 42
1653
+ _(res.g_strv).must_be :==, %w(0 1 2)
1579
1654
  end
1580
1655
 
1581
- it 'has a working function #bytearray_full_return' do
1656
+ it "has a working function #bytearray_full_return" do
1582
1657
  ret = GIMarshallingTests.bytearray_full_return
1583
1658
  assert_instance_of GLib::ByteArray, ret
1584
1659
  assert_includes(
1585
- ['0123'.bytes.to_a, "\x001\xFF3".bytes.to_a],
1660
+ ["0123".bytes.to_a, "\x001\xFF3".bytes.to_a],
1586
1661
  ret.to_string.bytes.to_a)
1587
1662
  end
1588
1663
 
1589
- it 'has a working function #bytearray_none_in' do
1664
+ it "has a working function #bytearray_none_in" do
1590
1665
  val = GIMarshallingTests.bytearray_full_return.to_string
1591
1666
  ba = GLib::ByteArray.new
1592
1667
  ba = ba.append val
@@ -1594,647 +1669,687 @@ describe GIMarshallingTests do
1594
1669
  pass
1595
1670
  end
1596
1671
 
1597
- it 'has a working function #callback_multiple_out_parameters' do
1672
+ it "has a working function #callback_multiple_out_parameters" do
1598
1673
  result = GIMarshallingTests.callback_multiple_out_parameters do |*_args|
1599
1674
  [12.0, 13.0]
1600
1675
  end
1601
- result.must_equal [12.0, 13.0]
1676
+ _(result).must_equal [12.0, 13.0]
1602
1677
  end
1603
1678
 
1604
- it 'has a working function #callback_one_out_parameter' do
1679
+ it "has a working function #callback_one_out_parameter" do
1605
1680
  result = GIMarshallingTests.callback_one_out_parameter { 42.0 }
1606
- result.must_equal 42.0
1681
+ _(result).must_equal 42.0
1607
1682
  end
1608
1683
 
1609
- it 'has a working function #callback_owned_boxed' do
1610
- skip unless get_introspection_data 'GIMarshallingTests', 'callback_owned_boxed'
1684
+ it "has a working function #callback_owned_boxed" do
1611
1685
  a = nil
1612
1686
 
1613
1687
  callback = proc { |box, _callback_data| a = box.long_ * 2 }
1614
1688
 
1615
1689
  result = GIMarshallingTests.callback_owned_boxed(&callback)
1616
- result.must_equal 1
1617
- a.must_equal 2
1690
+ _(result).must_equal 1
1691
+ _(a).must_equal 2
1618
1692
 
1619
1693
  result = GIMarshallingTests.callback_owned_boxed(&callback)
1620
- result.must_equal 2
1621
- a.must_equal 4
1694
+ _(result).must_equal 2
1695
+ _(a).must_equal 4
1622
1696
  end
1623
1697
 
1624
- it 'has a working function #callback_return_value_and_multiple_out_parameters' do
1698
+ it "has a working function #callback_return_value_and_multiple_out_parameters" do
1625
1699
  result = GIMarshallingTests.callback_return_value_and_multiple_out_parameters do |*_args|
1626
1700
  [42, -142, 3]
1627
1701
  end
1628
- result.must_equal [42, -142, 3]
1702
+ _(result).must_equal [42, -142, 3]
1629
1703
  end
1630
1704
 
1631
- it 'has a working function #callback_return_value_and_one_out_parameter' do
1705
+ it "has a working function #callback_return_value_and_one_out_parameter" do
1632
1706
  result = GIMarshallingTests.callback_return_value_and_one_out_parameter do |*_args|
1633
1707
  [42, -142]
1634
1708
  end
1635
- result.must_equal [42, -142]
1709
+ _(result).must_equal [42, -142]
1636
1710
  end
1637
1711
 
1638
- it 'has a working function #callback_return_value_only' do
1712
+ it "has a working function #callback_return_value_only" do
1639
1713
  result = GIMarshallingTests.callback_return_value_only { 42 }
1640
- result.must_equal 42
1714
+ _(result).must_equal 42
1641
1715
  end
1642
1716
 
1643
- it 'has a working function #double_in' do
1717
+ it "has a working function #double_in" do
1644
1718
  GIMarshallingTests.double_in Float::MAX
1645
1719
  pass
1646
1720
  end
1647
1721
 
1648
- it 'has a working function #double_inout' do
1722
+ it "has a working function #double_inout" do
1649
1723
  ret = GIMarshallingTests.double_inout Float::MAX
1650
1724
  assert_in_epsilon 2.225e-308, ret
1651
1725
  end
1652
1726
 
1653
- it 'has a working function #double_out' do
1727
+ it "has a working function #double_out" do
1654
1728
  ret = GIMarshallingTests.double_out
1655
- ret.must_equal Float::MAX
1729
+ _(ret).must_equal Float::MAX
1656
1730
  end
1657
1731
 
1658
- it 'has a working function #double_return' do
1732
+ it "has a working function #double_return" do
1659
1733
  ret = GIMarshallingTests.double_return
1660
- ret.must_equal Float::MAX
1734
+ _(ret).must_equal Float::MAX
1661
1735
  end
1662
1736
 
1663
- it 'has a working function #enum_in' do
1737
+ it "has a working function #enum_in" do
1664
1738
  GIMarshallingTests.enum_in :value3
1665
1739
  pass
1666
1740
  end
1667
1741
 
1668
- it 'has a working function #enum_inout' do
1742
+ it "has a working function #enum_inout" do
1669
1743
  e = GIMarshallingTests.enum_inout :value3
1670
- e.must_equal :value1
1744
+ _(e).must_equal :value1
1671
1745
  end
1672
1746
 
1673
- it 'has a working function #enum_out' do
1747
+ it "has a working function #enum_out" do
1674
1748
  e = GIMarshallingTests.enum_out
1675
- e.must_equal :value3
1749
+ _(e).must_equal :value3
1676
1750
  end
1677
1751
 
1678
- it 'has a working function #enum_returnv' do
1752
+ it "has a working function #enum_returnv" do
1679
1753
  e = GIMarshallingTests.enum_returnv
1680
- e.must_equal :value3
1754
+ _(e).must_equal :value3
1681
1755
  end
1682
1756
 
1683
- it 'has a working function #filename_list_return' do
1757
+ it "has a working function #filename_list_return" do
1684
1758
  fl = GIMarshallingTests.filename_list_return
1685
- fl.must_be_nil
1759
+ _(fl).must_be_nil
1686
1760
  end
1687
1761
 
1688
- it 'has a working function #flags_in' do
1762
+ it "has a working function #flags_in" do
1689
1763
  GIMarshallingTests.flags_in value2: true
1690
1764
  pass
1691
1765
  end
1692
1766
 
1693
- it 'has a working function #flags_in_zero' do
1767
+ it "has a working function #flags_in_zero" do
1694
1768
  GIMarshallingTests.flags_in_zero 0
1695
1769
  pass
1696
1770
  end
1697
1771
 
1698
- it 'has a working function #flags_inout' do
1772
+ it "has a working function #flags_inout" do
1699
1773
  res = GIMarshallingTests.flags_inout value2: true
1700
- res.must_equal(value1: true)
1774
+ _(res).must_equal(value1: true)
1701
1775
  end
1702
1776
 
1703
- it 'has a working function #flags_out' do
1777
+ it "has a working function #flags_out" do
1704
1778
  res = GIMarshallingTests.flags_out
1705
- res.must_equal(value2: true)
1779
+ _(res).must_equal(value2: true)
1706
1780
  end
1707
1781
 
1708
- it 'has a working function #flags_returnv' do
1782
+ it "has a working function #flags_returnv" do
1709
1783
  res = GIMarshallingTests.flags_returnv
1710
- res.must_equal(value2: true)
1784
+ _(res).must_equal(value2: true)
1711
1785
  end
1712
1786
 
1713
- it 'has a working function #float_in' do
1787
+ it "has a working function #float_in" do
1714
1788
  # float_return returns MAX_FLT
1715
1789
  flt = GIMarshallingTests.float_return
1716
1790
  GIMarshallingTests.float_in flt
1717
1791
  pass
1718
1792
  end
1719
1793
 
1720
- it 'has a working function #float_inout' do
1794
+ it "has a working function #float_inout" do
1721
1795
  # float_return returns MAX_FLT
1722
1796
  flt = GIMarshallingTests.float_return
1723
1797
  res = GIMarshallingTests.float_inout flt
1724
1798
  assert_in_epsilon 1.175e-38, res
1725
1799
  end
1726
1800
 
1727
- it 'has a working function #float_out' do
1801
+ it "has a working function #float_out" do
1728
1802
  flt = GIMarshallingTests.float_out
1729
1803
  assert_in_epsilon 3.402e+38, flt
1730
1804
  end
1731
1805
 
1732
- it 'has a working function #float_return' do
1806
+ it "has a working function #float_return" do
1733
1807
  flt = GIMarshallingTests.float_return
1734
1808
  assert_in_epsilon 3.402e+38, flt
1735
1809
  end
1736
1810
 
1737
- it 'has a working function #garray_int_none_in' do
1811
+ it "has a working function #garray_bool_none_in" do
1812
+ skip_below "1.51.1"
1813
+ GIMarshallingTests.garray_bool_none_in [true, false, true, true]
1814
+ end
1815
+
1816
+ it "has a working function #garray_boxed_struct_full_return" do
1817
+ skip_below "1.61.1"
1818
+ result = GIMarshallingTests.garray_boxed_struct_full_return
1819
+ _(result.map(&:long_)).must_equal [42, 43, 44]
1820
+ end
1821
+
1822
+ it "has a working function #garray_int_none_in" do
1738
1823
  arr = [-1, 0, 1, 2]
1739
1824
  GIMarshallingTests.garray_int_none_in arr
1740
1825
  pass
1741
1826
  end
1742
1827
 
1743
- it 'has a working function #garray_int_none_return' do
1828
+ it "has a working function #garray_int_none_return" do
1744
1829
  arr = GIMarshallingTests.garray_int_none_return
1745
- arr.must_be :==, [-1, 0, 1, 2]
1830
+ _(arr).must_be :==, [-1, 0, 1, 2]
1746
1831
  end
1747
1832
 
1748
- it 'has a working function #garray_uint64_none_in' do
1749
- skip unless get_introspection_data 'GIMarshallingTests', 'garray_uint64_none_in'
1833
+ it "has a working function #garray_uint64_none_in" do
1750
1834
  GIMarshallingTests.garray_uint64_none_in [0, 0xffff_ffff_ffff_ffff]
1751
1835
  pass
1752
1836
  end
1753
1837
 
1754
- it 'has a working function #garray_uint64_none_return' do
1755
- skip unless get_introspection_data 'GIMarshallingTests', 'garray_uint64_none_return'
1838
+ it "has a working function #garray_uint64_none_return" do
1756
1839
  res = GIMarshallingTests.garray_uint64_none_return
1757
- res.must_be :==, [0, 0xffff_ffff_ffff_ffff]
1840
+ _(res).must_be :==, [0, 0xffff_ffff_ffff_ffff]
1841
+ end
1842
+
1843
+ it "has a working function #garray_unichar_none_in" do
1844
+ skip_below "1.51.1"
1845
+ arr = [0x63, 0x6f, 0x6e, 0x73, 0x74,
1846
+ 0x20, 0x2665, 0x20, 0x75, 0x74,
1847
+ 0x66, 0x38]
1848
+ GIMarshallingTests.garray_unichar_none_in arr
1758
1849
  end
1759
1850
 
1760
- it 'has a working function #garray_utf8_container_inout' do
1851
+ it "has a working function #garray_utf8_container_inout" do
1761
1852
  res = GIMarshallingTests.garray_utf8_container_inout %w(0 1 2)
1762
- res.must_be :==, ['-2', '-1', '0', '1']
1853
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
1763
1854
  end
1764
1855
 
1765
- it 'has a working function #garray_utf8_container_out' do
1856
+ it "has a working function #garray_utf8_container_out" do
1766
1857
  res = GIMarshallingTests.garray_utf8_container_out
1767
- res.must_be :==, %w(0 1 2)
1858
+ _(res).must_be :==, %w(0 1 2)
1768
1859
  end
1769
1860
 
1770
- it 'has a working function #garray_utf8_container_return' do
1861
+ it "has a working function #garray_utf8_container_return" do
1771
1862
  res = GIMarshallingTests.garray_utf8_container_return
1772
- res.must_be :==, %w(0 1 2)
1863
+ _(res).must_be :==, %w(0 1 2)
1773
1864
  end
1774
1865
 
1775
- it 'has a working function #garray_utf8_full_inout' do
1866
+ it "has a working function #garray_utf8_full_inout" do
1776
1867
  arr = %w(0 1 2)
1777
1868
  res = GIMarshallingTests.garray_utf8_full_inout arr
1778
- res.must_be :==, ['-2', '-1', '0', '1']
1869
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
1779
1870
  end
1780
1871
 
1781
- it 'has a working function #garray_utf8_full_out' do
1872
+ it "has a working function #garray_utf8_full_out" do
1782
1873
  res = GIMarshallingTests.garray_utf8_full_out
1783
- res.must_be :==, %w(0 1 2)
1874
+ _(res).must_be :==, %w(0 1 2)
1784
1875
  end
1785
1876
 
1786
- it 'has a working function #garray_utf8_full_out_caller_allocated' do
1787
- skip unless get_introspection_data 'GIMarshallingTests',
1788
- 'garray_utf8_full_out_caller_allocated'
1877
+ it "has a working function #garray_utf8_full_out_caller_allocated" do
1789
1878
  res = GIMarshallingTests.garray_utf8_full_out_caller_allocated
1790
- res.must_be :==, %w(0 1 2)
1879
+ _(res).must_be :==, %w(0 1 2)
1791
1880
  end
1792
1881
 
1793
- it 'has a working function #garray_utf8_full_return' do
1882
+ it "has a working function #garray_utf8_full_return" do
1794
1883
  res = GIMarshallingTests.garray_utf8_full_return
1795
- res.must_be :==, %w(0 1 2)
1884
+ _(res).must_be :==, %w(0 1 2)
1796
1885
  end
1797
1886
 
1798
- it 'has a working function #garray_utf8_none_in' do
1887
+ it "has a working function #garray_utf8_none_in" do
1799
1888
  arr = %w(0 1 2)
1800
1889
  GIMarshallingTests.garray_utf8_none_in arr
1801
1890
  pass
1802
1891
  end
1803
1892
 
1804
- it 'has a working function #garray_utf8_none_inout' do
1893
+ it "has a working function #garray_utf8_none_inout" do
1805
1894
  arr = %w(0 1 2)
1806
1895
  res = GIMarshallingTests.garray_utf8_none_inout arr
1807
- res.must_be :==, ['-2', '-1', '0', '1']
1896
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
1808
1897
  end
1809
1898
 
1810
- it 'has a working function #garray_utf8_none_out' do
1899
+ it "has a working function #garray_utf8_none_out" do
1811
1900
  res = GIMarshallingTests.garray_utf8_none_out
1812
- res.must_be :==, %w(0 1 2)
1901
+ _(res).must_be :==, %w(0 1 2)
1813
1902
  end
1814
1903
 
1815
- it 'has a working function #garray_utf8_none_return' do
1904
+ it "has a working function #garray_utf8_none_return" do
1816
1905
  res = GIMarshallingTests.garray_utf8_none_return
1817
- res.must_be :==, %w(0 1 2)
1906
+ _(res).must_be :==, %w(0 1 2)
1818
1907
  end
1819
1908
 
1820
- it 'has a working function #gbytes_full_return' do
1821
- skip unless get_introspection_data 'GIMarshallingTests', 'gbytes_full_return'
1909
+ it "has a working function #gbytes_full_return" do
1822
1910
  res = GIMarshallingTests.gbytes_full_return
1823
- res.to_a.must_equal [0, 49, 0xFF, 51]
1911
+ _(res.to_a).must_equal [0, 49, 0xFF, 51]
1824
1912
  end
1825
1913
 
1826
- it 'has a working function #gbytes_none_in' do
1827
- skip unless get_introspection_data 'GIMarshallingTests', 'gbytes_none_in'
1914
+ it "has a working function #gbytes_none_in" do
1828
1915
  GIMarshallingTests.gbytes_none_in [0, 49, 0xFF, 51]
1829
1916
  pass
1830
1917
  end
1831
1918
 
1832
- it 'has a working function #gclosure_in' do
1919
+ it "has a working function #gclosure_in" do
1833
1920
  cl = GObject::RubyClosure.new { 42 }
1834
1921
  GIMarshallingTests.gclosure_in cl
1835
1922
  pass
1836
1923
  end
1837
1924
 
1838
- it 'has a working function #gclosure_return' do
1925
+ it "has a working function #gclosure_return" do
1839
1926
  cl = GIMarshallingTests.gclosure_return
1840
1927
  gv = GObject::Value.wrap_ruby_value 0
1841
1928
  result = cl.invoke gv, []
1842
- gv.get_value.must_equal 42
1843
- result.must_equal 42
1929
+ _(gv.get_value).must_equal 42
1930
+ _(result).must_equal 42
1844
1931
  end
1845
1932
 
1846
- it 'has a working function #genum_in' do
1933
+ it "has a working function #genum_in" do
1847
1934
  GIMarshallingTests.genum_in :value3
1848
1935
  pass
1849
1936
  end
1850
1937
 
1851
- it 'has a working function #genum_inout' do
1938
+ it "has a working function #genum_inout" do
1852
1939
  res = GIMarshallingTests.genum_inout :value3
1853
- res.must_equal :value1
1940
+ _(res).must_equal :value1
1854
1941
  end
1855
1942
 
1856
- it 'has a working function #genum_out' do
1943
+ it "has a working function #genum_out" do
1857
1944
  res = GIMarshallingTests.genum_out
1858
- res.must_equal :value3
1945
+ _(res).must_equal :value3
1859
1946
  end
1860
1947
 
1861
- it 'has a working function #genum_returnv' do
1948
+ it "has a working function #genum_returnv" do
1862
1949
  res = GIMarshallingTests.genum_returnv
1863
- res.must_equal :value3
1950
+ _(res).must_equal :value3
1864
1951
  end
1865
1952
 
1866
- it 'has a working function #gerror' do
1953
+ it "has a working function #gerror" do
1867
1954
  begin
1868
1955
  GIMarshallingTests.gerror
1869
- flunk 'Error should have been raised'
1956
+ flunk "Error should have been raised"
1870
1957
  rescue GirFFI::GLibError => e
1871
- e.message.must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1872
- e.domain.must_equal GIMarshallingTests::CONSTANT_GERROR_DOMAIN
1873
- e.code.must_equal GIMarshallingTests::CONSTANT_GERROR_CODE
1958
+ _(e.message).must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1959
+ _(e.domain).must_equal GIMarshallingTests::CONSTANT_GERROR_DOMAIN
1960
+ _(e.code).must_equal GIMarshallingTests::CONSTANT_GERROR_CODE
1874
1961
  end
1875
1962
  end
1876
1963
 
1877
- it 'has a working function #gerror_array_in' do
1964
+ it "has a working function #gerror_array_in" do
1878
1965
  begin
1879
1966
  GIMarshallingTests.gerror_array_in [1, 2, 3]
1880
- flunk 'Error should have been raised'
1967
+ flunk "Error should have been raised"
1881
1968
  rescue GirFFI::GLibError => e
1882
- e.message.must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1883
- e.domain.must_equal GIMarshallingTests::CONSTANT_GERROR_DOMAIN
1884
- e.code.must_equal GIMarshallingTests::CONSTANT_GERROR_CODE
1969
+ _(e.message).must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1970
+ _(e.domain).must_equal GIMarshallingTests::CONSTANT_GERROR_DOMAIN
1971
+ _(e.code).must_equal GIMarshallingTests::CONSTANT_GERROR_CODE
1885
1972
  end
1886
1973
  end
1887
1974
 
1888
- it 'has a working function #gerror_out' do
1975
+ it "has a working function #gerror_out" do
1889
1976
  error, debug = GIMarshallingTests.gerror_out
1890
- debug.must_equal GIMarshallingTests::CONSTANT_GERROR_DEBUG_MESSAGE
1891
- error.message.must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1977
+ _(debug).must_equal GIMarshallingTests::CONSTANT_GERROR_DEBUG_MESSAGE
1978
+ _(error.message).must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1892
1979
  end
1893
1980
 
1894
- it 'has a working function #gerror_out_transfer_none' do
1981
+ it "has a working function #gerror_out_transfer_none" do
1895
1982
  error, debug = GIMarshallingTests.gerror_out_transfer_none
1896
- debug.must_equal GIMarshallingTests::CONSTANT_GERROR_DEBUG_MESSAGE
1897
- error.message.must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1983
+ _(debug).must_equal GIMarshallingTests::CONSTANT_GERROR_DEBUG_MESSAGE
1984
+ _(error.message).must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1898
1985
  end
1899
1986
 
1900
- it 'has a working function #gerror_return' do
1987
+ it "has a working function #gerror_return" do
1901
1988
  error = GIMarshallingTests.gerror_return
1902
- error.message.must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1989
+ _(error.message).must_equal GIMarshallingTests::CONSTANT_GERROR_MESSAGE
1903
1990
  end
1904
1991
 
1905
- it 'has a working function #ghashtable_int_none_in' do
1992
+ it "has a working function #ghashtable_double_in" do
1993
+ skip_below "1.51.2"
1994
+ GIMarshallingTests.ghashtable_double_in(
1995
+ "-1" => -0.1, "0" => 0.0, "1" => 0.1, "2" => 0.2)
1996
+ end
1997
+
1998
+ it "has a working function #ghashtable_float_in" do
1999
+ skip_below "1.51.2"
2000
+ GIMarshallingTests.ghashtable_float_in(
2001
+ "-1" => -0.1, "0" => 0.0, "1" => 0.1, "2" => 0.2)
2002
+ end
2003
+
2004
+ it "has a working function #ghashtable_int64_in" do
2005
+ skip_below "1.51.2"
2006
+ GIMarshallingTests.ghashtable_int64_in(
2007
+ "-1" => -1, "0" => 0, "1" => 1, "2" => 0x100000000)
2008
+ end
2009
+
2010
+ it "has a working function #ghashtable_int_none_in" do
1906
2011
  GIMarshallingTests.ghashtable_int_none_in(
1907
2012
  -1 => 1, 0 => 0, 1 => -1, 2 => -2)
1908
2013
  end
1909
2014
 
1910
- it 'has a working function #ghashtable_int_none_return' do
2015
+ it "has a working function #ghashtable_int_none_return" do
1911
2016
  gh = GIMarshallingTests.ghashtable_int_none_return
1912
2017
  assert_equal({ -1 => 1, 0 => 0, 1 => -1, 2 => -2 }, gh.to_hash)
1913
2018
  end
1914
2019
 
1915
- it 'has a working function #ghashtable_utf8_container_in' do
1916
- skip 'This function is defined in the header but not implemented'
2020
+ it "has a working function #ghashtable_uint64_in" do
2021
+ skip_below "1.51.2"
2022
+ GIMarshallingTests.ghashtable_uint64_in(
2023
+ "-1" => 0x100000000, "0" => 0, "1" => 1, "2" => 2)
1917
2024
  end
1918
2025
 
1919
- it 'has a working function #ghashtable_utf8_container_inout' do
1920
- hsh = { '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' }
2026
+ it "has a working function #ghashtable_utf8_container_in" do
2027
+ skip "This function is defined in the header but not implemented"
2028
+ end
2029
+
2030
+ it "has a working function #ghashtable_utf8_container_inout" do
2031
+ hsh = { "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" }
1921
2032
  res = GIMarshallingTests.ghashtable_utf8_container_inout hsh
1922
- assert_equal({ '-1' => '1', '0' => '0', '1' => '1' }, res.to_hash)
2033
+ assert_equal({ "-1" => "1", "0" => "0", "1" => "1" }, res.to_hash)
1923
2034
  end
1924
2035
 
1925
- it 'has a working function #ghashtable_utf8_container_out' do
2036
+ it "has a working function #ghashtable_utf8_container_out" do
1926
2037
  res = GIMarshallingTests.ghashtable_utf8_container_out
1927
- assert_equal({ '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' },
2038
+ assert_equal({ "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" },
1928
2039
  res.to_hash)
1929
2040
  end
1930
2041
 
1931
- it 'has a working function #ghashtable_utf8_container_return' do
2042
+ it "has a working function #ghashtable_utf8_container_return" do
1932
2043
  res = GIMarshallingTests.ghashtable_utf8_container_return
1933
- assert_equal({ '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' },
2044
+ assert_equal({ "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" },
1934
2045
  res.to_hash)
1935
2046
  end
1936
2047
 
1937
- it 'has a working function #ghashtable_utf8_full_in' do
1938
- skip 'This function is defined in the header but not implemented'
2048
+ it "has a working function #ghashtable_utf8_full_in" do
2049
+ skip "This function is defined in the header but not implemented"
1939
2050
  end
1940
2051
 
1941
- it 'has a working function #ghashtable_utf8_full_inout' do
1942
- hsh = { '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' }
2052
+ it "has a working function #ghashtable_utf8_full_inout" do
2053
+ hsh = { "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" }
1943
2054
  res = GIMarshallingTests.ghashtable_utf8_full_inout hsh
1944
- assert_equal({ '-1' => '1', '0' => '0', '1' => '1' }, res.to_hash)
2055
+ assert_equal({ "-1" => "1", "0" => "0", "1" => "1" }, res.to_hash)
1945
2056
  end
1946
2057
 
1947
- it 'has a working function #ghashtable_utf8_full_out' do
2058
+ it "has a working function #ghashtable_utf8_full_out" do
1948
2059
  res = GIMarshallingTests.ghashtable_utf8_full_out
1949
- assert_equal({ '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' },
2060
+ assert_equal({ "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" },
1950
2061
  res.to_hash)
1951
2062
  end
1952
2063
 
1953
- it 'has a working function #ghashtable_utf8_full_return' do
2064
+ it "has a working function #ghashtable_utf8_full_return" do
1954
2065
  res = GIMarshallingTests.ghashtable_utf8_full_return
1955
- assert_equal({ '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' },
2066
+ assert_equal({ "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" },
1956
2067
  res.to_hash)
1957
2068
  end
1958
2069
 
1959
- it 'has a working function #ghashtable_utf8_none_in' do
1960
- hsh = { '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' }
2070
+ it "has a working function #ghashtable_utf8_none_in" do
2071
+ hsh = { "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" }
1961
2072
  GIMarshallingTests.ghashtable_utf8_none_in hsh
1962
2073
  pass
1963
2074
  end
1964
2075
 
1965
- it 'has a working function #ghashtable_utf8_none_inout' do
1966
- hsh = { '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' }
2076
+ it "has a working function #ghashtable_utf8_none_inout" do
2077
+ hsh = { "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" }
1967
2078
  res = GIMarshallingTests.ghashtable_utf8_none_inout hsh
1968
- assert_equal({ '-1' => '1', '0' => '0', '1' => '1' }, res.to_hash)
2079
+ assert_equal({ "-1" => "1", "0" => "0", "1" => "1" }, res.to_hash)
1969
2080
  end
1970
2081
 
1971
- it 'has a working function #ghashtable_utf8_none_out' do
2082
+ it "has a working function #ghashtable_utf8_none_out" do
1972
2083
  res = GIMarshallingTests.ghashtable_utf8_none_out
1973
- assert_equal({ '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' },
2084
+ assert_equal({ "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" },
1974
2085
  res.to_hash)
1975
2086
  end
1976
2087
 
1977
- it 'has a working function #ghashtable_utf8_none_return' do
2088
+ it "has a working function #ghashtable_utf8_none_return" do
1978
2089
  res = GIMarshallingTests.ghashtable_utf8_none_return
1979
- assert_equal({ '-1' => '1', '0' => '0', '1' => '-1', '2' => '-2' },
2090
+ assert_equal({ "-1" => "1", "0" => "0", "1" => "-1", "2" => "-2" },
1980
2091
  res.to_hash)
1981
2092
  end
1982
2093
 
1983
- it 'has a working function #glist_int_none_in' do
2094
+ it "has a working function #glist_int_none_in" do
1984
2095
  GIMarshallingTests.glist_int_none_in [-1, 0, 1, 2]
1985
2096
  pass
1986
2097
  end
1987
2098
 
1988
- it 'has a working function #glist_int_none_return' do
2099
+ it "has a working function #glist_int_none_return" do
1989
2100
  res = GIMarshallingTests.glist_int_none_return
1990
- res.must_be :==, [-1, 0, 1, 2]
2101
+ _(res).must_be :==, [-1, 0, 1, 2]
1991
2102
  end
1992
2103
 
1993
- it 'has a working function #glist_uint32_none_in' do
1994
- skip unless get_introspection_data 'GIMarshallingTests', 'glist_uint32_none_in'
2104
+ it "has a working function #glist_uint32_none_in" do
1995
2105
  GIMarshallingTests.glist_uint32_none_in [0, 0xffff_ffff]
1996
2106
  pass
1997
2107
  end
1998
2108
 
1999
- it 'has a working function #glist_uint32_none_return' do
2000
- skip unless get_introspection_data 'GIMarshallingTests', 'glist_uint32_none_return'
2109
+ it "has a working function #glist_uint32_none_return" do
2001
2110
  res = GIMarshallingTests.glist_uint32_none_return
2002
- res.must_be :==, [0, 0xffff_ffff]
2111
+ _(res).must_be :==, [0, 0xffff_ffff]
2003
2112
  end
2004
2113
 
2005
- it 'has a working function #glist_utf8_container_inout' do
2114
+ it "has a working function #glist_utf8_container_inout" do
2006
2115
  res = GIMarshallingTests.glist_utf8_container_inout %w(0 1 2)
2007
- res.must_be :==, ['-2', '-1', '0', '1']
2116
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
2008
2117
  end
2009
2118
 
2010
- it 'has a working function #glist_utf8_container_out' do
2119
+ it "has a working function #glist_utf8_container_out" do
2011
2120
  res = GIMarshallingTests.glist_utf8_container_out
2012
- res.must_be :==, %w(0 1 2)
2121
+ _(res).must_be :==, %w(0 1 2)
2013
2122
  end
2014
2123
 
2015
- it 'has a working function #glist_utf8_container_return' do
2124
+ it "has a working function #glist_utf8_container_return" do
2016
2125
  res = GIMarshallingTests.glist_utf8_container_return
2017
- res.must_be :==, %w(0 1 2)
2126
+ _(res).must_be :==, %w(0 1 2)
2018
2127
  end
2019
2128
 
2020
- it 'has a working function #glist_utf8_full_inout' do
2129
+ it "has a working function #glist_utf8_full_inout" do
2021
2130
  res = GIMarshallingTests.glist_utf8_full_inout %w(0 1 2)
2022
- res.must_be :==, ['-2', '-1', '0', '1']
2131
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
2023
2132
  end
2024
2133
 
2025
- it 'has a working function #glist_utf8_full_out' do
2134
+ it "has a working function #glist_utf8_full_out" do
2026
2135
  res = GIMarshallingTests.glist_utf8_full_out
2027
- res.must_be :==, %w(0 1 2)
2136
+ _(res).must_be :==, %w(0 1 2)
2028
2137
  end
2029
2138
 
2030
- it 'has a working function #glist_utf8_full_return' do
2139
+ it "has a working function #glist_utf8_full_return" do
2031
2140
  res = GIMarshallingTests.glist_utf8_full_return
2032
- res.must_be :==, %w(0 1 2)
2141
+ _(res).must_be :==, %w(0 1 2)
2033
2142
  end
2034
2143
 
2035
- it 'has a working function #glist_utf8_none_in' do
2144
+ it "has a working function #glist_utf8_none_in" do
2036
2145
  GIMarshallingTests.glist_utf8_none_in %w(0 1 2)
2037
2146
  end
2038
2147
 
2039
- it 'has a working function #glist_utf8_none_inout' do
2148
+ it "has a working function #glist_utf8_none_inout" do
2040
2149
  res = GIMarshallingTests.glist_utf8_none_inout %w(0 1 2)
2041
- res.must_be :==, ['-2', '-1', '0', '1']
2150
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
2042
2151
  end
2043
2152
 
2044
- it 'has a working function #glist_utf8_none_out' do
2153
+ it "has a working function #glist_utf8_none_out" do
2045
2154
  res = GIMarshallingTests.glist_utf8_none_out
2046
- res.must_be :==, %w(0 1 2)
2155
+ _(res).must_be :==, %w(0 1 2)
2047
2156
  end
2048
2157
 
2049
- it 'has a working function #glist_utf8_none_return' do
2158
+ it "has a working function #glist_utf8_none_return" do
2050
2159
  res = GIMarshallingTests.glist_utf8_none_return
2051
- res.must_be :==, %w(0 1 2)
2160
+ _(res).must_be :==, %w(0 1 2)
2052
2161
  end
2053
2162
 
2054
- it 'has a working function #gptrarray_utf8_container_inout' do
2163
+ it "has a working function #gptrarray_boxed_struct_full_return" do
2164
+ skip_below "1.61.1"
2165
+ result = GIMarshallingTests.gptrarray_boxed_struct_full_return
2166
+ _(result.map(&:long_)).must_equal [42, 43, 44]
2167
+ end
2168
+
2169
+ it "has a working function #gptrarray_utf8_container_inout" do
2055
2170
  res = GIMarshallingTests.gptrarray_utf8_container_inout %w(0 1 2)
2056
- res.must_be :==, ['-2', '-1', '0', '1']
2171
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
2057
2172
  end
2058
2173
 
2059
- it 'has a working function #gptrarray_utf8_container_out' do
2174
+ it "has a working function #gptrarray_utf8_container_out" do
2060
2175
  res = GIMarshallingTests.gptrarray_utf8_container_out
2061
- res.must_be :==, %w(0 1 2)
2176
+ _(res).must_be :==, %w(0 1 2)
2062
2177
  end
2063
2178
 
2064
- it 'has a working function #gptrarray_utf8_container_return' do
2179
+ it "has a working function #gptrarray_utf8_container_return" do
2065
2180
  res = GIMarshallingTests.gptrarray_utf8_container_return
2066
- res.must_be :==, %w(0 1 2)
2181
+ _(res).must_be :==, %w(0 1 2)
2067
2182
  end
2068
2183
 
2069
- it 'has a working function #gptrarray_utf8_full_inout' do
2184
+ it "has a working function #gptrarray_utf8_full_inout" do
2070
2185
  res = GIMarshallingTests.gptrarray_utf8_full_inout %w(0 1 2)
2071
- res.must_be :==, ['-2', '-1', '0', '1']
2186
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
2072
2187
  end
2073
2188
 
2074
- it 'has a working function #gptrarray_utf8_full_out' do
2189
+ it "has a working function #gptrarray_utf8_full_out" do
2075
2190
  res = GIMarshallingTests.gptrarray_utf8_full_out
2076
- res.must_be :==, %w(0 1 2)
2191
+ _(res).must_be :==, %w(0 1 2)
2077
2192
  end
2078
2193
 
2079
- it 'has a working function #gptrarray_utf8_full_return' do
2194
+ it "has a working function #gptrarray_utf8_full_return" do
2080
2195
  res = GIMarshallingTests.gptrarray_utf8_full_return
2081
- res.must_be :==, %w(0 1 2)
2196
+ _(res).must_be :==, %w(0 1 2)
2082
2197
  end
2083
2198
 
2084
- it 'has a working function #gptrarray_utf8_none_in' do
2199
+ it "has a working function #gptrarray_utf8_none_in" do
2085
2200
  GIMarshallingTests.gptrarray_utf8_none_in %w(0 1 2)
2086
2201
  end
2087
2202
 
2088
- it 'has a working function #gptrarray_utf8_none_inout' do
2203
+ it "has a working function #gptrarray_utf8_none_inout" do
2089
2204
  res = GIMarshallingTests.gptrarray_utf8_none_inout %w(0 1 2)
2090
- res.must_be :==, ['-2', '-1', '0', '1']
2205
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
2091
2206
  end
2092
2207
 
2093
- it 'has a working function #gptrarray_utf8_none_out' do
2208
+ it "has a working function #gptrarray_utf8_none_out" do
2094
2209
  res = GIMarshallingTests.gptrarray_utf8_none_out
2095
- res.must_be :==, %w(0 1 2)
2210
+ _(res).must_be :==, %w(0 1 2)
2096
2211
  end
2097
2212
 
2098
- it 'has a working function #gptrarray_utf8_none_return' do
2213
+ it "has a working function #gptrarray_utf8_none_return" do
2099
2214
  res = GIMarshallingTests.gptrarray_utf8_none_return
2100
- res.must_be :==, %w(0 1 2)
2215
+ _(res).must_be :==, %w(0 1 2)
2101
2216
  end
2102
2217
 
2103
- it 'has a working function #gslist_int_none_in' do
2218
+ it "has a working function #gslist_int_none_in" do
2104
2219
  GIMarshallingTests.gslist_int_none_in [-1, 0, 1, 2]
2105
2220
  pass
2106
2221
  end
2107
2222
 
2108
- it 'has a working function #gslist_int_none_return' do
2223
+ it "has a working function #gslist_int_none_return" do
2109
2224
  res = GIMarshallingTests.gslist_int_none_return
2110
- res.must_be :==, [-1, 0, 1, 2]
2225
+ _(res).must_be :==, [-1, 0, 1, 2]
2111
2226
  end
2112
2227
 
2113
- it 'has a working function #gslist_utf8_container_inout' do
2228
+ it "has a working function #gslist_utf8_container_inout" do
2114
2229
  res = GIMarshallingTests.gslist_utf8_container_inout %w(0 1 2)
2115
- res.must_be :==, ['-2', '-1', '0', '1']
2230
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
2116
2231
  end
2117
2232
 
2118
- it 'has a working function #gslist_utf8_container_out' do
2233
+ it "has a working function #gslist_utf8_container_out" do
2119
2234
  res = GIMarshallingTests.gslist_utf8_container_out
2120
- res.must_be :==, %w(0 1 2)
2235
+ _(res).must_be :==, %w(0 1 2)
2121
2236
  end
2122
2237
 
2123
- it 'has a working function #gslist_utf8_container_return' do
2238
+ it "has a working function #gslist_utf8_container_return" do
2124
2239
  res = GIMarshallingTests.gslist_utf8_container_return
2125
- res.must_be :==, %w(0 1 2)
2240
+ _(res).must_be :==, %w(0 1 2)
2126
2241
  end
2127
2242
 
2128
- it 'has a working function #gslist_utf8_full_inout' do
2243
+ it "has a working function #gslist_utf8_full_inout" do
2129
2244
  res = GIMarshallingTests.gslist_utf8_full_inout %w(0 1 2)
2130
- res.must_be :==, ['-2', '-1', '0', '1']
2245
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
2131
2246
  end
2132
2247
 
2133
- it 'has a working function #gslist_utf8_full_out' do
2248
+ it "has a working function #gslist_utf8_full_out" do
2134
2249
  res = GIMarshallingTests.gslist_utf8_full_out
2135
- res.must_be :==, %w(0 1 2)
2250
+ _(res).must_be :==, %w(0 1 2)
2136
2251
  end
2137
2252
 
2138
- it 'has a working function #gslist_utf8_full_return' do
2253
+ it "has a working function #gslist_utf8_full_return" do
2139
2254
  res = GIMarshallingTests.gslist_utf8_full_return
2140
- res.must_be :==, %w(0 1 2)
2255
+ _(res).must_be :==, %w(0 1 2)
2141
2256
  end
2142
2257
 
2143
- it 'has a working function #gslist_utf8_none_in' do
2258
+ it "has a working function #gslist_utf8_none_in" do
2144
2259
  GIMarshallingTests.gslist_utf8_none_in %w(0 1 2)
2145
2260
  pass
2146
2261
  end
2147
2262
 
2148
- it 'has a working function #gslist_utf8_none_inout' do
2263
+ it "has a working function #gslist_utf8_none_inout" do
2149
2264
  res = GIMarshallingTests.gslist_utf8_none_inout %w(0 1 2)
2150
- res.must_be :==, ['-2', '-1', '0', '1']
2265
+ _(res).must_be :==, ["-2", "-1", "0", "1"]
2151
2266
  end
2152
2267
 
2153
- it 'has a working function #gslist_utf8_none_out' do
2268
+ it "has a working function #gslist_utf8_none_out" do
2154
2269
  res = GIMarshallingTests.gslist_utf8_none_out
2155
- res.must_be :==, %w(0 1 2)
2270
+ _(res).must_be :==, %w(0 1 2)
2156
2271
  end
2157
2272
 
2158
- it 'has a working function #gslist_utf8_none_return' do
2273
+ it "has a working function #gslist_utf8_none_return" do
2159
2274
  res = GIMarshallingTests.gslist_utf8_none_return
2160
- res.must_be :==, %w(0 1 2)
2275
+ _(res).must_be :==, %w(0 1 2)
2161
2276
  end
2162
2277
 
2163
- it 'has a working function #gstrv_in' do
2278
+ it "has a working function #gstrv_in" do
2164
2279
  GIMarshallingTests.gstrv_in %w(0 1 2)
2165
2280
  pass
2166
2281
  end
2167
2282
 
2168
- it 'has a working function #gstrv_inout' do
2283
+ it "has a working function #gstrv_inout" do
2169
2284
  res = GIMarshallingTests.gstrv_inout %w(0 1 2)
2170
- res.must_be :==, ['-1', '0', '1', '2']
2285
+ _(res).must_be :==, ["-1", "0", "1", "2"]
2171
2286
  end
2172
2287
 
2173
- it 'has a working function #gstrv_out' do
2288
+ it "has a working function #gstrv_out" do
2174
2289
  res = GIMarshallingTests.gstrv_out
2175
- res.must_be :==, %w(0 1 2)
2290
+ _(res).must_be :==, %w(0 1 2)
2176
2291
  end
2177
2292
 
2178
- it 'has a working function #gstrv_return' do
2293
+ it "has a working function #gstrv_return" do
2179
2294
  res = GIMarshallingTests.gstrv_return
2180
- res.must_be :==, %w(0 1 2)
2295
+ _(res).must_be :==, %w(0 1 2)
2181
2296
  end
2182
2297
 
2183
- it 'has a working function #gtype_in' do
2298
+ it "has a working function #gtype_in" do
2184
2299
  GIMarshallingTests.gtype_in GObject::TYPE_NONE
2185
2300
  pass
2186
2301
  end
2187
2302
 
2188
- it 'has a working function #gtype_inout' do
2303
+ it "has a working function #gtype_inout" do
2189
2304
  res = GIMarshallingTests.gtype_inout GObject::TYPE_NONE
2190
- res.must_equal GObject::TYPE_INT
2305
+ _(res).must_equal GObject::TYPE_INT
2191
2306
  end
2192
2307
 
2193
- it 'has a working function #gtype_out' do
2308
+ it "has a working function #gtype_out" do
2194
2309
  res = GIMarshallingTests.gtype_out
2195
- res.must_equal GObject::TYPE_NONE
2310
+ _(res).must_equal GObject::TYPE_NONE
2196
2311
  end
2197
2312
 
2198
- it 'has a working function #gtype_return' do
2313
+ it "has a working function #gtype_return" do
2199
2314
  res = GIMarshallingTests.gtype_return
2200
- res.must_equal GObject::TYPE_NONE
2315
+ _(res).must_equal GObject::TYPE_NONE
2201
2316
  end
2202
2317
 
2203
- it 'has a working function #gtype_string_in' do
2318
+ it "has a working function #gtype_string_in" do
2204
2319
  GIMarshallingTests.gtype_string_in GObject::TYPE_STRING
2205
2320
  pass
2206
2321
  end
2207
2322
 
2208
- it 'has a working function #gtype_string_out' do
2323
+ it "has a working function #gtype_string_out" do
2209
2324
  res = GIMarshallingTests.gtype_string_out
2210
- res.must_equal GObject::TYPE_STRING
2325
+ _(res).must_equal GObject::TYPE_STRING
2211
2326
  end
2212
2327
 
2213
- it 'has a working function #gtype_string_return' do
2328
+ it "has a working function #gtype_string_return" do
2214
2329
  res = GIMarshallingTests.gtype_string_return
2215
- res.must_equal GObject::TYPE_STRING
2330
+ _(res).must_equal GObject::TYPE_STRING
2216
2331
  end
2217
2332
 
2218
- it 'has a working function #gvalue_flat_array' do
2219
- GIMarshallingTests.gvalue_flat_array [42, '42', true]
2333
+ it "has a working function #gvalue_flat_array" do
2334
+ GIMarshallingTests.gvalue_flat_array [42, "42", true]
2220
2335
  pass
2221
2336
  end
2222
2337
 
2223
- it 'has a working function #gvalue_flat_array_round_trip' do
2224
- result = GIMarshallingTests.gvalue_flat_array_round_trip 42, '42', true
2338
+ it "has a working function #gvalue_flat_array_round_trip" do
2339
+ result = GIMarshallingTests.gvalue_flat_array_round_trip 42, "42", true
2225
2340
  arr = result.to_a
2226
- arr[0].get_value.must_equal 42
2227
- arr[1].get_value.must_equal '42'
2228
- arr[2].get_value.must_equal true
2341
+ _(arr[0].get_value).must_equal 42
2342
+ _(arr[1].get_value).must_equal "42"
2343
+ _(arr[2].get_value).must_equal true
2229
2344
  end
2230
2345
 
2231
- it 'has a working function #gvalue_in' do
2346
+ it "has a working function #gvalue_in" do
2232
2347
  GIMarshallingTests.gvalue_in GObject::Value.wrap_ruby_value(42)
2233
2348
  GIMarshallingTests.gvalue_in 42
2234
2349
  pass
2235
2350
  end
2236
2351
 
2237
- it 'has a working function #gvalue_in_enum' do
2352
+ it "has a working function #gvalue_in_enum" do
2238
2353
  gv = GObject::Value.new
2239
2354
  gv.init GIMarshallingTests::GEnum.gtype
2240
2355
  gv.set_enum GIMarshallingTests::GEnum[:value3]
@@ -2242,29 +2357,27 @@ describe GIMarshallingTests do
2242
2357
  pass
2243
2358
  end
2244
2359
 
2245
- it 'has a working function #gvalue_in_with_modification' do
2246
- skip unless get_introspection_data 'GIMarshallingTests', 'gvalue_in_with_modification'
2360
+ it "has a working function #gvalue_in_with_modification" do
2247
2361
  gv = GObject::Value.wrap_ruby_value(42)
2248
2362
  GIMarshallingTests.gvalue_in_with_modification gv
2249
- gv.get_value.must_equal 24
2363
+ _(gv.get_value).must_equal 24
2250
2364
  end
2251
2365
 
2252
- it 'has a working function #gvalue_in_with_type' do
2366
+ it "has a working function #gvalue_in_with_type" do
2253
2367
  gv = GObject::Value.new
2254
2368
  gv.init GIMarshallingTests::SubSubObject.gtype
2255
2369
  GIMarshallingTests.gvalue_in_with_type gv, GIMarshallingTests::Object.gtype
2256
2370
  end
2257
2371
 
2258
- it 'has a working function #gvalue_inout' do
2372
+ it "has a working function #gvalue_inout" do
2259
2373
  res = GIMarshallingTests.gvalue_inout GObject::Value.wrap_ruby_value(42)
2260
- res.must_equal '42'
2374
+ _(res).must_equal "42"
2261
2375
 
2262
2376
  res = GIMarshallingTests.gvalue_inout 42
2263
- res.must_equal '42'
2377
+ _(res).must_equal "42"
2264
2378
  end
2265
2379
 
2266
- it 'has a working function #gvalue_int64_in' do
2267
- skip unless get_introspection_data 'GIMarshallingTests', 'gvalue_int64_in'
2380
+ it "has a working function #gvalue_int64_in" do
2268
2381
  gv = GObject::Value.new
2269
2382
  gv.init GObject::TYPE_INT64
2270
2383
  gv.set_value 0x7fff_ffff_ffff_ffff
@@ -2272,724 +2385,712 @@ describe GIMarshallingTests do
2272
2385
  pass
2273
2386
  end
2274
2387
 
2275
- it 'has a working function #gvalue_int64_out' do
2276
- skip unless get_introspection_data 'GIMarshallingTests', 'gvalue_int64_out'
2388
+ it "has a working function #gvalue_int64_out" do
2277
2389
  gv = GIMarshallingTests.gvalue_int64_out
2278
- gv.must_equal 0x7fff_ffff_ffff_ffff
2390
+ _(gv).must_equal 0x7fff_ffff_ffff_ffff
2279
2391
  end
2280
2392
 
2281
- it 'has a working function #gvalue_out' do
2393
+ it "has a working function #gvalue_out" do
2282
2394
  res = GIMarshallingTests.gvalue_out
2283
- res.must_equal 42
2395
+ _(res).must_equal 42
2284
2396
  end
2285
2397
 
2286
- it 'has a working function #gvalue_out_caller_allocates' do
2287
- skip unless get_introspection_data 'GIMarshallingTests', 'gvalue_out_caller_allocates'
2398
+ it "has a working function #gvalue_out_caller_allocates" do
2288
2399
  res = GIMarshallingTests.gvalue_out_caller_allocates
2289
- res.must_equal 42
2400
+ _(res).must_equal 42
2290
2401
  end
2291
2402
 
2292
- it 'has a working function #gvalue_return' do
2403
+ it "has a working function #gvalue_return" do
2293
2404
  res = GIMarshallingTests.gvalue_return
2294
- res.must_equal 42
2405
+ _(res).must_equal 42
2295
2406
  end
2296
2407
 
2297
- it 'has a working function #init_function' do
2408
+ it "has a working function #init_function" do
2298
2409
  res, arr = GIMarshallingTests.init_function %w(foo bar baz)
2299
- res.must_equal true
2300
- arr.must_be :==, %w(foo bar)
2410
+ _(res).must_equal true
2411
+ _(arr).must_be :==, %w(foo bar)
2301
2412
  end
2302
2413
 
2303
- it 'has a working function #int16_in_max' do
2414
+ it "has a working function #int16_in_max" do
2304
2415
  GIMarshallingTests.int16_in_max 0x7fff
2305
2416
  pass
2306
2417
  end
2307
2418
 
2308
- it 'has a working function #int16_in_min' do
2419
+ it "has a working function #int16_in_min" do
2309
2420
  GIMarshallingTests.int16_in_min(-0x8000)
2310
2421
  pass
2311
2422
  end
2312
2423
 
2313
- it 'has a working function #int16_inout_max_min' do
2424
+ it "has a working function #int16_inout_max_min" do
2314
2425
  res = GIMarshallingTests.int16_inout_max_min 0x7fff
2315
2426
  assert_equal res, -0x8000
2316
2427
  end
2317
2428
 
2318
- it 'has a working function #int16_inout_min_max' do
2429
+ it "has a working function #int16_inout_min_max" do
2319
2430
  res = GIMarshallingTests.int16_inout_min_max(-0x8000)
2320
2431
  assert_equal 0x7fff, res
2321
2432
  end
2322
2433
 
2323
- it 'has a working function #int16_out_max' do
2434
+ it "has a working function #int16_out_max" do
2324
2435
  res = GIMarshallingTests.int16_out_max
2325
2436
  assert_equal 0x7fff, res
2326
2437
  end
2327
2438
 
2328
- it 'has a working function #int16_out_min' do
2439
+ it "has a working function #int16_out_min" do
2329
2440
  res = GIMarshallingTests.int16_out_min
2330
2441
  assert_equal(-0x8000, res)
2331
2442
  end
2332
2443
 
2333
- it 'has a working function #int16_return_max' do
2444
+ it "has a working function #int16_return_max" do
2334
2445
  res = GIMarshallingTests.int16_return_max
2335
2446
  assert_equal 0x7fff, res
2336
2447
  end
2337
2448
 
2338
- it 'has a working function #int16_return_min' do
2449
+ it "has a working function #int16_return_min" do
2339
2450
  res = GIMarshallingTests.int16_return_min
2340
2451
  assert_equal(-0x8000, res)
2341
2452
  end
2342
2453
 
2343
- it 'has a working function #int32_in_max' do
2454
+ it "has a working function #int32_in_max" do
2344
2455
  GIMarshallingTests.int32_in_max 0x7fffffff
2345
2456
  pass
2346
2457
  end
2347
2458
 
2348
- it 'has a working function #int32_in_min' do
2459
+ it "has a working function #int32_in_min" do
2349
2460
  GIMarshallingTests.int32_in_min(-0x80000000)
2350
2461
  pass
2351
2462
  end
2352
2463
 
2353
- it 'has a working function #int32_inout_max_min' do
2464
+ it "has a working function #int32_inout_max_min" do
2354
2465
  res = GIMarshallingTests.int32_inout_max_min 0x7fffffff
2355
2466
  assert_equal(-0x80000000, res)
2356
2467
  end
2357
2468
 
2358
- it 'has a working function #int32_inout_min_max' do
2469
+ it "has a working function #int32_inout_min_max" do
2359
2470
  res = GIMarshallingTests.int32_inout_min_max(-0x80000000)
2360
2471
  assert_equal 0x7fffffff, res
2361
2472
  end
2362
2473
 
2363
- it 'has a working function #int32_out_max' do
2474
+ it "has a working function #int32_out_max" do
2364
2475
  res = GIMarshallingTests.int32_out_max
2365
2476
  assert_equal 0x7fffffff, res
2366
2477
  end
2367
2478
 
2368
- it 'has a working function #int32_out_min' do
2479
+ it "has a working function #int32_out_min" do
2369
2480
  res = GIMarshallingTests.int32_out_min
2370
2481
  assert_equal(-0x80000000, res)
2371
2482
  end
2372
2483
 
2373
- it 'has a working function #int32_return_max' do
2484
+ it "has a working function #int32_return_max" do
2374
2485
  res = GIMarshallingTests.int32_return_max
2375
2486
  assert_equal 0x7fffffff, res
2376
2487
  end
2377
2488
 
2378
- it 'has a working function #int32_return_min' do
2489
+ it "has a working function #int32_return_min" do
2379
2490
  res = GIMarshallingTests.int32_return_min
2380
2491
  assert_equal(-0x80000000, res)
2381
2492
  end
2382
2493
 
2383
- it 'has a working function #int64_in_max' do
2494
+ it "has a working function #int64_in_max" do
2384
2495
  GIMarshallingTests.int64_in_max 0x7fffffffffffffff
2385
2496
  pass
2386
2497
  end
2387
2498
 
2388
- it 'has a working function #int64_in_min' do
2499
+ it "has a working function #int64_in_min" do
2389
2500
  GIMarshallingTests.int64_in_min(-0x8000000000000000)
2390
2501
  pass
2391
2502
  end
2392
2503
 
2393
- it 'has a working function #int64_inout_max_min' do
2504
+ it "has a working function #int64_inout_max_min" do
2394
2505
  res = GIMarshallingTests.int64_inout_max_min 0x7fffffffffffffff
2395
2506
  assert_equal(-0x8000000000000000, res)
2396
2507
  end
2397
2508
 
2398
- it 'has a working function #int64_inout_min_max' do
2509
+ it "has a working function #int64_inout_min_max" do
2399
2510
  res = GIMarshallingTests.int64_inout_min_max(-0x8000000000000000)
2400
2511
  assert_equal 0x7fffffffffffffff, res
2401
2512
  end
2402
2513
 
2403
- it 'has a working function #int64_out_max' do
2514
+ it "has a working function #int64_out_max" do
2404
2515
  res = GIMarshallingTests.int64_out_max
2405
2516
  assert_equal 0x7fffffffffffffff, res
2406
2517
  end
2407
2518
 
2408
- it 'has a working function #int64_out_min' do
2519
+ it "has a working function #int64_out_min" do
2409
2520
  res = GIMarshallingTests.int64_out_min
2410
2521
  assert_equal(-0x8000000000000000, res)
2411
2522
  end
2412
2523
 
2413
- it 'has a working function #int64_return_max' do
2524
+ it "has a working function #int64_return_max" do
2414
2525
  res = GIMarshallingTests.int64_return_max
2415
2526
  assert_equal 0x7fffffffffffffff, res
2416
2527
  end
2417
2528
 
2418
- it 'has a working function #int64_return_min' do
2529
+ it "has a working function #int64_return_min" do
2419
2530
  res = GIMarshallingTests.int64_return_min
2420
2531
  assert_equal(-0x8000000000000000, res)
2421
2532
  end
2422
2533
 
2423
- it 'has a working function #int8_in_max' do
2534
+ it "has a working function #int8_in_max" do
2424
2535
  GIMarshallingTests.int8_in_max 0x7f
2425
2536
  pass
2426
2537
  end
2427
2538
 
2428
- it 'has a working function #int8_in_min' do
2539
+ it "has a working function #int8_in_min" do
2429
2540
  GIMarshallingTests.int8_in_min(-0x80)
2430
2541
  pass
2431
2542
  end
2432
2543
 
2433
- it 'has a working function #int8_inout_max_min' do
2544
+ it "has a working function #int8_inout_max_min" do
2434
2545
  res = GIMarshallingTests.int8_inout_max_min 0x7f
2435
2546
  assert_equal(-0x80, res)
2436
2547
  end
2437
2548
 
2438
- it 'has a working function #int8_inout_min_max' do
2549
+ it "has a working function #int8_inout_min_max" do
2439
2550
  res = GIMarshallingTests.int8_inout_min_max(-0x80)
2440
2551
  assert_equal 0x7f, res
2441
2552
  end
2442
2553
 
2443
- it 'has a working function #int8_out_max' do
2554
+ it "has a working function #int8_out_max" do
2444
2555
  res = GIMarshallingTests.int8_out_max
2445
2556
  assert_equal 0x7f, res
2446
2557
  end
2447
2558
 
2448
- it 'has a working function #int8_out_min' do
2559
+ it "has a working function #int8_out_min" do
2449
2560
  res = GIMarshallingTests.int8_out_min
2450
2561
  assert_equal(-0x80, res)
2451
2562
  end
2452
2563
 
2453
- it 'has a working function #int8_return_max' do
2564
+ it "has a working function #int8_return_max" do
2454
2565
  res = GIMarshallingTests.int8_return_max
2455
2566
  assert_equal 0x7f, res
2456
2567
  end
2457
2568
 
2458
- it 'has a working function #int8_return_min' do
2569
+ it "has a working function #int8_return_min" do
2459
2570
  res = GIMarshallingTests.int8_return_min
2460
2571
  assert_equal(-0x80, res)
2461
2572
  end
2462
2573
 
2463
- it 'has a working function #int_in_max' do
2574
+ it "has a working function #int_in_max" do
2464
2575
  GIMarshallingTests.int_in_max 0x7fffffff
2465
2576
  pass
2466
2577
  end
2467
2578
 
2468
- it 'has a working function #int_in_min' do
2579
+ it "has a working function #int_in_min" do
2469
2580
  GIMarshallingTests.int_in_min(-0x80000000)
2470
2581
  pass
2471
2582
  end
2472
2583
 
2473
- it 'has a working function #int_inout_max_min' do
2584
+ it "has a working function #int_inout_max_min" do
2474
2585
  res = GIMarshallingTests.int_inout_max_min 0x7fffffff
2475
2586
  assert_equal(-0x80000000, res)
2476
2587
  end
2477
2588
 
2478
- it 'has a working function #int_inout_min_max' do
2589
+ it "has a working function #int_inout_min_max" do
2479
2590
  res = GIMarshallingTests.int_inout_min_max(-0x80000000)
2480
2591
  assert_equal 0x7fffffff, res
2481
2592
  end
2482
2593
 
2483
- it 'has a working function #int_one_in_utf8_two_in_one_allows_none' do
2484
- skip unless get_introspection_data('GIMarshallingTests',
2485
- 'int_one_in_utf8_two_in_one_allows_none')
2486
- GIMarshallingTests.int_one_in_utf8_two_in_one_allows_none 1, '2', '3'
2487
- GIMarshallingTests.int_one_in_utf8_two_in_one_allows_none 1, nil, '3'
2594
+ it "has a working function #int_one_in_utf8_two_in_one_allows_none" do
2595
+ GIMarshallingTests.int_one_in_utf8_two_in_one_allows_none 1, "2", "3"
2596
+ GIMarshallingTests.int_one_in_utf8_two_in_one_allows_none 1, nil, "3"
2488
2597
  pass
2489
2598
  end
2490
2599
 
2491
- it 'has a working function #int_out_max' do
2600
+ it "has a working function #int_out_max" do
2492
2601
  res = GIMarshallingTests.int_out_max
2493
2602
  assert_equal 0x7fffffff, res
2494
2603
  end
2495
2604
 
2496
- it 'has a working function #int_out_min' do
2605
+ it "has a working function #int_out_min" do
2497
2606
  res = GIMarshallingTests.int_out_min
2498
2607
  assert_equal(-0x80000000, res)
2499
2608
  end
2500
2609
 
2501
- it 'has a working function #int_out_out' do
2610
+ it "has a working function #int_out_out" do
2502
2611
  res = GIMarshallingTests.int_out_out
2503
2612
  assert_equal [6, 7], res
2504
2613
  end
2505
2614
 
2506
- it 'has a working function #int_return_max' do
2615
+ it "has a working function #int_return_max" do
2507
2616
  res = GIMarshallingTests.int_return_max
2508
2617
  assert_equal 0x7fffffff, res
2509
2618
  end
2510
2619
 
2511
- it 'has a working function #int_return_min' do
2620
+ it "has a working function #int_return_min" do
2512
2621
  res = GIMarshallingTests.int_return_min
2513
2622
  assert_equal(-0x80000000, res)
2514
2623
  end
2515
2624
 
2516
- it 'has a working function #int_return_out' do
2625
+ it "has a working function #int_return_out" do
2517
2626
  res = GIMarshallingTests.int_return_out
2518
2627
  assert_equal [6, 7], res
2519
2628
  end
2520
2629
 
2521
- it 'has a working function #int_three_in_three_out' do
2630
+ it "has a working function #int_three_in_three_out" do
2522
2631
  res = GIMarshallingTests.int_three_in_three_out 4, 5, 6
2523
2632
  assert_equal [4, 5, 6], res
2524
2633
  end
2525
2634
 
2526
- it 'has a working function #int_two_in_utf8_two_in_with_allow_none' do
2527
- skip unless get_introspection_data('GIMarshallingTests',
2528
- 'int_two_in_utf8_two_in_with_allow_none')
2529
- GIMarshallingTests.int_two_in_utf8_two_in_with_allow_none 1, 2, '3', '4'
2635
+ it "has a working function #int_two_in_utf8_two_in_with_allow_none" do
2636
+ GIMarshallingTests.int_two_in_utf8_two_in_with_allow_none 1, 2, "3", "4"
2530
2637
  GIMarshallingTests.int_two_in_utf8_two_in_with_allow_none 1, 2, nil, nil
2531
2638
  pass
2532
2639
  end
2533
2640
 
2534
- it 'has a working function #long_in_max' do
2641
+ it "has a working function #long_in_max" do
2535
2642
  GIMarshallingTests.long_in_max max_long
2536
2643
  pass
2537
2644
  end
2538
2645
 
2539
- it 'has a working function #long_in_min' do
2646
+ it "has a working function #long_in_min" do
2540
2647
  GIMarshallingTests.long_in_min min_long
2541
2648
  pass
2542
2649
  end
2543
2650
 
2544
- it 'has a working function #long_inout_max_min' do
2651
+ it "has a working function #long_inout_max_min" do
2545
2652
  res = GIMarshallingTests.long_inout_max_min max_long
2546
2653
  assert_equal min_long, res
2547
2654
  end
2548
2655
 
2549
- it 'has a working function #long_inout_min_max' do
2656
+ it "has a working function #long_inout_min_max" do
2550
2657
  res = GIMarshallingTests.long_inout_min_max min_long
2551
2658
  assert_equal max_long, res
2552
2659
  end
2553
2660
 
2554
- it 'has a working function #long_out_max' do
2661
+ it "has a working function #long_out_max" do
2555
2662
  res = GIMarshallingTests.long_out_max
2556
2663
  assert_equal max_long, res
2557
2664
  end
2558
2665
 
2559
- it 'has a working function #long_out_min' do
2666
+ it "has a working function #long_out_min" do
2560
2667
  res = GIMarshallingTests.long_out_min
2561
2668
  assert_equal min_long, res
2562
2669
  end
2563
2670
 
2564
- it 'has a working function #long_return_max' do
2671
+ it "has a working function #long_return_max" do
2565
2672
  res = GIMarshallingTests.long_return_max
2566
2673
  assert_equal max_long, res
2567
2674
  end
2568
2675
 
2569
- it 'has a working function #long_return_min' do
2676
+ it "has a working function #long_return_min" do
2570
2677
  res = GIMarshallingTests.long_return_min
2571
2678
  assert_equal min_long, res
2572
2679
  end
2573
2680
 
2574
- it 'has a working function #multi_array_key_value_in' do
2681
+ it "has a working function #multi_array_key_value_in" do
2575
2682
  keys = %w(one two three)
2576
2683
  values = [1, 2, 3].map { |val| GObject::Value.wrap_ruby_value val }
2577
2684
  GIMarshallingTests.multi_array_key_value_in keys, values
2578
2685
  end
2579
2686
 
2580
- it 'has a working function #no_type_flags_in' do
2687
+ it "has a working function #no_type_flags_in" do
2581
2688
  GIMarshallingTests.no_type_flags_in value2: true
2582
2689
  pass
2583
2690
  end
2584
2691
 
2585
- it 'has a working function #no_type_flags_in_zero' do
2692
+ it "has a working function #no_type_flags_in_zero" do
2586
2693
  GIMarshallingTests.no_type_flags_in_zero 0
2587
2694
  pass
2588
2695
  end
2589
2696
 
2590
- it 'has a working function #no_type_flags_inout' do
2697
+ it "has a working function #no_type_flags_inout" do
2591
2698
  res = GIMarshallingTests.no_type_flags_inout value2: true
2592
- res.must_equal(value1: true)
2699
+ _(res).must_equal(value1: true)
2593
2700
  end
2594
2701
 
2595
- it 'has a working function #no_type_flags_out' do
2702
+ it "has a working function #no_type_flags_out" do
2596
2703
  res = GIMarshallingTests.no_type_flags_out
2597
- res.must_equal(value2: true)
2704
+ _(res).must_equal(value2: true)
2598
2705
  end
2599
2706
 
2600
- it 'has a working function #no_type_flags_returnv' do
2707
+ it "has a working function #no_type_flags_returnv" do
2601
2708
  res = GIMarshallingTests.no_type_flags_returnv
2602
- res.must_equal(value2: true)
2709
+ _(res).must_equal(value2: true)
2603
2710
  end
2604
2711
 
2605
- it 'has a working function #overrides_struct_returnv' do
2712
+ it "has a working function #overrides_struct_returnv" do
2606
2713
  res = GIMarshallingTests.overrides_struct_returnv
2607
- res.must_be_instance_of GIMarshallingTests::OverridesStruct
2714
+ _(res).must_be_instance_of GIMarshallingTests::OverridesStruct
2608
2715
  end
2609
2716
 
2610
- it 'has a working function #param_spec_in_bool' do
2611
- # GLib minor version and GObjectIntrospection minor version should be in sync
2612
- skip 'param_spec_in_bool tests the wrong type' if GLib::MINOR_VERSION < 42
2613
-
2614
- ps = GObject.param_spec_boolean 'mybool', 'nick', 'blurb', true, :readable
2717
+ it "has a working function #param_spec_in_bool" do
2718
+ ps = GObject.param_spec_boolean "mybool", "nick", "blurb", true, :readable
2615
2719
  GIMarshallingTests.param_spec_in_bool ps
2616
2720
  pass
2617
2721
  end
2618
2722
 
2619
- it 'has a working function #param_spec_out' do
2620
- skip unless get_introspection_data 'GIMarshallingTests', 'param_spec_out'
2723
+ it "has a working function #param_spec_out" do
2621
2724
  res = GIMarshallingTests.param_spec_out
2622
- res.value_type.must_equal GObject::TYPE_STRING
2623
- res.get_name.must_equal 'test-param'
2725
+ _(res.value_type).must_equal GObject::TYPE_STRING
2726
+ _(res.get_name).must_equal "test-param"
2624
2727
  end
2625
2728
 
2626
- it 'has a working function #param_spec_return' do
2627
- skip unless get_introspection_data 'GIMarshallingTests', 'param_spec_return'
2729
+ it "has a working function #param_spec_return" do
2628
2730
  res = GIMarshallingTests.param_spec_return
2629
- res.value_type.must_equal GObject::TYPE_STRING
2630
- res.get_name.must_equal 'test-param'
2731
+ _(res.value_type).must_equal GObject::TYPE_STRING
2732
+ _(res.get_name).must_equal "test-param"
2631
2733
  end
2632
2734
 
2633
- it 'has a working function #pointer_in_return' do
2735
+ it "has a working function #pointer_in_return" do
2634
2736
  ptr = FFI::MemoryPointer.new 1
2635
2737
  res = GIMarshallingTests.pointer_in_return ptr
2636
2738
  assert_equal ptr.address, res.address
2637
2739
  end
2638
2740
 
2639
- it 'has a working function #pointer_struct_get_type' do
2741
+ it "has a working function #pointer_struct_get_type" do
2640
2742
  res = GIMarshallingTests.pointer_struct_get_type
2641
- gtype = GObject.type_from_name 'GIMarshallingTestsPointerStruct'
2743
+ gtype = GObject.type_from_name "GIMarshallingTestsPointerStruct"
2642
2744
  assert_equal gtype, res
2643
2745
  end
2644
2746
 
2645
- it 'has a working function #pointer_struct_returnv' do
2747
+ it "has a working function #pointer_struct_returnv" do
2646
2748
  res = GIMarshallingTests.pointer_struct_returnv
2647
2749
  assert_instance_of GIMarshallingTests::PointerStruct, res
2648
2750
  assert_equal 42, res.long_
2649
2751
  end
2650
2752
 
2651
- it 'has a working function #return_gvalue_flat_array' do
2753
+ it "has a working function #return_gvalue_flat_array" do
2652
2754
  result = GIMarshallingTests.return_gvalue_flat_array
2653
2755
  arr = result.to_a
2654
- arr[0].get_value.must_equal 42
2655
- arr[1].get_value.must_equal '42'
2656
- arr[2].get_value.must_equal true
2756
+ _(arr[0].get_value).must_equal 42
2757
+ _(arr[1].get_value).must_equal "42"
2758
+ _(arr[2].get_value).must_equal true
2657
2759
  end
2658
2760
 
2659
- it 'has a working function #short_in_max' do
2761
+ it "has a working function #short_in_max" do
2660
2762
  GIMarshallingTests.short_in_max 0x7fff
2661
2763
  pass
2662
2764
  end
2663
2765
 
2664
- it 'has a working function #short_in_min' do
2766
+ it "has a working function #short_in_min" do
2665
2767
  GIMarshallingTests.short_in_min(-0x8000)
2666
2768
  pass
2667
2769
  end
2668
2770
 
2669
- it 'has a working function #short_inout_max_min' do
2771
+ it "has a working function #short_inout_max_min" do
2670
2772
  res = GIMarshallingTests.short_inout_max_min 0x7fff
2671
2773
  assert_equal(-0x8000, res)
2672
2774
  end
2673
2775
 
2674
- it 'has a working function #short_inout_min_max' do
2776
+ it "has a working function #short_inout_min_max" do
2675
2777
  res = GIMarshallingTests.short_inout_min_max(-0x8000)
2676
2778
  assert_equal 0x7fff, res
2677
2779
  end
2678
2780
 
2679
- it 'has a working function #short_out_max' do
2781
+ it "has a working function #short_out_max" do
2680
2782
  res = GIMarshallingTests.short_out_max
2681
2783
  assert_equal 0x7fff, res
2682
2784
  end
2683
2785
 
2684
- it 'has a working function #short_out_min' do
2786
+ it "has a working function #short_out_min" do
2685
2787
  res = GIMarshallingTests.short_out_min
2686
2788
  assert_equal(-0x8000, res)
2687
2789
  end
2688
2790
 
2689
- it 'has a working function #short_return_max' do
2791
+ it "has a working function #short_return_max" do
2690
2792
  res = GIMarshallingTests.short_return_max
2691
2793
  assert_equal 0x7fff, res
2692
2794
  end
2693
2795
 
2694
- it 'has a working function #short_return_min' do
2796
+ it "has a working function #short_return_min" do
2695
2797
  res = GIMarshallingTests.short_return_min
2696
2798
  assert_equal(-0x8000, res)
2697
2799
  end
2698
2800
 
2699
- it 'has a working function #simple_struct_returnv' do
2801
+ it "has a working function #simple_struct_returnv" do
2700
2802
  res = GIMarshallingTests.simple_struct_returnv
2701
2803
  assert_instance_of GIMarshallingTests::SimpleStruct, res
2702
2804
  assert_equal 6, res.long_
2703
2805
  assert_equal 7, res.int8
2704
2806
  end
2705
2807
 
2706
- it 'has a working function #size_in' do
2808
+ it "has a working function #size_in" do
2707
2809
  GIMarshallingTests.size_in max_size_t
2708
2810
  end
2709
2811
 
2710
- it 'has a working function #size_inout' do
2812
+ it "has a working function #size_inout" do
2711
2813
  res = GIMarshallingTests.size_inout max_size_t
2712
2814
  assert_equal 0, res
2713
2815
  end
2714
2816
 
2715
- it 'has a working function #size_out' do
2817
+ it "has a working function #size_out" do
2716
2818
  res = GIMarshallingTests.size_out
2717
2819
  assert_equal max_size_t, res
2718
2820
  end
2719
2821
 
2720
- it 'has a working function #size_return' do
2822
+ it "has a working function #size_return" do
2721
2823
  res = GIMarshallingTests.size_return
2722
2824
  assert_equal max_size_t, res
2723
2825
  end
2724
2826
 
2725
- it 'has a working function #ssize_in_max' do
2827
+ it "has a working function #ssize_in_max" do
2726
2828
  GIMarshallingTests.ssize_in_max max_ssize_t
2727
2829
  pass
2728
2830
  end
2729
2831
 
2730
- it 'has a working function #ssize_in_min' do
2832
+ it "has a working function #ssize_in_min" do
2731
2833
  GIMarshallingTests.ssize_in_min min_ssize_t
2732
2834
  pass
2733
2835
  end
2734
2836
 
2735
- it 'has a working function #ssize_inout_max_min' do
2837
+ it "has a working function #ssize_inout_max_min" do
2736
2838
  res = GIMarshallingTests.ssize_inout_max_min max_ssize_t
2737
2839
  assert_equal min_ssize_t, res
2738
2840
  end
2739
2841
 
2740
- it 'has a working function #ssize_inout_min_max' do
2842
+ it "has a working function #ssize_inout_min_max" do
2741
2843
  res = GIMarshallingTests.ssize_inout_min_max min_ssize_t
2742
2844
  assert_equal max_ssize_t, res
2743
2845
  end
2744
2846
 
2745
- it 'has a working function #ssize_out_max' do
2847
+ it "has a working function #ssize_out_max" do
2746
2848
  res = GIMarshallingTests.ssize_out_max
2747
2849
  assert_equal max_ssize_t, res
2748
2850
  end
2749
2851
 
2750
- it 'has a working function #ssize_out_min' do
2852
+ it "has a working function #ssize_out_min" do
2751
2853
  res = GIMarshallingTests.ssize_out_min
2752
2854
  assert_equal min_ssize_t, res
2753
2855
  end
2754
2856
 
2755
- it 'has a working function #ssize_return_max' do
2857
+ it "has a working function #ssize_return_max" do
2756
2858
  res = GIMarshallingTests.ssize_return_max
2757
2859
  assert_equal max_ssize_t, res
2758
2860
  end
2759
2861
 
2760
- it 'has a working function #ssize_return_min' do
2862
+ it "has a working function #ssize_return_min" do
2761
2863
  res = GIMarshallingTests.ssize_return_min
2762
2864
  assert_equal min_ssize_t, res
2763
2865
  end
2764
2866
 
2765
- it 'has a working function #test_interface_test_int8_in' do
2867
+ it "has a working function #test_interface_test_int8_in" do
2766
2868
  derived_klass.class_eval { include GIMarshallingTests::Interface }
2767
2869
  instance = make_derived_instance do |info|
2768
2870
  info.install_vfunc_implementation :test_int8_in, proc { |obj, in_| obj.int = in_ }
2769
2871
  end
2770
- instance.int.must_equal 0
2872
+ _(instance.int).must_equal 0
2771
2873
  GIMarshallingTests.test_interface_test_int8_in instance, 8
2772
- instance.int.must_equal 8
2874
+ _(instance.int).must_equal 8
2773
2875
  end
2774
2876
 
2775
- it 'has a working function #time_t_in' do
2877
+ it "has a working function #time_t_in" do
2776
2878
  GIMarshallingTests.time_t_in 1_234_567_890
2777
2879
  pass
2778
2880
  end
2779
2881
 
2780
- it 'has a working function #time_t_inout' do
2882
+ it "has a working function #time_t_inout" do
2781
2883
  res = GIMarshallingTests.time_t_inout 1_234_567_890
2782
2884
  assert_equal 0, res
2783
2885
  end
2784
2886
 
2785
- it 'has a working function #time_t_out' do
2887
+ it "has a working function #time_t_out" do
2786
2888
  res = GIMarshallingTests.time_t_out
2787
2889
  assert_equal 1_234_567_890, res
2788
2890
  end
2789
2891
 
2790
- it 'has a working function #time_t_return' do
2892
+ it "has a working function #time_t_return" do
2791
2893
  res = GIMarshallingTests.time_t_return
2792
2894
  assert_equal 1_234_567_890, res
2793
2895
  end
2794
2896
 
2795
- it 'has a working function #uint16_in' do
2897
+ it "has a working function #uint16_in" do
2796
2898
  GIMarshallingTests.uint16_in 0xffff
2797
2899
  pass
2798
2900
  end
2799
2901
 
2800
- it 'has a working function #uint16_inout' do
2902
+ it "has a working function #uint16_inout" do
2801
2903
  res = GIMarshallingTests.uint16_inout 0xffff
2802
2904
  assert_equal 0, res
2803
2905
  end
2804
2906
 
2805
- it 'has a working function #uint16_out' do
2907
+ it "has a working function #uint16_out" do
2806
2908
  res = GIMarshallingTests.uint16_out
2807
2909
  assert_equal 0xffff, res
2808
2910
  end
2809
2911
 
2810
- it 'has a working function #uint16_return' do
2912
+ it "has a working function #uint16_return" do
2811
2913
  res = GIMarshallingTests.uint16_return
2812
2914
  assert_equal 0xffff, res
2813
2915
  end
2814
2916
 
2815
- it 'has a working function #uint32_in' do
2917
+ it "has a working function #uint32_in" do
2816
2918
  GIMarshallingTests.uint32_in 0xffffffff
2817
2919
  end
2818
2920
 
2819
- it 'has a working function #uint32_inout' do
2921
+ it "has a working function #uint32_inout" do
2820
2922
  res = GIMarshallingTests.uint32_inout 0xffffffff
2821
2923
  assert_equal 0, res
2822
2924
  end
2823
2925
 
2824
- it 'has a working function #uint32_out' do
2926
+ it "has a working function #uint32_out" do
2825
2927
  res = GIMarshallingTests.uint32_out
2826
2928
  assert_equal 0xffffffff, res
2827
2929
  end
2828
2930
 
2829
- it 'has a working function #uint32_return' do
2931
+ it "has a working function #uint32_return" do
2830
2932
  res = GIMarshallingTests.uint32_return
2831
2933
  assert_equal 0xffffffff, res
2832
2934
  end
2833
2935
 
2834
- it 'has a working function #uint64_in' do
2936
+ it "has a working function #uint64_in" do
2835
2937
  GIMarshallingTests.uint64_in 0xffff_ffff_ffff_ffff
2836
2938
  pass
2837
2939
  end
2838
2940
 
2839
- it 'has a working function #uint64_inout' do
2941
+ it "has a working function #uint64_inout" do
2840
2942
  res = GIMarshallingTests.uint64_inout 0xffff_ffff_ffff_ffff
2841
2943
  assert_equal 0, res
2842
2944
  end
2843
2945
 
2844
- it 'has a working function #uint64_out' do
2946
+ it "has a working function #uint64_out" do
2845
2947
  res = GIMarshallingTests.uint64_out
2846
2948
  assert_equal 0xffff_ffff_ffff_ffff, res
2847
2949
  end
2848
2950
 
2849
- it 'has a working function #uint64_return' do
2951
+ it "has a working function #uint64_return" do
2850
2952
  res = GIMarshallingTests.uint64_return
2851
2953
  assert_equal 0xffff_ffff_ffff_ffff, res
2852
2954
  end
2853
2955
 
2854
- it 'has a working function #uint8_in' do
2956
+ it "has a working function #uint8_in" do
2855
2957
  GIMarshallingTests.uint8_in 0xff
2856
2958
  end
2857
2959
 
2858
- it 'has a working function #uint8_inout' do
2960
+ it "has a working function #uint8_inout" do
2859
2961
  res = GIMarshallingTests.uint8_inout 0xff
2860
2962
  assert_equal 0, res
2861
2963
  end
2862
2964
 
2863
- it 'has a working function #uint8_out' do
2965
+ it "has a working function #uint8_out" do
2864
2966
  res = GIMarshallingTests.uint8_out
2865
2967
  assert_equal 0xff, res
2866
2968
  end
2867
2969
 
2868
- it 'has a working function #uint8_return' do
2970
+ it "has a working function #uint8_return" do
2869
2971
  res = GIMarshallingTests.uint8_return
2870
2972
  assert_equal 0xff, res
2871
2973
  end
2872
2974
 
2873
- it 'has a working function #uint_in' do
2975
+ it "has a working function #uint_in" do
2874
2976
  GIMarshallingTests.uint_in max_uint
2875
2977
  pass
2876
2978
  end
2877
2979
 
2878
- it 'has a working function #uint_inout' do
2980
+ it "has a working function #uint_inout" do
2879
2981
  res = GIMarshallingTests.uint_inout max_uint
2880
2982
  assert_equal 0, res
2881
2983
  end
2882
2984
 
2883
- it 'has a working function #uint_out' do
2985
+ it "has a working function #uint_out" do
2884
2986
  res = GIMarshallingTests.uint_out
2885
2987
  assert_equal max_uint, res
2886
2988
  end
2887
2989
 
2888
- it 'has a working function #uint_return' do
2990
+ it "has a working function #uint_return" do
2889
2991
  res = GIMarshallingTests.uint_return
2890
2992
  assert_equal max_uint, res
2891
2993
  end
2892
2994
 
2893
- it 'has a working function #ulong_in' do
2995
+ it "has a working function #ulong_in" do
2894
2996
  GIMarshallingTests.ulong_in max_ulong
2895
2997
  end
2896
2998
 
2897
- it 'has a working function #ulong_inout' do
2999
+ it "has a working function #ulong_inout" do
2898
3000
  res = GIMarshallingTests.ulong_inout max_ulong
2899
3001
  assert_equal 0, res
2900
3002
  end
2901
3003
 
2902
- it 'has a working function #ulong_out' do
3004
+ it "has a working function #ulong_out" do
2903
3005
  res = GIMarshallingTests.ulong_out
2904
3006
  assert_equal max_ulong, res
2905
3007
  end
2906
3008
 
2907
- it 'has a working function #ulong_return' do
3009
+ it "has a working function #ulong_return" do
2908
3010
  res = GIMarshallingTests.ulong_return
2909
3011
  assert_equal max_ulong, res
2910
3012
  end
2911
3013
 
2912
- it 'has a working function #union_inout' do
2913
- skip 'This function is defined in the header but not implemented'
3014
+ it "has a working function #union_inout" do
3015
+ skip "This function is defined in the header but not implemented"
2914
3016
  end
2915
3017
 
2916
- it 'has a working function #union_out' do
2917
- skip 'This function is defined in the header but not implemented'
3018
+ it "has a working function #union_out" do
3019
+ skip "This function is defined in the header but not implemented"
2918
3020
  end
2919
3021
 
2920
- it 'has a working function #union_returnv' do
3022
+ it "has a working function #union_returnv" do
2921
3023
  res = GIMarshallingTests.union_returnv
2922
3024
  assert_instance_of GIMarshallingTests::Union, res
2923
3025
  assert_equal 42, res.long_
2924
3026
  end
2925
3027
 
2926
- it 'has a working function #ushort_in' do
3028
+ it "has a working function #ushort_in" do
2927
3029
  GIMarshallingTests.ushort_in max_ushort
2928
3030
  pass
2929
3031
  end
2930
3032
 
2931
- it 'has a working function #ushort_inout' do
3033
+ it "has a working function #ushort_inout" do
2932
3034
  res = GIMarshallingTests.ushort_inout max_ushort
2933
3035
  assert_equal 0, res
2934
3036
  end
2935
3037
 
2936
- it 'has a working function #ushort_out' do
3038
+ it "has a working function #ushort_out" do
2937
3039
  res = GIMarshallingTests.ushort_out
2938
3040
  assert_equal max_ushort, res
2939
3041
  end
2940
3042
 
2941
- it 'has a working function #ushort_return' do
3043
+ it "has a working function #ushort_return" do
2942
3044
  res = GIMarshallingTests.ushort_return
2943
3045
  assert_equal max_ushort, res
2944
3046
  end
2945
3047
 
2946
- it 'has a working function #utf8_as_uint8array_in' do
2947
- skip unless get_introspection_data 'GIMarshallingTests', 'utf8_as_uint8array_in'
3048
+ it "has a working function #utf8_as_uint8array_in" do
2948
3049
  GIMarshallingTests.utf8_as_uint8array_in GIMarshallingTests::CONSTANT_UTF8.bytes.to_a
2949
3050
  pass
2950
3051
  end
2951
3052
 
2952
- it 'has a working function #utf8_dangling_out' do
3053
+ it "has a working function #utf8_dangling_out" do
2953
3054
  res = GIMarshallingTests.utf8_dangling_out
2954
3055
  assert_nil res
2955
3056
  end
2956
3057
 
2957
- it 'has a working function #utf8_full_in' do
2958
- skip 'This function is defined in the header but not implemented'
3058
+ it "has a working function #utf8_full_in" do
3059
+ skip "This function is defined in the header but not implemented"
2959
3060
  end
2960
3061
 
2961
- it 'has a working function #utf8_full_inout' do
2962
- res = GIMarshallingTests.utf8_full_inout 'const ♥ utf8'
2963
- assert_equal '', res
3062
+ it "has a working function #utf8_full_inout" do
3063
+ res = GIMarshallingTests.utf8_full_inout "const ♥ utf8"
3064
+ assert_equal "", res
2964
3065
  end
2965
3066
 
2966
- it 'has a working function #utf8_full_out' do
3067
+ it "has a working function #utf8_full_out" do
2967
3068
  res = GIMarshallingTests.utf8_full_out
2968
- assert_equal 'const ♥ utf8', res
3069
+ assert_equal "const ♥ utf8", res
2969
3070
  end
2970
3071
 
2971
- it 'has a working function #utf8_full_return' do
3072
+ it "has a working function #utf8_full_return" do
2972
3073
  res = GIMarshallingTests.utf8_full_return
2973
- assert_equal 'const ♥ utf8', res
3074
+ assert_equal "const ♥ utf8", res
2974
3075
  end
2975
3076
 
2976
- it 'has a working function #utf8_none_in' do
2977
- GIMarshallingTests.utf8_none_in 'const ♥ utf8'
3077
+ it "has a working function #utf8_none_in" do
3078
+ GIMarshallingTests.utf8_none_in "const ♥ utf8"
2978
3079
  pass
2979
3080
  end
2980
3081
 
2981
- it 'has a working function #utf8_none_inout' do
2982
- res = GIMarshallingTests.utf8_none_inout 'const ♥ utf8'
2983
- assert_equal '', res
3082
+ it "has a working function #utf8_none_inout" do
3083
+ res = GIMarshallingTests.utf8_none_inout "const ♥ utf8"
3084
+ assert_equal "", res
2984
3085
  end
2985
3086
 
2986
- it 'has a working function #utf8_none_out' do
3087
+ it "has a working function #utf8_none_out" do
2987
3088
  res = GIMarshallingTests.utf8_none_out
2988
- assert_equal 'const ♥ utf8', res
3089
+ assert_equal "const ♥ utf8", res
2989
3090
  end
2990
3091
 
2991
- it 'has a working function #utf8_none_return' do
3092
+ it "has a working function #utf8_none_return" do
2992
3093
  res = GIMarshallingTests.utf8_none_return
2993
- assert_equal 'const ♥ utf8', res
3094
+ assert_equal "const ♥ utf8", res
2994
3095
  end
2995
3096
  end