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,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::SList do
6
- it 'knows its element type' do
6
+ it "knows its element type" do
7
7
  arr = GLib::SList.new :gint32
8
8
  assert_equal :gint32, arr.element_type
9
9
  end
10
10
 
11
- describe '#prepend' do
12
- it 'prepends integer values' do
11
+ describe "#prepend" do
12
+ it "prepends integer values" do
13
13
  lst = GLib::SList.new :gint32
14
14
  res = lst.prepend 1
15
15
  assert_equal 1, res.data
16
16
  end
17
17
 
18
- it 'prepends string values' do
18
+ it "prepends string values" do
19
19
  lst = GLib::SList.new :utf8
20
- res = lst.prepend 'bla'
21
- assert_equal 'bla', res.data
20
+ res = lst.prepend "bla"
21
+ assert_equal "bla", res.data
22
22
  end
23
23
 
24
- it 'prepends multiple values into a single list' do
24
+ it "prepends multiple values into a single list" do
25
25
  lst = GLib::SList.new :gint32
26
26
 
27
27
  res = lst.prepend 1
@@ -33,44 +33,44 @@ describe GLib::SList do
33
33
  end
34
34
  end
35
35
 
36
- describe '::from' do
37
- it 'creates a GSList from a Ruby array' do
36
+ describe "::from" do
37
+ it "creates a GSList from a Ruby array" do
38
38
  lst = GLib::SList.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 GSList' do
42
+ it "return its argument if given a GSList" do
43
43
  lst = GLib::SList.from :gint32, [3, 2, 1]
44
44
  lst2 = GLib::SList.from :gint32, lst
45
45
  assert_equal lst, lst2
46
46
  end
47
47
  end
48
48
 
49
- describe '#==' do
50
- it 'returns true when comparing to an array with the same elements' do
49
+ describe "#==" do
50
+ it "returns true when comparing to an array with the same elements" do
51
51
  list = GLib::SList.from :gint32, [1, 2, 3]
52
52
 
53
- list.must_be :==, [1, 2, 3]
53
+ _(list).must_be :==, [1, 2, 3]
54
54
  end
55
55
 
56
- it 'returns false when comparing to an array with different elements' do
56
+ it "returns false when comparing to an array with different elements" do
57
57
  list = GLib::SList.from :gint32, [1, 2, 3]
58
58
 
59
- list.wont_be :==, [1, 2]
59
+ _(list).wont_be :==, [1, 2]
60
60
  end
61
61
 
62
- it 'returns true when comparing to a list with the same elements' do
62
+ it "returns true when comparing to a list with the same elements" do
63
63
  list = GLib::SList.from :gint32, [1, 2, 3]
64
64
  other = GLib::SList.from :gint32, [1, 2, 3]
65
65
 
66
- list.must_be :==, other
66
+ _(list).must_be :==, other
67
67
  end
68
68
 
69
- it 'returns false when comparing to a list with different elements' do
69
+ it "returns false when comparing to a list with different elements" do
70
70
  list = GLib::SList.from :gint32, [1, 2, 3]
71
71
  other = GLib::SList.from :gint32, [1, 2]
72
72
 
73
- list.wont_be :==, other
73
+ _(list).wont_be :==, other
74
74
  end
75
75
  end
76
76
  end
@@ -1,60 +1,60 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'base_test_helper'
3
+ require "base_test_helper"
4
4
 
5
5
  describe GLib::Strv do
6
- describe '::from' do
7
- it 'creates a Strv from a Ruby array' do
6
+ describe "::from" do
7
+ it "creates a Strv from a Ruby array" do
8
8
  strv = GLib::Strv.from %w(1 2 3)
9
- strv.must_be_instance_of GLib::Strv
10
- strv.to_a.must_equal %w(1 2 3)
9
+ _(strv).must_be_instance_of GLib::Strv
10
+ _(strv.to_a).must_equal %w(1 2 3)
11
11
  end
12
12
 
13
- it 'return its argument if given a Strv' do
13
+ it "return its argument if given a Strv" do
14
14
  strv = GLib::Strv.from %w(1 2 3)
15
15
  strv2 = GLib::Strv.from strv
16
16
  assert strv2.equal? strv
17
17
  end
18
18
 
19
- it 'wraps its argument if given a pointer' do
19
+ it "wraps its argument if given a pointer" do
20
20
  strv = GLib::Strv.from %w(1 2 3)
21
21
 
22
22
  pointer = strv.to_ptr
23
- pointer.must_be_kind_of FFI::Pointer
23
+ _(pointer).must_be_kind_of FFI::Pointer
24
24
 
25
25
  strv2 = GLib::Strv.from pointer
26
26
 
27
- strv2.must_be_kind_of GLib::Strv
27
+ _(strv2).must_be_kind_of GLib::Strv
28
28
  refute strv2.equal? strv
29
- strv2.to_a.must_equal strv.to_a
29
+ _(strv2.to_a).must_equal strv.to_a
30
30
  end
31
31
  end
32
32
 
33
- describe '#==' do
34
- it 'returns true when comparing to an array with the same elements' do
33
+ describe "#==" do
34
+ it "returns true when comparing to an array with the same elements" do
35
35
  strv = GLib::Strv.from %w(1 2 3)
36
36
 
37
- strv.must_be :==, %w(1 2 3)
37
+ _(strv).must_be :==, %w(1 2 3)
38
38
  end
39
39
 
40
- it 'returns false when comparing to an array with different elements' do
40
+ it "returns false when comparing to an array with different elements" do
41
41
  strv = GLib::Strv.from %w(1 2 3)
42
42
 
43
- strv.wont_be :==, %w(1 2)
43
+ _(strv).wont_be :==, %w(1 2)
44
44
  end
45
45
 
46
- it 'returns true when comparing to a strv with the same elements' do
46
+ it "returns true when comparing to a strv with the same elements" do
47
47
  strv = GLib::Strv.from %w(1 2 3)
48
48
  other = GLib::Strv.from %w(1 2 3)
49
49
 
50
- strv.must_be :==, other
50
+ _(strv).must_be :==, other
51
51
  end
52
52
 
53
- it 'returns false when comparing to a strv with different elements' do
53
+ it "returns false when comparing to a strv with different elements" do
54
54
  strv = GLib::Strv.from %w(1 2 3)
55
55
  other = GLib::Strv.from %w(1 2)
56
56
 
57
- strv.wont_be :==, other
57
+ _(strv).wont_be :==, other
58
58
  end
59
59
  end
60
60
  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
  describe GLib::Variant do
6
- describe '#get_string' do
7
- it 'returns just the contained string' do
8
- var = GLib::Variant.new_string('Foo')
9
- var.get_string.must_equal 'Foo'
6
+ describe "#get_string" do
7
+ it "returns just the contained string" do
8
+ var = GLib::Variant.new_string("Foo")
9
+ _(var.get_string).must_equal "Foo"
10
10
  end
11
11
  end
12
12
  end
@@ -1,71 +1,75 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
- require 'ffi-gobject'
5
+ require "ffi-gobject"
6
6
 
7
7
  GirFFI.setup :GIMarshallingTests
8
8
 
9
9
  describe GObject do
10
- describe '.type_init' do
11
- it 'does not raise an error' do
10
+ describe ".type_init" do
11
+ it "does not raise an error" do
12
12
  GObject.type_init
13
13
  pass
14
14
  end
15
15
  end
16
16
 
17
- it 'has constants for the fundamental GTypes' do
18
- GObject::TYPE_INVALID.must_equal GObject.type_from_name('invalid')
19
- GObject.type_name(GObject::TYPE_INVALID).must_be_nil
17
+ it "has constants for the fundamental GTypes" do
18
+ _(GObject::TYPE_INVALID).must_equal GObject.type_from_name("invalid")
19
+ _(GObject.type_name(GObject::TYPE_INVALID)).must_be_nil
20
20
 
21
- GObject.type_name(GObject::TYPE_NONE).must_equal 'void'
22
- GObject.type_name(GObject::TYPE_INTERFACE).must_equal 'GInterface'
23
- GObject.type_name(GObject::TYPE_CHAR).must_equal 'gchar'
24
- GObject.type_name(GObject::TYPE_UCHAR).must_equal 'guchar'
25
- GObject.type_name(GObject::TYPE_BOOLEAN).must_equal 'gboolean'
26
- GObject.type_name(GObject::TYPE_INT).must_equal 'gint'
27
- GObject.type_name(GObject::TYPE_UINT).must_equal 'guint'
28
- GObject.type_name(GObject::TYPE_LONG).must_equal 'glong'
29
- GObject.type_name(GObject::TYPE_ULONG).must_equal 'gulong'
30
- GObject.type_name(GObject::TYPE_INT64).must_equal 'gint64'
31
- GObject.type_name(GObject::TYPE_UINT64).must_equal 'guint64'
32
- GObject.type_name(GObject::TYPE_ENUM).must_equal 'GEnum'
33
- GObject.type_name(GObject::TYPE_FLAGS).must_equal 'GFlags'
34
- GObject.type_name(GObject::TYPE_FLOAT).must_equal 'gfloat'
35
- GObject.type_name(GObject::TYPE_DOUBLE).must_equal 'gdouble'
36
- GObject.type_name(GObject::TYPE_STRING).must_equal 'gchararray'
37
- GObject.type_name(GObject::TYPE_POINTER).must_equal 'gpointer'
38
- GObject.type_name(GObject::TYPE_BOXED).must_equal 'GBoxed'
39
- GObject.type_name(GObject::TYPE_PARAM).must_equal 'GParam'
40
- GObject.type_name(GObject::TYPE_OBJECT).must_equal 'GObject'
41
- GObject.type_name(GObject::TYPE_GTYPE).must_equal 'GType'
42
- GObject.type_name(GObject::TYPE_VARIANT).must_equal 'GVariant'
43
- GObject.type_name(GObject::TYPE_STRV).must_equal 'GStrv'
44
- GObject.type_name(GObject::TYPE_HASH_TABLE).must_equal 'GHashTable'
21
+ _(GObject.type_name(GObject::TYPE_NONE)).must_equal "void"
22
+ _(GObject.type_name(GObject::TYPE_INTERFACE)).must_equal "GInterface"
23
+ _(GObject.type_name(GObject::TYPE_CHAR)).must_equal "gchar"
24
+ _(GObject.type_name(GObject::TYPE_UCHAR)).must_equal "guchar"
25
+ _(GObject.type_name(GObject::TYPE_BOOLEAN)).must_equal "gboolean"
26
+ _(GObject.type_name(GObject::TYPE_INT)).must_equal "gint"
27
+ _(GObject.type_name(GObject::TYPE_UINT)).must_equal "guint"
28
+ _(GObject.type_name(GObject::TYPE_LONG)).must_equal "glong"
29
+ _(GObject.type_name(GObject::TYPE_ULONG)).must_equal "gulong"
30
+ _(GObject.type_name(GObject::TYPE_INT64)).must_equal "gint64"
31
+ _(GObject.type_name(GObject::TYPE_UINT64)).must_equal "guint64"
32
+ _(GObject.type_name(GObject::TYPE_ENUM)).must_equal "GEnum"
33
+ _(GObject.type_name(GObject::TYPE_FLAGS)).must_equal "GFlags"
34
+ _(GObject.type_name(GObject::TYPE_FLOAT)).must_equal "gfloat"
35
+ _(GObject.type_name(GObject::TYPE_DOUBLE)).must_equal "gdouble"
36
+ _(GObject.type_name(GObject::TYPE_STRING)).must_equal "gchararray"
37
+ _(GObject.type_name(GObject::TYPE_POINTER)).must_equal "gpointer"
38
+ _(GObject.type_name(GObject::TYPE_BOXED)).must_equal "GBoxed"
39
+ _(GObject.type_name(GObject::TYPE_PARAM)).must_equal "GParam"
40
+ _(GObject.type_name(GObject::TYPE_OBJECT)).must_equal "GObject"
41
+ _(GObject.type_name(GObject::TYPE_GTYPE)).must_equal "GType"
42
+ _(GObject.type_name(GObject::TYPE_VARIANT)).must_equal "GVariant"
43
+
44
+ _(GObject.type_name(GObject::TYPE_ARRAY)).must_equal "GArray"
45
+ _(GObject.type_name(GObject::TYPE_BYTE_ARRAY)).must_equal "GByteArray"
46
+ _(GObject.type_name(GObject::TYPE_ERROR)).must_equal "GError"
47
+ _(GObject.type_name(GObject::TYPE_HASH_TABLE)).must_equal "GHashTable"
48
+ _(GObject.type_name(GObject::TYPE_STRV)).must_equal "GStrv"
45
49
  end
46
50
 
47
- describe '::object_class_from_instance' do
48
- it 'returns a GObject::ObjectClass with the correct GType' do
51
+ describe "::object_class_from_instance" do
52
+ it "returns a GObject::ObjectClass with the correct GType" do
49
53
  obj = GIMarshallingTests::OverridesObject.new
50
54
  object_class = GObject.object_class_from_instance obj
51
55
  gtype = object_class.g_type_class.g_type
52
56
 
53
- object_class.must_be_instance_of GObject::ObjectClass
54
- gtype.must_equal GIMarshallingTests::OverridesObject.gtype
57
+ _(object_class).must_be_instance_of GObject::ObjectClass
58
+ _(gtype).must_equal GIMarshallingTests::OverridesObject.gtype
55
59
  end
56
60
  end
57
61
 
58
- describe 'creating ParamSpecs' do
59
- describe '#param_spec_int' do
60
- it 'creates a GObject::ParamSpecInt' do
61
- spec = GObject.param_spec_int('foo', 'foo bar',
62
- 'The Foo Bar Property',
62
+ describe "creating ParamSpecs" do
63
+ describe "#param_spec_int" do
64
+ it "creates a GObject::ParamSpecInt" do
65
+ spec = GObject.param_spec_int("foo", "foo bar",
66
+ "The Foo Bar Property",
63
67
  10, 20, 15,
64
68
  3)
65
- spec.must_be_instance_of GObject::ParamSpecInt
66
- spec.struct[:minimum].must_equal 10
67
- spec.struct[:maximum].must_equal 20
68
- spec.get_default_value.must_equal 15
69
+ _(spec).must_be_instance_of GObject::ParamSpecInt
70
+ _(spec.struct[:minimum]).must_equal 10
71
+ _(spec.struct[:maximum]).must_equal 20
72
+ _(spec.get_default_value).must_equal 15
69
73
  end
70
74
  end
71
75
  end
@@ -1,31 +1,31 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
- require 'ffi-gobject'
5
+ require "ffi-gobject"
6
6
 
7
7
  describe GObject::ObjectClass do
8
- describe '#list_properties' do
8
+ describe "#list_properties" do
9
9
  it "returns GIMarshallingTests::OverridesObject's properties" do
10
10
  obj = GIMarshallingTests::OverridesObject.new
11
11
  object_class = GObject.object_class_from_instance obj
12
12
 
13
- info = get_introspection_data 'GIMarshallingTests', 'OverridesObject'
13
+ info = get_introspection_data "GIMarshallingTests", "OverridesObject"
14
14
  expected_props = info.properties.map(&:name)
15
15
  expected_props += info.parent.properties.map(&:name)
16
16
 
17
17
  props = object_class.list_properties
18
18
  prop_names = props.map(&:get_name)
19
19
 
20
- prop_names.sort.must_equal expected_props.sort
20
+ _(prop_names.sort).must_equal expected_props.sort
21
21
  end
22
22
  end
23
23
 
24
- describe '#gtype' do
25
- it 'returns the correct GType' do
24
+ describe "#gtype" do
25
+ it "returns the correct GType" do
26
26
  obj = GIMarshallingTests::OverridesObject.new
27
27
  object_class = GObject.object_class_from_instance obj
28
- object_class.gtype.must_equal GIMarshallingTests::OverridesObject.gtype
28
+ _(object_class.gtype).must_equal GIMarshallingTests::OverridesObject.gtype
29
29
  end
30
30
  end
31
31
  end
@@ -1,130 +1,112 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'gir_ffi_test_helper'
3
+ require "gir_ffi_test_helper"
4
4
 
5
- require 'ffi-gobject'
5
+ require "ffi-gobject"
6
6
  GirFFI.setup :GIMarshallingTests
7
7
 
8
8
  describe GObject::Object do
9
- describe '.new' do
10
- it 'is overridden to take only one argument' do
11
- GObject::Object.new({}).must_be_instance_of GObject::Object
9
+ describe ".new" do
10
+ it "is overridden to take only one argument" do
11
+ _(GObject::Object.new({})).must_be_instance_of GObject::Object
12
12
  end
13
13
 
14
- it 'can be used to create objects with properties' do
14
+ it "can be used to create objects with properties" do
15
15
  obj = GIMarshallingTests::SubObject.new(int: 13)
16
- obj.int.must_equal 13
16
+ _(obj.int).must_equal 13
17
17
  end
18
18
 
19
- it 'allows omission of the first argument' do
20
- GObject::Object.new.must_be_instance_of GObject::Object
19
+ it "allows omission of the first argument" do
20
+ _(GObject::Object.new).must_be_instance_of GObject::Object
21
21
  end
22
22
 
23
- it 'raises an error for properties that do not exist' do
24
- proc { GObject::Object.new(dog: 'bark') }.must_raise GirFFI::PropertyNotFoundError
23
+ it "raises an error for properties that do not exist" do
24
+ _(proc { GObject::Object.new(dog: "bark") }).must_raise GirFFI::PropertyNotFoundError
25
25
  end
26
26
  end
27
27
 
28
- describe '#get_property' do
29
- it 'is overridden to have arity 1' do
30
- GObject::Object.instance_method('get_property').arity.must_equal 1
28
+ describe "#get_property" do
29
+ it "is overridden to have arity 1" do
30
+ _(GObject::Object.instance_method("get_property").arity).must_equal 1
31
31
  end
32
32
 
33
- it 'raises an error for a property that does not exist' do
33
+ it "raises an error for a property that does not exist" do
34
34
  instance = GObject::Object.new
35
- proc { instance.get_property 'foo-bar' }.must_raise GirFFI::PropertyNotFoundError
35
+ _(proc { instance.get_property "foo-bar" }).must_raise GirFFI::PropertyNotFoundError
36
36
  end
37
- end
38
37
 
39
- describe '#get_property_extended' do
40
- it 'raises an error for a property that does not exist' do
38
+ it "raises an error for a property that does not exist" do
41
39
  instance = GObject::Object.new
42
- proc { instance.get_property_extended 'foo-bar' }.
40
+ _(proc { instance.get_property "foo-bar" }).
43
41
  must_raise GirFFI::PropertyNotFoundError
44
42
  end
45
43
  end
46
44
 
47
- describe '#set_property' do
48
- it 'raises an error for a property that does not exist' do
45
+ describe "#get_property_extended" do
46
+ it "raises an error for a property that does not exist" do
49
47
  instance = GObject::Object.new
50
- proc { instance.set_property 'foo-bar', 123 }.must_raise GirFFI::PropertyNotFoundError
48
+ _(proc { instance.get_property_extended "foo-bar" }).
49
+ must_raise GirFFI::PropertyNotFoundError
51
50
  end
52
51
  end
53
52
 
54
- describe '#set_property_extended' do
55
- it 'raises an error for a property that does not exist' do
53
+ describe "#set_property" do
54
+ it "raises an error for a property that does not exist" do
56
55
  instance = GObject::Object.new
57
- proc { instance.set_property_extended 'foo-bar', 123 }.
58
- must_raise GirFFI::PropertyNotFoundError
56
+ _(proc { instance.set_property "foo-bar", 123 }).must_raise GirFFI::PropertyNotFoundError
59
57
  end
60
58
  end
61
59
 
62
- describe 'automatic accessor methods' do
63
- class AccessorTest < GObject::Object
64
- def get_x
65
- @x
66
- end
67
-
68
- def set_x(val)
69
- @x = val
70
- end
71
- end
72
-
73
- subject { AccessorTest.new }
74
-
75
- it 'reads x by calling get_x' do
76
- subject.set_x(1)
77
- assert_equal 1, subject.x
78
- end
79
-
80
- it 'writes x by calling set_x' do
81
- subject.x = 2
82
- assert_equal 2, subject.x
60
+ describe "#set_property_extended" do
61
+ it "raises an error for a property that does not exist" do
62
+ instance = GObject::Object.new
63
+ _(proc { instance.set_property_extended "foo-bar", 123 }).
64
+ must_raise GirFFI::PropertyNotFoundError
83
65
  end
84
66
  end
85
67
 
86
- describe '#signal_connect' do
68
+ describe "#signal_connect" do
87
69
  subject { GObject::Object.new }
88
70
 
89
- it 'delegates to GObject' do
90
- expect(GObject).to receive(:signal_connect).with(subject, 'some-event', nil)
91
- subject.signal_connect('some-event') do
71
+ it "delegates to GObject" do
72
+ expect(GObject).to receive(:signal_connect).with(subject, "some-event", nil)
73
+ subject.signal_connect("some-event") do
92
74
  nothing
93
75
  end
94
76
  end
95
77
 
96
- it 'delegates to GObject if an optional data argument is passed' do
97
- expect(GObject).to receive(:signal_connect).with(subject, 'some-event', 'data')
98
- subject.signal_connect('some-event', 'data') do
78
+ it "delegates to GObject if an optional data argument is passed" do
79
+ expect(GObject).to receive(:signal_connect).with(subject, "some-event", "data")
80
+ subject.signal_connect("some-event", "data") do
99
81
  nothing
100
82
  end
101
83
  end
102
84
  end
103
85
 
104
- describe '#signal_connect_after' do
86
+ describe "#signal_connect_after" do
105
87
  subject { GObject::Object.new }
106
88
 
107
- it 'delegates to GObject' do
108
- expect(GObject).to receive(:signal_connect_after).with(subject, 'some-event', nil)
109
- subject.signal_connect_after('some-event') do
89
+ it "delegates to GObject" do
90
+ expect(GObject).to receive(:signal_connect_after).with(subject, "some-event", nil)
91
+ subject.signal_connect_after("some-event") do
110
92
  nothing
111
93
  end
112
94
  end
113
95
 
114
- it 'delegates to GObject if an optional data argument is passed' do
115
- expect(GObject).to receive(:signal_connect_after).with(subject, 'some-event', 'data')
116
- subject.signal_connect_after('some-event', 'data') do
96
+ it "delegates to GObject if an optional data argument is passed" do
97
+ expect(GObject).to receive(:signal_connect_after).with(subject, "some-event", "data")
98
+ subject.signal_connect_after("some-event", "data") do
117
99
  nothing
118
100
  end
119
101
  end
120
102
  end
121
103
 
122
- describe 'upon garbage collection' do
123
- it 'lowers the reference count' do
124
- skip 'cannot be reliably tested on JRuby and Rubinius' if jruby? || rubinius?
104
+ describe "upon garbage collection" do
105
+ it "lowers the reference count" do
106
+ skip "cannot be reliably tested on JRuby and Rubinius" if jruby? || rubinius?
125
107
 
126
108
  ptr = GObject::Object.new.to_ptr
127
- object_ref_count(ptr).must_equal 1
109
+ _(object_ref_count(ptr)).must_equal 1
128
110
 
129
111
  GC.start
130
112
  # Creating a new object is sometimes needed to trigger enough garbage collection.
@@ -134,7 +116,7 @@ describe GObject::Object do
134
116
  GC.start
135
117
  GC.start
136
118
 
137
- object_ref_count(ptr).must_equal 0
119
+ _(object_ref_count(ptr)).must_equal 0
138
120
  end
139
121
  end
140
122
  end