gir_ffi 0.14.0 → 0.15.3

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 (265) hide show
  1. checksums.yaml +4 -4
  2. data/Changelog.md +45 -0
  3. data/Gemfile +6 -4
  4. data/README.md +11 -10
  5. data/Rakefile +5 -5
  6. data/lib/ffi-glib.rb +16 -16
  7. data/lib/ffi-glib/array.rb +14 -4
  8. data/lib/ffi-glib/byte_array.rb +7 -2
  9. data/lib/ffi-glib/container_class_methods.rb +1 -1
  10. data/lib/ffi-glib/error.rb +1 -1
  11. data/lib/ffi-glib/hash_table.rb +3 -3
  12. data/lib/ffi-glib/list.rb +1 -1
  13. data/lib/ffi-glib/list_methods.rb +1 -1
  14. data/lib/ffi-glib/main_loop.rb +3 -3
  15. data/lib/ffi-glib/ptr_array.rb +30 -8
  16. data/lib/ffi-glib/s_list.rb +1 -1
  17. data/lib/ffi-glib/variant.rb +1 -1
  18. data/lib/ffi-gobject.rb +13 -13
  19. data/lib/ffi-gobject/object.rb +23 -32
  20. data/lib/ffi-gobject/param_spec.rb +1 -1
  21. data/lib/ffi-gobject/ruby_closure.rb +2 -2
  22. data/lib/ffi-gobject/value.rb +40 -29
  23. data/lib/ffi-gobject_introspection.rb +20 -20
  24. data/lib/ffi-gobject_introspection/gobject_type_init.rb +2 -2
  25. data/lib/ffi-gobject_introspection/i_arg_info.rb +2 -2
  26. data/lib/ffi-gobject_introspection/i_base_info.rb +27 -17
  27. data/lib/ffi-gobject_introspection/i_callable_info.rb +4 -4
  28. data/lib/ffi-gobject_introspection/i_constant_info.rb +2 -2
  29. data/lib/ffi-gobject_introspection/i_enum_info.rb +1 -0
  30. data/lib/ffi-gobject_introspection/i_field_info.rb +1 -1
  31. data/lib/ffi-gobject_introspection/i_function_info.rb +1 -1
  32. data/lib/ffi-gobject_introspection/i_interface_info.rb +1 -1
  33. data/lib/ffi-gobject_introspection/i_object_info.rb +2 -2
  34. data/lib/ffi-gobject_introspection/i_property_info.rb +2 -2
  35. data/lib/ffi-gobject_introspection/i_repository.rb +9 -6
  36. data/lib/ffi-gobject_introspection/i_struct_info.rb +2 -1
  37. data/lib/ffi-gobject_introspection/i_type_info.rb +13 -7
  38. data/lib/ffi-gobject_introspection/i_unresolved_info.rb +1 -1
  39. data/lib/ffi-gobject_introspection/i_vfunc_info.rb +1 -1
  40. data/lib/ffi-gobject_introspection/lib.rb +30 -19
  41. data/lib/ffi-gobject_introspection/strv.rb +1 -1
  42. data/lib/gir_ffi-base.rb +1 -1
  43. data/lib/gir_ffi-base/gobject.rb +26 -25
  44. data/lib/gir_ffi-base/gobject/lib.rb +3 -2
  45. data/lib/gir_ffi.rb +3 -3
  46. data/lib/gir_ffi/allocation_helper.rb +1 -1
  47. data/lib/gir_ffi/arg_helper.rb +4 -4
  48. data/lib/gir_ffi/{in_out_pointer.rb → array_element_convertor.rb} +16 -23
  49. data/lib/gir_ffi/boolean.rb +1 -1
  50. data/lib/gir_ffi/boxed_base.rb +1 -1
  51. data/lib/gir_ffi/builder.rb +18 -10
  52. data/lib/gir_ffi/builder_helper.rb +6 -1
  53. data/lib/gir_ffi/builders/argument_builder.rb +19 -19
  54. data/lib/gir_ffi/builders/argument_builder_collection.rb +2 -2
  55. data/lib/gir_ffi/builders/base_argument_builder.rb +1 -0
  56. data/lib/gir_ffi/builders/base_method_builder.rb +7 -7
  57. data/lib/gir_ffi/builders/base_return_value_builder.rb +1 -1
  58. data/lib/gir_ffi/builders/base_type_builder.rb +1 -1
  59. data/lib/gir_ffi/builders/c_to_ruby_convertor.rb +5 -5
  60. data/lib/gir_ffi/builders/callback_argument_builder.rb +8 -8
  61. data/lib/gir_ffi/builders/callback_builder.rb +16 -4
  62. data/lib/gir_ffi/builders/callback_return_value_builder.rb +2 -2
  63. data/lib/gir_ffi/builders/closure_argument_builder.rb +1 -1
  64. data/lib/gir_ffi/builders/closure_return_value_builder.rb +1 -1
  65. data/lib/gir_ffi/builders/constant_builder.rb +1 -1
  66. data/lib/gir_ffi/builders/constructor_builder.rb +9 -9
  67. data/lib/gir_ffi/builders/enum_builder.rb +16 -3
  68. data/lib/gir_ffi/builders/field_builder.rb +20 -18
  69. data/lib/gir_ffi/builders/flags_builder.rb +2 -2
  70. data/lib/gir_ffi/builders/full_c_to_ruby_convertor.rb +1 -1
  71. data/lib/gir_ffi/builders/function_builder.rb +11 -5
  72. data/lib/gir_ffi/builders/initializer_builder.rb +3 -3
  73. data/lib/gir_ffi/builders/initializer_return_value_builder.rb +2 -2
  74. data/lib/gir_ffi/builders/interface_builder.rb +2 -2
  75. data/lib/gir_ffi/builders/mapping_method_builder.rb +9 -9
  76. data/lib/gir_ffi/builders/marshalling_method_builder.rb +7 -7
  77. data/lib/gir_ffi/builders/method_template.rb +1 -1
  78. data/lib/gir_ffi/builders/module_builder.rb +7 -7
  79. data/lib/gir_ffi/builders/object_builder.rb +6 -6
  80. data/lib/gir_ffi/builders/property_argument_builder.rb +1 -1
  81. data/lib/gir_ffi/builders/property_builder.rb +13 -12
  82. data/lib/gir_ffi/builders/property_return_value_builder.rb +1 -1
  83. data/lib/gir_ffi/builders/registered_type_builder.rb +14 -5
  84. data/lib/gir_ffi/builders/return_value_builder.rb +4 -4
  85. data/lib/gir_ffi/builders/ruby_to_c_convertor.rb +6 -6
  86. data/lib/gir_ffi/builders/signal_closure_builder.rb +2 -2
  87. data/lib/gir_ffi/builders/struct_builder.rb +6 -4
  88. data/lib/gir_ffi/builders/struct_like.rb +1 -1
  89. data/lib/gir_ffi/builders/type_builder.rb +12 -12
  90. data/lib/gir_ffi/builders/unintrospectable_boxed_builder.rb +2 -2
  91. data/lib/gir_ffi/builders/unintrospectable_builder.rb +2 -2
  92. data/lib/gir_ffi/builders/union_builder.rb +4 -4
  93. data/lib/gir_ffi/builders/user_defined_builder.rb +2 -2
  94. data/lib/gir_ffi/builders/vfunc_argument_builder.rb +1 -1
  95. data/lib/gir_ffi/builders/vfunc_builder.rb +8 -8
  96. data/lib/gir_ffi/builders/with_layout.rb +2 -2
  97. data/lib/gir_ffi/callback_base.rb +4 -6
  98. data/lib/gir_ffi/class_base.rb +6 -5
  99. data/lib/gir_ffi/core.rb +19 -20
  100. data/lib/gir_ffi/enum_base.rb +1 -1
  101. data/lib/gir_ffi/enum_like_base.rb +2 -2
  102. data/lib/gir_ffi/error_argument_info.rb +2 -2
  103. data/lib/gir_ffi/error_type_info.rb +1 -1
  104. data/lib/gir_ffi/ffi_ext.rb +1 -1
  105. data/lib/gir_ffi/ffi_ext/pointer.rb +1 -1
  106. data/lib/gir_ffi/flags_base.rb +1 -1
  107. data/lib/gir_ffi/in_pointer.rb +10 -0
  108. data/lib/gir_ffi/info_ext.rb +15 -14
  109. data/lib/gir_ffi/info_ext/full_type_name.rb +3 -3
  110. data/lib/gir_ffi/info_ext/i_arg_info.rb +1 -1
  111. data/lib/gir_ffi/info_ext/i_callable_info.rb +1 -1
  112. data/lib/gir_ffi/info_ext/i_callback_info.rb +1 -1
  113. data/lib/gir_ffi/info_ext/i_field_info.rb +1 -1
  114. data/lib/gir_ffi/info_ext/i_function_info.rb +1 -1
  115. data/lib/gir_ffi/info_ext/i_property_info.rb +2 -2
  116. data/lib/gir_ffi/info_ext/i_registered_type_info.rb +4 -5
  117. data/lib/gir_ffi/info_ext/i_signal_info.rb +7 -3
  118. data/lib/gir_ffi/info_ext/i_type_info.rb +48 -26
  119. data/lib/gir_ffi/info_ext/i_unresolved_info.rb +1 -1
  120. data/lib/gir_ffi/info_ext/i_value_info.rb +25 -0
  121. data/lib/gir_ffi/info_ext/i_vfunc_info.rb +2 -2
  122. data/lib/gir_ffi/info_ext/safe_constant_name.rb +8 -8
  123. data/lib/gir_ffi/info_ext/safe_function_name.rb +2 -2
  124. data/lib/gir_ffi/interface_base.rb +3 -3
  125. data/lib/gir_ffi/lib_c.rb +1 -1
  126. data/lib/gir_ffi/method_stubber.rb +1 -1
  127. data/lib/gir_ffi/module_base.rb +1 -1
  128. data/lib/gir_ffi/object_base.rb +3 -4
  129. data/lib/gir_ffi/receiver_argument_info.rb +1 -1
  130. data/lib/gir_ffi/receiver_type_info.rb +2 -2
  131. data/lib/gir_ffi/registered_type_base.rb +1 -1
  132. data/lib/gir_ffi/sized_array.rb +4 -2
  133. data/lib/gir_ffi/struct.rb +1 -1
  134. data/lib/gir_ffi/struct_base.rb +1 -1
  135. data/lib/gir_ffi/type_map.rb +2 -23
  136. data/lib/gir_ffi/unintrospectable_boxed_info.rb +2 -2
  137. data/lib/gir_ffi/unintrospectable_type_info.rb +5 -1
  138. data/lib/gir_ffi/union.rb +1 -1
  139. data/lib/gir_ffi/union_base.rb +1 -1
  140. data/lib/gir_ffi/user_defined_object_info.rb +6 -2
  141. data/lib/gir_ffi/user_defined_property_info.rb +33 -33
  142. data/lib/gir_ffi/version.rb +1 -1
  143. data/tasks/test.rake +3 -2
  144. data/test/base_test_helper.rb +16 -9
  145. data/test/ffi-glib/array_test.rb +71 -56
  146. data/test/ffi-glib/byte_array_test.rb +13 -7
  147. data/test/ffi-glib/bytes_test.rb +24 -19
  148. data/test/ffi-glib/closure_test.rb +11 -11
  149. data/test/ffi-glib/destroy_notify_test.rb +6 -6
  150. data/test/ffi-glib/hash_table_test.rb +27 -27
  151. data/test/ffi-glib/list_test.rb +22 -22
  152. data/test/ffi-glib/main_loop_test.rb +12 -12
  153. data/test/ffi-glib/ptr_array_test.rb +39 -39
  154. data/test/ffi-glib/ruby_closure_test.rb +10 -10
  155. data/test/ffi-glib/s_list_test.rb +20 -20
  156. data/test/ffi-glib/strv_test.rb +19 -19
  157. data/test/ffi-glib/variant_test.rb +5 -5
  158. data/test/ffi-gobject/gobject_test.rb +48 -44
  159. data/test/ffi-gobject/object_class_test.rb +8 -8
  160. data/test/ffi-gobject/object_test.rb +51 -68
  161. data/test/ffi-gobject/param_spec_test.rb +12 -12
  162. data/test/ffi-gobject/value_test.rb +145 -125
  163. data/test/ffi-gobject_introspection/gobject_type_init_test.rb +9 -9
  164. data/test/ffi-gobject_introspection/i_base_info_test.rb +15 -16
  165. data/test/ffi-gobject_introspection/i_constant_info_test.rb +9 -13
  166. data/test/ffi-gobject_introspection/i_enum_info_test.rb +7 -7
  167. data/test/ffi-gobject_introspection/i_function_info_test.rb +1 -1
  168. data/test/ffi-gobject_introspection/i_interface_info_test.rb +10 -10
  169. data/test/ffi-gobject_introspection/i_object_info_test.rb +23 -23
  170. data/test/ffi-gobject_introspection/i_property_info_test.rb +19 -19
  171. data/test/ffi-gobject_introspection/i_registered_type_info_test.rb +10 -10
  172. data/test/ffi-gobject_introspection/i_repository_test.rb +34 -34
  173. data/test/ffi-gobject_introspection/i_struct_info_test.rb +10 -10
  174. data/test/ffi-gobject_introspection/i_type_info_test.rb +12 -15
  175. data/test/ffi-gobject_introspection/i_union_info_test.rb +7 -7
  176. data/test/ffi-gobject_introspection/i_vfunc_info_test.rb +16 -16
  177. data/test/ffi-gobject_introspection/lib_test.rb +3 -3
  178. data/test/ffi-gobject_introspection/strv_test.rb +9 -9
  179. data/test/ffi-gobject_test.rb +47 -45
  180. data/test/gir_ffi/allocation_helper_test.rb +13 -13
  181. data/test/gir_ffi/arg_helper_test.rb +71 -65
  182. data/test/gir_ffi/boolean_test.rb +20 -20
  183. data/test/gir_ffi/boxed_base_test.rb +18 -18
  184. data/test/gir_ffi/builder_test.rb +81 -213
  185. data/test/gir_ffi/builders/argument_builder_test.rb +321 -287
  186. data/test/gir_ffi/builders/base_argument_builder_test.rb +1 -1
  187. data/test/gir_ffi/builders/callback_argument_builder_test.rb +57 -56
  188. data/test/gir_ffi/builders/callback_builder_test.rb +71 -72
  189. data/test/gir_ffi/builders/callback_return_value_builder_test.rb +40 -41
  190. data/test/gir_ffi/builders/constant_builder_test.rb +1 -1
  191. data/test/gir_ffi/builders/constructor_builder_test.rb +12 -10
  192. data/test/gir_ffi/builders/enum_builder_test.rb +12 -11
  193. data/test/gir_ffi/builders/field_builder_test.rb +48 -42
  194. data/test/gir_ffi/builders/function_builder_test.rb +256 -224
  195. data/test/gir_ffi/builders/initializer_builder_test.rb +16 -14
  196. data/test/gir_ffi/builders/interface_builder_test.rb +9 -9
  197. data/test/gir_ffi/builders/module_builder_test.rb +18 -18
  198. data/test/gir_ffi/builders/object_builder_test.rb +41 -41
  199. data/test/gir_ffi/builders/property_builder_test.rb +94 -94
  200. data/test/gir_ffi/builders/registered_type_builder_test.rb +35 -11
  201. data/test/gir_ffi/builders/return_value_builder_test.rb +227 -223
  202. data/test/gir_ffi/builders/signal_closure_builder_test.rb +124 -113
  203. data/test/gir_ffi/builders/struct_builder_test.rb +38 -35
  204. data/test/gir_ffi/builders/unintrospectable_boxed_builder_test.rb +8 -14
  205. data/test/gir_ffi/builders/unintrospectable_builder_test.rb +34 -23
  206. data/test/gir_ffi/builders/union_builder_test.rb +12 -15
  207. data/test/gir_ffi/builders/user_defined_builder_test.rb +152 -148
  208. data/test/gir_ffi/builders/vfunc_argument_builder_test.rb +46 -40
  209. data/test/gir_ffi/builders/vfunc_builder_test.rb +149 -157
  210. data/test/gir_ffi/callback_base_test.rb +9 -9
  211. data/test/gir_ffi/class_base_test.rb +56 -53
  212. data/test/gir_ffi/core_test.rb +36 -35
  213. data/test/gir_ffi/enum_base_test.rb +19 -19
  214. data/test/gir_ffi/error_type_info_test.rb +23 -23
  215. data/test/gir_ffi/ffi_ext/pointer_test.rb +9 -7
  216. data/test/gir_ffi/g_type_test.rb +11 -11
  217. data/test/gir_ffi/in_pointer_test.rb +70 -50
  218. data/test/gir_ffi/info_ext/i_callable_info_test.rb +5 -5
  219. data/test/gir_ffi/info_ext/i_callback_info_test.rb +6 -5
  220. data/test/gir_ffi/info_ext/i_field_info_test.rb +6 -6
  221. data/test/gir_ffi/info_ext/i_function_info_test.rb +17 -17
  222. data/test/gir_ffi/info_ext/i_signal_info_test.rb +8 -8
  223. data/test/gir_ffi/info_ext/i_type_info_test.rb +231 -216
  224. data/test/gir_ffi/info_ext/i_unresolved_info_test.rb +4 -4
  225. data/test/gir_ffi/info_ext/safe_constant_name_test.rb +8 -8
  226. data/test/gir_ffi/info_ext/safe_function_name_test.rb +8 -8
  227. data/test/gir_ffi/interface_base_test.rb +8 -8
  228. data/test/gir_ffi/method_stubber_test.rb +21 -19
  229. data/test/gir_ffi/object_base_test.rb +23 -23
  230. data/test/gir_ffi/object_store_test.rb +13 -13
  231. data/test/gir_ffi/receiver_argument_info_test.rb +15 -15
  232. data/test/gir_ffi/sized_array_test.rb +68 -68
  233. data/test/gir_ffi/struct_base_test.rb +8 -8
  234. data/test/gir_ffi/struct_like_base_test.rb +64 -64
  235. data/test/gir_ffi/type_map_test.rb +8 -8
  236. data/test/gir_ffi/unintrospectable_type_info_test.rb +33 -33
  237. data/test/gir_ffi/union_base_test.rb +8 -8
  238. data/test/gir_ffi/user_defined_object_info_test.rb +34 -34
  239. data/test/gir_ffi/user_defined_property_info_test.rb +16 -16
  240. data/test/gir_ffi/variable_name_generator_test.rb +8 -8
  241. data/test/gir_ffi/version_test.rb +4 -4
  242. data/test/gir_ffi/zero_terminated_test.rb +34 -34
  243. data/test/gir_ffi_test_helper.rb +3 -3
  244. data/test/integration/callback_exceptions_test.rb +17 -21
  245. data/test/integration/derived_classes_test.rb +14 -13
  246. data/test/integration/generated_everything_test.rb +225 -224
  247. data/test/integration/generated_gimarshallingtests_test.rb +1174 -1060
  248. data/test/integration/generated_gio_test.rb +36 -36
  249. data/test/integration/generated_glib_test.rb +4 -6
  250. data/test/integration/generated_gobject_test.rb +43 -35
  251. data/test/integration/generated_gst_test.rb +20 -16
  252. data/test/integration/generated_gtk_source_test.rb +9 -15
  253. data/test/integration/generated_gtop_test.rb +8 -15
  254. data/test/integration/generated_pango_ft2_test.rb +2 -2
  255. data/test/integration/generated_pango_test.rb +4 -4
  256. data/test/integration/generated_regress_test.rb +1858 -1632
  257. data/test/integration/generated_secret_test.rb +8 -11
  258. data/test/integration/generated_utility_test.rb +81 -81
  259. data/test/integration/generated_warnlib_test.rb +17 -21
  260. data/test/integration/method_lookup_test.rb +6 -6
  261. data/test/introspection_test_helper.rb +49 -7
  262. data/test/minitest/stats_plugin.rb +1 -1
  263. metadata +21 -23
  264. data/lib/ffi-glib/array_methods.rb +0 -16
  265. data/test/gir_ffi/in_out_pointer_test.rb +0 -56
@@ -1,22 +1,28 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
5
  describe GLib::ByteArray do
6
- it 'can succesfully be created with GLib::ByteArray.new' do
6
+ it "can succesfully be created with GLib::ByteArray.new" do
7
7
  ba = GLib::ByteArray.new
8
8
  assert_instance_of GLib::ByteArray, ba
9
9
  end
10
10
 
11
- it 'allows strings to be appended to it' do
11
+ it "allows strings to be appended to it" do
12
12
  ba = GLib::ByteArray.new
13
- ba.append 'abdc'
13
+ ba.append "abdc"
14
14
  pass
15
15
  end
16
16
 
17
- it 'has a working #to_string method' do
17
+ it "has a working #to_string method" do
18
18
  ba = GLib::ByteArray.new
19
- ba = ba.append 'abdc'
20
- assert_equal 'abdc', ba.to_string
19
+ ba = ba.append "abdc"
20
+ assert_equal "abdc", ba.to_string
21
+ end
22
+
23
+ it "can be created from a string" do
24
+ str = "cdba"
25
+ ba = GLib::ByteArray.from str
26
+ _(ba.to_string).must_equal str
21
27
  end
22
28
  end
@@ -1,56 +1,61 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
5
  describe GLib::Bytes do
6
- it 'can succesfully be created with GLib::Bytes.new' do
6
+ it "can succesfully be created with GLib::Bytes.new" do
7
7
  bytes = GLib::Bytes.new [1, 2, 3]
8
- bytes.must_be_instance_of GLib::Bytes
8
+ _(bytes).must_be_instance_of GLib::Bytes
9
9
  end
10
10
 
11
- it 'has a working #get_size method' do
11
+ it "has a working #get_size method" do
12
12
  bytes = GLib::Bytes.new [1, 2, 3]
13
- bytes.get_size.must_equal 3
13
+ _(bytes.get_size).must_equal 3
14
14
  end
15
15
 
16
- it 'has a working #get_data method' do
16
+ it "has #size as an alias for #get_size" do
17
17
  bytes = GLib::Bytes.new [1, 2, 3]
18
- bytes.get_data.to_a.must_equal [1, 2, 3]
18
+ _(bytes.size).must_equal 3
19
19
  end
20
20
 
21
- it 'has a working #each method' do
21
+ it "has a working #get_data method" do
22
+ bytes = GLib::Bytes.new [1, 2, 3]
23
+ _(bytes.get_data.to_a).must_equal [1, 2, 3]
24
+ end
25
+
26
+ it "has a working #each method" do
22
27
  a = []
23
28
  bytes = GLib::Bytes.new [1, 2, 3]
24
29
  bytes.each do |v|
25
30
  a.unshift v
26
31
  end
27
- a.must_equal [3, 2, 1]
32
+ _(a).must_equal [3, 2, 1]
28
33
  end
29
34
 
30
- it 'has a working #to_a method' do
35
+ it "has a working #to_a method" do
31
36
  bytes = GLib::Bytes.new [1, 2, 3]
32
- bytes.to_a.must_equal [1, 2, 3]
37
+ _(bytes.to_a).must_equal [1, 2, 3]
33
38
  end
34
39
 
35
- describe '.from' do
36
- it 'creates a GLib::Bytes object form an array of small integers' do
40
+ describe ".from" do
41
+ it "creates a GLib::Bytes object form an array of small integers" do
37
42
  bytes = GLib::Bytes.from [1, 2, 3]
38
- bytes.must_be_instance_of GLib::Bytes
39
- bytes.to_a.must_equal [1, 2, 3]
43
+ _(bytes).must_be_instance_of GLib::Bytes
44
+ _(bytes.to_a).must_equal [1, 2, 3]
40
45
  end
41
46
 
42
- it 'returns its argument if given a GLib::Bytes object' do
47
+ it "returns its argument if given a GLib::Bytes object" do
43
48
  bytes = GLib::Bytes.new [1, 2, 3]
44
49
  result = GLib::Bytes.from bytes
45
50
  assert result.equal?(bytes)
46
51
  end
47
52
 
48
- it 'wraps its argument if given a pointer' do
53
+ it "wraps its argument if given a pointer" do
49
54
  bytes = GLib::Bytes.new [1, 2, 3]
50
55
  ptr = bytes.to_ptr
51
56
  result = GLib::Bytes.from ptr
52
- result.to_a.must_equal [1, 2, 3]
53
- result.to_ptr.must_equal ptr
57
+ _(result.to_a).must_equal [1, 2, 3]
58
+ _(result.to_ptr).must_equal ptr
54
59
  end
55
60
  end
56
61
  end
@@ -1,38 +1,38 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
5
  describe GObject::Closure do
6
- describe '.new' do
7
- it 'updates the ref_count of the created object' do
6
+ describe ".new" do
7
+ it "updates the ref_count of the created object" do
8
8
  # Tested on a subclass ...
9
9
  c = GObject::RubyClosure.new {}
10
- c.ref_count.must_equal 1
10
+ _(c.ref_count).must_equal 1
11
11
  end
12
12
  end
13
13
 
14
- describe '#invoke' do
15
- it 'invokes the closure' do
14
+ describe "#invoke" do
15
+ it "invokes the closure" do
16
16
  a = 0
17
17
  c = GObject::RubyClosure.new { a = 2 }
18
18
  c2 = GObject::Closure.wrap(c.to_ptr)
19
19
  c2.invoke nil, []
20
- a.must_equal 2
20
+ _(a).must_equal 2
21
21
  end
22
22
 
23
- it 'returns the closure result' do
23
+ it "returns the closure result" do
24
24
  c = GObject::RubyClosure.new { 3 }
25
25
  c2 = GObject::Closure.wrap(c.to_ptr)
26
26
  result = c2.invoke GObject::Value.for_gtype(GObject::TYPE_INT), []
27
- result.must_equal 3
27
+ _(result).must_equal 3
28
28
  end
29
29
 
30
- it 'passes arguments' do
30
+ it "passes arguments" do
31
31
  a = 0
32
32
  c = GObject::RubyClosure.new { |val| a = val }
33
33
  c2 = GObject::Closure.wrap(c.to_ptr)
34
34
  c2.invoke nil, [5]
35
- a.must_equal 5
35
+ _(a).must_equal 5
36
36
  end
37
37
  end
38
38
  end
@@ -1,18 +1,18 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
5
  describe GLib::DestroyNotify do
6
- describe '.default' do
7
- it 'removes the passed-in key from the callback store' do
8
- dummy_proc = 'some-callback'
6
+ describe ".default" do
7
+ it "removes the passed-in key from the callback store" do
8
+ dummy_proc = "some-callback"
9
9
  GirFFI::CallbackBase.store_callback dummy_proc
10
- GirFFI::CallbackBase::CALLBACKS[dummy_proc.object_id].wont_be_nil
10
+ _(GirFFI::CallbackBase::CALLBACKS[dummy_proc.object_id]).wont_be_nil
11
11
 
12
12
  user_data = GirFFI::ArgHelper.store dummy_proc
13
13
  GLib::DestroyNotify.default.call user_data
14
14
 
15
- GirFFI::CallbackBase::CALLBACKS[dummy_proc.object_id].must_be_nil
15
+ _(GirFFI::CallbackBase::CALLBACKS[dummy_proc.object_id]).must_be_nil
16
16
  end
17
17
  end
18
18
  end
@@ -1,68 +1,68 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
5
  describe GLib::HashTable do
6
- it 'knows its key and value types' do
6
+ it "knows its key and value types" do
7
7
  hsh = GLib::HashTable.new :gint32, :utf8
8
8
  assert_equal :gint32, hsh.key_type
9
9
  assert_equal :utf8, hsh.value_type
10
10
  end
11
11
 
12
- describe '::from' do
13
- it 'creates a GHashTable from a Ruby hash' do
12
+ describe "::from" do
13
+ it "creates a GHashTable from a Ruby hash" do
14
14
  hsh = GLib::HashTable.from [:utf8, :gint32],
15
- 'foo' => 23, 'bar' => 32
16
- assert_equal({ 'foo' => 23, 'bar' => 32 }, hsh.to_hash)
15
+ "foo" => 23, "bar" => 32
16
+ assert_equal({ "foo" => 23, "bar" => 32 }, hsh.to_hash)
17
17
  end
18
18
 
19
- it 'return its argument if given a GHashTable' do
20
- hsh = GLib::HashTable.from [:utf8, :gint32], 'foo' => 23, 'bar' => 32
19
+ it "return its argument if given a GHashTable" do
20
+ hsh = GLib::HashTable.from [:utf8, :gint32], "foo" => 23, "bar" => 32
21
21
  hsh2 = GLib::HashTable.from [:utf8, :gint32], hsh
22
22
  assert hsh2.equal? hsh
23
23
  end
24
24
 
25
- it 'wraps its argument if given a pointer' do
26
- hsh = GLib::HashTable.from [:utf8, :gint32], 'foo' => 23, 'bar' => 32
25
+ it "wraps its argument if given a pointer" do
26
+ hsh = GLib::HashTable.from [:utf8, :gint32], "foo" => 23, "bar" => 32
27
27
  pointer = hsh.to_ptr
28
28
  assert_instance_of FFI::Pointer, pointer
29
29
  hsh2 = GLib::HashTable.from [:utf8, :gint32], pointer
30
30
  assert_instance_of GLib::HashTable, hsh2
31
31
  refute hsh2.equal? hsh
32
- hsh2.to_hash.must_equal hsh.to_hash
32
+ _(hsh2.to_hash).must_equal hsh.to_hash
33
33
  end
34
34
  end
35
35
 
36
- it 'allows key-value pairs to be inserted' do
36
+ it "allows key-value pairs to be inserted" do
37
37
  h = GLib::HashTable.new :utf8, :utf8
38
- h.insert 'foo', 'bar'
39
- h.to_hash.must_equal 'foo' => 'bar'
38
+ h.insert "foo", "bar"
39
+ _(h.to_hash).must_equal "foo" => "bar"
40
40
  end
41
41
 
42
- it 'includes Enumerable' do
43
- GLib::HashTable.must_include Enumerable
42
+ it "includes Enumerable" do
43
+ _(GLib::HashTable).must_include Enumerable
44
44
  end
45
45
 
46
- describe 'a HashTable provided by the system' do
46
+ describe "a HashTable provided by the system" do
47
47
  before do
48
48
  GirFFI.setup :Regress
49
49
  @hash = Regress.test_ghash_container_return
50
50
  end
51
51
 
52
- it 'has a working #each method' do
52
+ it "has a working #each method" do
53
53
  a = {}
54
54
  @hash.each { |k, v| a[k] = v }
55
- a.must_be :==,
56
- 'foo' => 'bar',
57
- 'baz' => 'bat',
58
- 'qux' => 'quux'
55
+ _(a).must_be :==,
56
+ "foo" => "bar",
57
+ "baz" => "bat",
58
+ "qux" => "quux"
59
59
  end
60
60
 
61
- it 'has a working #to_hash method' do
62
- @hash.to_hash.must_be :==,
63
- 'foo' => 'bar',
64
- 'baz' => 'bat',
65
- 'qux' => 'quux'
61
+ it "has a working #to_hash method" do
62
+ _(@hash.to_hash).must_be :==,
63
+ "foo" => "bar",
64
+ "baz" => "bat",
65
+ "qux" => "quux"
66
66
  end
67
67
  end
68
68
  end
@@ -1,27 +1,27 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
5
  describe GLib::List do
6
- it 'knows its element type' do
6
+ it "knows its element type" do
7
7
  arr = GLib::List.new :gint32
8
8
  assert_equal :gint32, arr.element_type
9
9
  end
10
10
 
11
- describe '#append' do
12
- it 'appends integer values' do
11
+ describe "#append" do
12
+ it "appends integer values" do
13
13
  lst = GLib::List.new :gint32
14
14
  res = lst.append 1
15
15
  assert_equal 1, res.data
16
16
  end
17
17
 
18
- it 'appends string values' do
18
+ it "appends string values" do
19
19
  lst = GLib::List.new :utf8
20
- res = lst.append 'bla'
21
- assert_equal 'bla', res.data
20
+ res = lst.append "bla"
21
+ assert_equal "bla", res.data
22
22
  end
23
23
 
24
- it 'appends multiple values into a single list' do
24
+ it "appends multiple values into a single list" do
25
25
  lst = GLib::List.new :gint32
26
26
 
27
27
  lst = lst.append 1
@@ -33,54 +33,54 @@ describe GLib::List do
33
33
  end
34
34
  end
35
35
 
36
- describe '::from' do
37
- it 'creates a GList from a Ruby array' do
36
+ describe "::from" do
37
+ it "creates a GList from a Ruby array" do
38
38
  lst = GLib::List.from :gint32, [3, 2, 1]
39
39
  assert_equal [3, 2, 1], lst.to_a
40
40
  end
41
41
 
42
- it 'return its argument if given a GList' do
42
+ it "return its argument if given a GList" do
43
43
  lst = GLib::List.from :gint32, [3, 2, 1]
44
44
  lst2 = GLib::List.from :gint32, lst
45
45
  assert lst2.equal? lst
46
46
  end
47
47
 
48
- it 'wraps its argument if given a pointer' do
48
+ it "wraps its argument if given a pointer" do
49
49
  lst = GLib::List.from :gint32, [3, 2, 1]
50
50
  pointer = lst.to_ptr
51
51
  assert_instance_of FFI::Pointer, pointer
52
52
  lst2 = GLib::List.from :gint32, pointer
53
53
  assert_instance_of GLib::List, lst2
54
54
  refute lst2.equal? lst
55
- lst2.to_a.must_equal lst.to_a
55
+ _(lst2.to_a).must_equal lst.to_a
56
56
  end
57
57
  end
58
58
 
59
- describe '#==' do
60
- it 'returns true when comparing to an array with the same elements' do
59
+ describe "#==" do
60
+ it "returns true when comparing to an array with the same elements" do
61
61
  list = GLib::List.from :gint32, [1, 2, 3]
62
62
 
63
- list.must_be :==, [1, 2, 3]
63
+ _(list).must_be :==, [1, 2, 3]
64
64
  end
65
65
 
66
- it 'returns false when comparing to an array with different elements' do
66
+ it "returns false when comparing to an array with different elements" do
67
67
  list = GLib::List.from :gint32, [1, 2, 3]
68
68
 
69
- list.wont_be :==, [1, 2]
69
+ _(list).wont_be :==, [1, 2]
70
70
  end
71
71
 
72
- it 'returns true when comparing to a list with the same elements' do
72
+ it "returns true when comparing to a list with the same elements" do
73
73
  list = GLib::List.from :gint32, [1, 2, 3]
74
74
  other = GLib::List.from :gint32, [1, 2, 3]
75
75
 
76
- list.must_be :==, other
76
+ _(list).must_be :==, other
77
77
  end
78
78
 
79
- it 'returns false when comparing to a list with different elements' do
79
+ it "returns false when comparing to a list with different elements" do
80
80
  list = GLib::List.from :gint32, [1, 2, 3]
81
81
  other = GLib::List.from :gint32, [1, 2]
82
82
 
83
- list.wont_be :==, other
83
+ _(list).wont_be :==, other
84
84
  end
85
85
  end
86
86
  end
@@ -1,12 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
5
  class MainLoopTestException < RuntimeError; end
6
6
 
7
7
  describe GLib::MainLoop do
8
- describe '#run' do
9
- it 'allows other threads to run' do
8
+ describe "#run" do
9
+ it "allows other threads to run" do
10
10
  main_loop = GLib::MainLoop.new nil, false
11
11
 
12
12
  a = []
@@ -16,26 +16,26 @@ describe GLib::MainLoop do
16
16
 
17
17
  slow_thread = Thread.new do
18
18
  sleep 0.001
19
- a << 'During run'
19
+ a << "During run"
20
20
  end
21
21
 
22
- a << 'Before run'
22
+ a << "Before run"
23
23
  main_loop.run
24
- a << 'After run'
24
+ a << "After run"
25
25
 
26
26
  slow_thread.join
27
27
 
28
- a.must_equal ['Before run', 'During run', 'After run']
28
+ _(a).must_equal ["Before run", "During run", "After run"]
29
29
  end
30
30
 
31
- it 'raises and quits on exceptions in callbacks' do
31
+ it "raises and quits on exceptions in callbacks" do
32
32
  main_loop = GLib::MainLoop.new nil, false
33
33
 
34
- a = 'expected'
34
+ a = "expected"
35
35
 
36
36
  # This timeout shouldn't get called
37
37
  guard = GLib.timeout_add GLib::PRIORITY_DEFAULT, 150 do
38
- a = 'unexpected'
38
+ a = "unexpected"
39
39
  main_loop.quit
40
40
  end
41
41
 
@@ -43,8 +43,8 @@ describe GLib::MainLoop do
43
43
  raise MainLoopTestException
44
44
  end
45
45
 
46
- -> { main_loop.run }.must_raise MainLoopTestException
47
- a.must_equal 'expected'
46
+ _(-> { main_loop.run }).must_raise MainLoopTestException
47
+ _(a).must_equal "expected"
48
48
 
49
49
  # Clean up uncalled timeout
50
50
  GLib.source_remove guard