gir_ffi 0.15.0 → 0.15.1
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.
- checksums.yaml +4 -4
- data/Changelog.md +4 -0
- data/lib/gir_ffi/builders/argument_builder.rb +2 -2
- data/lib/gir_ffi/builders/argument_builder_collection.rb +2 -2
- data/lib/gir_ffi/builders/field_builder.rb +2 -2
- data/lib/gir_ffi/builders/vfunc_builder.rb +2 -2
- data/lib/gir_ffi/unintrospectable_type_info.rb +4 -0
- data/lib/gir_ffi/version.rb +1 -1
- data/test/ffi-gobject/object_test.rb +6 -6
- data/test/ffi-gobject_introspection/gobject_type_init_test.rb +2 -2
- data/test/ffi-gobject_introspection/i_repository_test.rb +4 -4
- data/test/ffi-gobject_test.rb +2 -2
- data/test/gir_ffi/arg_helper_test.rb +2 -2
- data/test/gir_ffi/builder_test.rb +26 -26
- data/test/gir_ffi/builders/argument_builder_test.rb +11 -11
- data/test/gir_ffi/builders/callback_argument_builder_test.rb +10 -10
- data/test/gir_ffi/builders/return_value_builder_test.rb +4 -4
- data/test/gir_ffi/builders/unintrospectable_builder_test.rb +11 -0
- data/test/gir_ffi/builders/vfunc_argument_builder_test.rb +4 -4
- data/test/gir_ffi/object_base_test.rb +5 -5
- data/test/gir_ffi/type_map_test.rb +4 -4
- data/test/integration/generated_gimarshallingtests_test.rb +16 -16
- data/test/integration/generated_gst_test.rb +4 -0
- data/test/integration/generated_regress_test.rb +6 -6
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7fe7307d0aeb897a34c52b3f39d9ad074ea90094e9f0d10efb1a0cc94275d433
|
4
|
+
data.tar.gz: 3fe78f8c5332d10b9124ee1ab5a6f316e24f9e8b96e8f1450110e1e7e53feaa3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b98e88240766bff193e05eb33ad47d585968b7d1d1a276f9703ec18a264ef7db083dea3b98f5923284c8a48d196498daaef04c06e63840b225692329730b04d2
|
7
|
+
data.tar.gz: 7a6818654b514e14dd7c8a7920446fdceb8471a271bf9184a975e4c6b80d6b6f56bf0596855d4eba0febaf2616eb2422ac43bd4456c1a9263f8cf42f22e25242
|
data/Changelog.md
CHANGED
@@ -91,8 +91,8 @@ module GirFFI
|
|
91
91
|
end
|
92
92
|
|
93
93
|
def ingoing_value_storage
|
94
|
-
PointerValueConvertor.new(type_spec)
|
95
|
-
value_to_pointer(call_argument_name, ingoing_convertor.conversion)
|
94
|
+
PointerValueConvertor.new(type_spec)
|
95
|
+
.value_to_pointer(call_argument_name, ingoing_convertor.conversion)
|
96
96
|
end
|
97
97
|
|
98
98
|
def has_post_conversion?
|
@@ -121,8 +121,8 @@ module GirFFI
|
|
121
121
|
end
|
122
122
|
|
123
123
|
def sorted_base_argument_builders
|
124
|
-
@sorted_base_argument_builders ||= @base_argument_builders
|
125
|
-
sort_by.with_index { |arg, i| [arg.array_length_idx, i] }
|
124
|
+
@sorted_base_argument_builders ||= @base_argument_builders
|
125
|
+
.sort_by.with_index { |arg, i| [arg.array_length_idx, i] }
|
126
126
|
end
|
127
127
|
|
128
128
|
def split_off_block_argument
|
@@ -281,8 +281,8 @@ module GirFFI
|
|
281
281
|
private
|
282
282
|
|
283
283
|
def value_storage(typed_ptr, builder)
|
284
|
-
PointerValueConvertor.new(field_type_tag)
|
285
|
-
value_to_pointer(typed_ptr, builder.call_argument_name, info.offset)
|
284
|
+
PointerValueConvertor.new(field_type_tag)
|
285
|
+
.value_to_pointer(typed_ptr, builder.call_argument_name, info.offset)
|
286
286
|
end
|
287
287
|
|
288
288
|
def field_type_tag
|
@@ -42,8 +42,8 @@ module GirFFI
|
|
42
42
|
end
|
43
43
|
|
44
44
|
def argument_ffi_types
|
45
|
-
@argument_ffi_types ||= info.argument_ffi_types
|
46
|
-
unshift(receiver_type_info.to_callback_ffi_type)
|
45
|
+
@argument_ffi_types ||= info.argument_ffi_types
|
46
|
+
.unshift(receiver_type_info.to_callback_ffi_type)
|
47
47
|
end
|
48
48
|
|
49
49
|
def return_ffi_type
|
data/lib/gir_ffi/version.rb
CHANGED
@@ -37,16 +37,16 @@ describe GObject::Object do
|
|
37
37
|
|
38
38
|
it "raises an error for a property that does not exist" do
|
39
39
|
instance = GObject::Object.new
|
40
|
-
_(proc { instance.get_property "foo-bar" })
|
41
|
-
must_raise GirFFI::PropertyNotFoundError
|
40
|
+
_(proc { instance.get_property "foo-bar" })
|
41
|
+
.must_raise GirFFI::PropertyNotFoundError
|
42
42
|
end
|
43
43
|
end
|
44
44
|
|
45
45
|
describe "#get_property_extended" do
|
46
46
|
it "raises an error for a property that does not exist" do
|
47
47
|
instance = GObject::Object.new
|
48
|
-
_(proc { instance.get_property_extended "foo-bar" })
|
49
|
-
must_raise GirFFI::PropertyNotFoundError
|
48
|
+
_(proc { instance.get_property_extended "foo-bar" })
|
49
|
+
.must_raise GirFFI::PropertyNotFoundError
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
@@ -60,8 +60,8 @@ describe GObject::Object do
|
|
60
60
|
describe "#set_property_extended" do
|
61
61
|
it "raises an error for a property that does not exist" do
|
62
62
|
instance = GObject::Object.new
|
63
|
-
_(proc { instance.set_property_extended "foo-bar", 123 })
|
64
|
-
must_raise GirFFI::PropertyNotFoundError
|
63
|
+
_(proc { instance.set_property_extended "foo-bar", 123 })
|
64
|
+
.must_raise GirFFI::PropertyNotFoundError
|
65
65
|
end
|
66
66
|
end
|
67
67
|
|
@@ -5,8 +5,8 @@ require "introspection_test_helper"
|
|
5
5
|
describe GObjectIntrospection::GObjectTypeInit do
|
6
6
|
describe "Lib" do
|
7
7
|
it "represents the gobject-2.0 library" do
|
8
|
-
_(GObjectIntrospection::GObjectTypeInit::Lib.ffi_libraries.first.name)
|
9
|
-
must_match(/gobject-2\.0/)
|
8
|
+
_(GObjectIntrospection::GObjectTypeInit::Lib.ffi_libraries.first.name)
|
9
|
+
.must_match(/gobject-2\.0/)
|
10
10
|
end
|
11
11
|
|
12
12
|
it "provides the g_type_init function" do
|
@@ -69,13 +69,13 @@ describe GObjectIntrospection::IRepository do
|
|
69
69
|
|
70
70
|
it "passes its struct pointer to the c function just in case" do
|
71
71
|
gir.require "GObject", "2.0"
|
72
|
-
allow(GObjectIntrospection::Lib).to receive(:g_irepository_get_dependencies)
|
73
|
-
and_call_original
|
72
|
+
allow(GObjectIntrospection::Lib).to receive(:g_irepository_get_dependencies)
|
73
|
+
.and_call_original
|
74
74
|
|
75
75
|
gir.dependencies("GObject")
|
76
76
|
|
77
|
-
expect(GObjectIntrospection::Lib).to have_received(:g_irepository_get_dependencies)
|
78
|
-
with(gir, "GObject")
|
77
|
+
expect(GObjectIntrospection::Lib).to have_received(:g_irepository_get_dependencies)
|
78
|
+
.with(gir, "GObject")
|
79
79
|
end
|
80
80
|
end
|
81
81
|
end
|
data/test/ffi-gobject_test.rb
CHANGED
@@ -88,8 +88,8 @@ describe GObject do
|
|
88
88
|
|
89
89
|
it "does not allow connecting an invalid signal" do
|
90
90
|
o = Regress::TestSubObj.new
|
91
|
-
_(proc { GObject.signal_connect(o, "not-really-a-signal") {} })
|
92
|
-
must_raise GirFFI::SignalNotFoundError
|
91
|
+
_(proc { GObject.signal_connect(o, "not-really-a-signal") {} })
|
92
|
+
.must_raise GirFFI::SignalNotFoundError
|
93
93
|
end
|
94
94
|
|
95
95
|
it "handles return values" do
|
@@ -117,8 +117,8 @@ describe GirFFI::ArgHelper do
|
|
117
117
|
end
|
118
118
|
|
119
119
|
it "raises if array does not have the correct size" do
|
120
|
-
result = _(-> { GirFFI::ArgHelper.check_fixed_array_size(3, [1, 2], "foo") })
|
121
|
-
must_raise ArgumentError
|
120
|
+
result = _(-> { GirFFI::ArgHelper.check_fixed_array_size(3, [1, 2], "foo") })
|
121
|
+
.must_raise ArgumentError
|
122
122
|
_(result.message).must_equal "foo should have size 3"
|
123
123
|
end
|
124
124
|
end
|
@@ -55,9 +55,9 @@ describe GirFFI::Builder do
|
|
55
55
|
|
56
56
|
it "passes the version on to ModuleBuilder" do
|
57
57
|
builder = double(generate: nil)
|
58
|
-
expect(GirFFI::Builders::ModuleBuilder).to receive(:new)
|
59
|
-
with("Foo", namespace: "Foo", version: "1.0")
|
60
|
-
and_return builder
|
58
|
+
expect(GirFFI::Builders::ModuleBuilder).to receive(:new)
|
59
|
+
.with("Foo", namespace: "Foo", version: "1.0")
|
60
|
+
.and_return builder
|
61
61
|
|
62
62
|
GirFFI::Builder.build_module "Foo", "1.0"
|
63
63
|
end
|
@@ -100,8 +100,8 @@ describe GirFFI::Builder do
|
|
100
100
|
end
|
101
101
|
|
102
102
|
it "refuse to build classes for base types" do
|
103
|
-
_(-> { GirFFI::Builder.build_by_gtype GObject::TYPE_INT })
|
104
|
-
must_raise RuntimeError, "Unable to handle type gint"
|
103
|
+
_(-> { GirFFI::Builder.build_by_gtype GObject::TYPE_INT })
|
104
|
+
.must_raise RuntimeError, "Unable to handle type gint"
|
105
105
|
end
|
106
106
|
end
|
107
107
|
|
@@ -111,12 +111,12 @@ describe GirFFI::Builder do
|
|
111
111
|
it "calls attach_function with the correct types for Regress.test_callback_destroy_notify" do
|
112
112
|
function_info = get_introspection_data "Regress", "test_callback_destroy_notify"
|
113
113
|
|
114
|
-
expect(lib)
|
115
|
-
to receive(:attach_function)
|
116
|
-
with("regress_test_callback_destroy_notify",
|
117
|
-
|
118
|
-
|
119
|
-
and_return true
|
114
|
+
expect(lib)
|
115
|
+
.to receive(:attach_function)
|
116
|
+
.with("regress_test_callback_destroy_notify",
|
117
|
+
[Regress::TestCallbackUserData, :pointer, GLib::DestroyNotify],
|
118
|
+
:int32)
|
119
|
+
.and_return true
|
120
120
|
|
121
121
|
GirFFI::Builder.attach_ffi_function(lib, function_info)
|
122
122
|
end
|
@@ -124,37 +124,37 @@ describe GirFFI::Builder do
|
|
124
124
|
it "calls attach_function with the correct types for Regress::TestObj#torture_signature_0" do
|
125
125
|
info = get_method_introspection_data "Regress", "TestObj", "torture_signature_0"
|
126
126
|
|
127
|
-
expect(lib)
|
128
|
-
to receive(:attach_function)
|
129
|
-
with("regress_test_obj_torture_signature_0",
|
130
|
-
|
131
|
-
|
132
|
-
and_return true
|
127
|
+
expect(lib)
|
128
|
+
.to receive(:attach_function)
|
129
|
+
.with("regress_test_obj_torture_signature_0",
|
130
|
+
[:pointer, :int32, :pointer, :pointer, :pointer, :pointer, :uint32],
|
131
|
+
:void)
|
132
|
+
.and_return true
|
133
133
|
|
134
134
|
GirFFI::Builder.attach_ffi_function(lib, info)
|
135
135
|
end
|
136
136
|
|
137
137
|
it "calls attach_function with the correct types for Regress::TestObj#instance_method" do
|
138
138
|
info = get_method_introspection_data "Regress", "TestObj", "instance_method"
|
139
|
-
expect(lib).to receive(:attach_function)
|
140
|
-
with("regress_test_obj_instance_method", [:pointer], :int32)
|
141
|
-
and_return true
|
139
|
+
expect(lib).to receive(:attach_function)
|
140
|
+
.with("regress_test_obj_instance_method", [:pointer], :int32)
|
141
|
+
.and_return true
|
142
142
|
GirFFI::Builder.attach_ffi_function(lib, info)
|
143
143
|
end
|
144
144
|
|
145
145
|
it "calls attach_function with the correct types for Regress.test_array_gint32_in" do
|
146
146
|
info = get_introspection_data "Regress", "test_array_gint32_in"
|
147
|
-
expect(lib).to receive(:attach_function)
|
148
|
-
with("regress_test_array_gint32_in", [:int32, :pointer], :int32)
|
149
|
-
and_return true
|
147
|
+
expect(lib).to receive(:attach_function)
|
148
|
+
.with("regress_test_array_gint32_in", [:int32, :pointer], :int32)
|
149
|
+
.and_return true
|
150
150
|
GirFFI::Builder.attach_ffi_function(lib, info)
|
151
151
|
end
|
152
152
|
|
153
153
|
it "calls attach_function with the correct types for Regress.test_enum_param" do
|
154
154
|
info = get_introspection_data "Regress", "test_enum_param"
|
155
|
-
expect(lib).to receive(:attach_function)
|
156
|
-
with("regress_test_enum_param", [Regress::TestEnum], :pointer)
|
157
|
-
and_return true
|
155
|
+
expect(lib).to receive(:attach_function)
|
156
|
+
.with("regress_test_enum_param", [Regress::TestEnum], :pointer)
|
157
|
+
.and_return true
|
158
158
|
GirFFI::Builder.attach_ffi_function(lib, info)
|
159
159
|
end
|
160
160
|
|
@@ -14,8 +14,8 @@ describe GirFFI::Builders::ArgumentBuilder do
|
|
14
14
|
end
|
15
15
|
|
16
16
|
it "has the correct value for #pre_conversion" do
|
17
|
-
_(builder.pre_conversion)
|
18
|
-
must_equal ["_v1 = GirFFI::SizedArray.copy_from([:pointer, GIMarshallingTests::BoxedStruct], -1, structs)"]
|
17
|
+
_(builder.pre_conversion)
|
18
|
+
.must_equal ["_v1 = GirFFI::SizedArray.copy_from([:pointer, GIMarshallingTests::BoxedStruct], -1, structs)"]
|
19
19
|
end
|
20
20
|
|
21
21
|
it "has the correct value for #post_conversion" do
|
@@ -144,8 +144,8 @@ describe GirFFI::Builders::ArgumentBuilder do
|
|
144
144
|
end
|
145
145
|
|
146
146
|
it "has the correct value for #post_conversion" do
|
147
|
-
_(builder.post_conversion)
|
148
|
-
must_equal ["_v2 = GIMarshallingTests::Object.wrap(_v1.get_pointer(0)).tap { |it| it && it.ref }"]
|
147
|
+
_(builder.post_conversion)
|
148
|
+
.must_equal ["_v2 = GIMarshallingTests::Object.wrap(_v1.get_pointer(0)).tap { |it| it && it.ref }"]
|
149
149
|
end
|
150
150
|
end
|
151
151
|
end
|
@@ -163,8 +163,8 @@ describe GirFFI::Builders::ArgumentBuilder do
|
|
163
163
|
end
|
164
164
|
|
165
165
|
it "has the correct value for #post_conversion" do
|
166
|
-
_(builder.post_conversion)
|
167
|
-
must_equal ["_v2 = GIMarshallingTests::BoxedStruct.wrap_copy(_v1.get_pointer(0))"]
|
166
|
+
_(builder.post_conversion)
|
167
|
+
.must_equal ["_v2 = GIMarshallingTests::BoxedStruct.wrap_copy(_v1.get_pointer(0))"]
|
168
168
|
end
|
169
169
|
end
|
170
170
|
|
@@ -412,9 +412,9 @@ describe GirFFI::Builders::ArgumentBuilder do
|
|
412
412
|
end
|
413
413
|
|
414
414
|
it "has the correct value for #pre_conversion" do
|
415
|
-
_(builder.pre_conversion)
|
416
|
-
must_equal ["_v1 = FFI::MemoryPointer.new GIMarshallingTests::NoTypeFlags",
|
417
|
-
|
415
|
+
_(builder.pre_conversion)
|
416
|
+
.must_equal ["_v1 = FFI::MemoryPointer.new GIMarshallingTests::NoTypeFlags",
|
417
|
+
"GIMarshallingTests::NoTypeFlags.copy_value_to_pointer(#{arg_info.name}, _v1)"]
|
418
418
|
end
|
419
419
|
|
420
420
|
it "has the correct value for #post_conversion" do
|
@@ -525,8 +525,8 @@ describe GirFFI::Builders::ArgumentBuilder do
|
|
525
525
|
end
|
526
526
|
|
527
527
|
it "has the correct value for #post_conversion" do
|
528
|
-
_(builder.post_conversion)
|
529
|
-
must_equal ["_v2 = GIMarshallingTests::BoxedStruct.wrap_own(_v1.get_pointer(0))"]
|
528
|
+
_(builder.post_conversion)
|
529
|
+
.must_equal ["_v2 = GIMarshallingTests::BoxedStruct.wrap_own(_v1.get_pointer(0))"]
|
530
530
|
end
|
531
531
|
end
|
532
532
|
end
|
@@ -89,15 +89,15 @@ describe GirFFI::Builders::CallbackArgumentBuilder do
|
|
89
89
|
end
|
90
90
|
|
91
91
|
it "has the correct value for #pre_conversion" do
|
92
|
-
_(array_arg_builder.pre_conversion)
|
93
|
-
must_equal ["_v1 = ints",
|
94
|
-
|
92
|
+
_(array_arg_builder.pre_conversion)
|
93
|
+
.must_equal ["_v1 = ints",
|
94
|
+
"_v2 = GirFFI::SizedArray.wrap(:gint32, _v3, _v1.get_pointer(0))"]
|
95
95
|
end
|
96
96
|
|
97
97
|
it "has the correct value for #post_conversion" do
|
98
98
|
array_arg_builder.pre_conversion
|
99
|
-
_(array_arg_builder.post_conversion)
|
100
|
-
must_equal ["_v1.put_pointer 0, GirFFI::SizedArray.from(:gint32, -1, _v4)"]
|
99
|
+
_(array_arg_builder.post_conversion)
|
100
|
+
.must_equal ["_v1.put_pointer 0, GirFFI::SizedArray.from(:gint32, -1, _v4)"]
|
101
101
|
end
|
102
102
|
end
|
103
103
|
|
@@ -111,15 +111,15 @@ describe GirFFI::Builders::CallbackArgumentBuilder do
|
|
111
111
|
end
|
112
112
|
|
113
113
|
it "has the correct value for #pre_conversion" do
|
114
|
-
_(length_arg_builder.pre_conversion)
|
115
|
-
must_equal ["_v1 = length",
|
116
|
-
|
114
|
+
_(length_arg_builder.pre_conversion)
|
115
|
+
.must_equal ["_v1 = length",
|
116
|
+
"_v2 = _v1.get_int32(0)"]
|
117
117
|
end
|
118
118
|
|
119
119
|
it "has the correct value for #post_conversion" do
|
120
120
|
length_arg_builder.pre_conversion
|
121
|
-
_(length_arg_builder.post_conversion)
|
122
|
-
must_equal ["_v1.put_int32 0, _v3.length"]
|
121
|
+
_(length_arg_builder.post_conversion)
|
122
|
+
.must_equal ["_v1.put_int32 0, _v3.length"]
|
123
123
|
end
|
124
124
|
end
|
125
125
|
end
|
@@ -111,8 +111,8 @@ describe GirFFI::Builders::ReturnValueBuilder do
|
|
111
111
|
|
112
112
|
it "wraps the result in #post_conversion" do
|
113
113
|
_(builder.capture_variable_name).must_equal "_v1"
|
114
|
-
_(builder.post_conversion)
|
115
|
-
must_equal ["_v2 = GIMarshallingTests::Object.wrap(_v1).tap { |it| it && it.ref }"]
|
114
|
+
_(builder.post_conversion)
|
115
|
+
.must_equal ["_v2 = GIMarshallingTests::Object.wrap(_v1).tap { |it| it && it.ref }"]
|
116
116
|
end
|
117
117
|
|
118
118
|
it "returns the wrapped result" do
|
@@ -344,8 +344,8 @@ describe GirFFI::Builders::ReturnValueBuilder do
|
|
344
344
|
|
345
345
|
it "autoreleases and converts the result in #post_conversion" do
|
346
346
|
_(builder.capture_variable_name).must_equal "_v1"
|
347
|
-
_(builder.post_conversion)
|
348
|
-
must_equal ["_v2 = GirFFI::AllocationHelper.free_after _v1, &:to_utf8"]
|
347
|
+
_(builder.post_conversion)
|
348
|
+
.must_equal ["_v2 = GirFFI::AllocationHelper.free_after _v1, &:to_utf8"]
|
349
349
|
end
|
350
350
|
|
351
351
|
it "returns the converted result" do
|
@@ -69,5 +69,16 @@ describe GirFFI::Builders::UnintrospectableBuilder do
|
|
69
69
|
_(signal.name).must_equal "handoff"
|
70
70
|
end
|
71
71
|
end
|
72
|
+
|
73
|
+
describe "its #find_property method" do
|
74
|
+
it "returns nil for a property that doesn't exist" do
|
75
|
+
_(builder.find_property("foo")).must_be_nil
|
76
|
+
end
|
77
|
+
|
78
|
+
it "finds properies in ancestor classes" do
|
79
|
+
property = builder.find_property "name"
|
80
|
+
_(property.name).must_equal "name"
|
81
|
+
end
|
82
|
+
end
|
72
83
|
end
|
73
84
|
end
|
@@ -75,8 +75,8 @@ describe GirFFI::Builders::VFuncArgumentBuilder do
|
|
75
75
|
let(:arg_info) { vfunc_info.args[1] }
|
76
76
|
|
77
77
|
it "has the correct value for #pre_conversion" do
|
78
|
-
_(builder.pre_conversion)
|
79
|
-
must_equal ["_v1 = FFI::MemoryPointer.new(:int8).tap { |ptr| out.put_pointer 0, ptr }"]
|
78
|
+
_(builder.pre_conversion)
|
79
|
+
.must_equal ["_v1 = FFI::MemoryPointer.new(:int8).tap { |ptr| out.put_pointer 0, ptr }"]
|
80
80
|
end
|
81
81
|
|
82
82
|
it "has the correct value for #post_conversion" do
|
@@ -90,8 +90,8 @@ describe GirFFI::Builders::VFuncArgumentBuilder do
|
|
90
90
|
let(:arg_info) { GirFFI::ReceiverArgumentInfo.new(type_info) }
|
91
91
|
|
92
92
|
it "has the correct value for #pre_conversion" do
|
93
|
-
_(builder.pre_conversion)
|
94
|
-
must_equal ["_v1 = GIMarshallingTests::Object.wrap(_instance)"]
|
93
|
+
_(builder.pre_conversion)
|
94
|
+
.must_equal ["_v1 = GIMarshallingTests::Object.wrap(_instance)"]
|
95
95
|
end
|
96
96
|
|
97
97
|
it "has the correct value for #post_conversion" do
|
@@ -54,11 +54,11 @@ describe GirFFI::ObjectBase do
|
|
54
54
|
end
|
55
55
|
|
56
56
|
it "finds the ancestor classes and included interface" do
|
57
|
-
_(derived_class.registered_ancestors)
|
58
|
-
must_equal [derived_class,
|
59
|
-
|
60
|
-
|
61
|
-
|
57
|
+
_(derived_class.registered_ancestors)
|
58
|
+
.must_equal [derived_class,
|
59
|
+
GIMarshallingTests::Interface,
|
60
|
+
GIMarshallingTests::Object,
|
61
|
+
GObject::Object]
|
62
62
|
end
|
63
63
|
end
|
64
64
|
end
|
@@ -5,13 +5,13 @@ require "gir_ffi_test_helper"
|
|
5
5
|
describe GirFFI::TypeMap do
|
6
6
|
describe ".type_specification_to_ffi_type" do
|
7
7
|
it "returns the nested FFI::Enum for an Enum module" do
|
8
|
-
_(GirFFI::TypeMap.type_specification_to_ffi_type(GLib::DateMonth))
|
9
|
-
must_equal GLib::DateMonth
|
8
|
+
_(GirFFI::TypeMap.type_specification_to_ffi_type(GLib::DateMonth))
|
9
|
+
.must_equal GLib::DateMonth
|
10
10
|
end
|
11
11
|
|
12
12
|
it "returns the class itself for a Struct class" do
|
13
|
-
_(GirFFI::TypeMap.type_specification_to_ffi_type(GObject::EnumValue))
|
14
|
-
must_equal GObject::EnumValue
|
13
|
+
_(GirFFI::TypeMap.type_specification_to_ffi_type(GObject::EnumValue))
|
14
|
+
.must_equal GObject::EnumValue
|
15
15
|
end
|
16
16
|
end
|
17
17
|
end
|
@@ -383,8 +383,8 @@ describe GIMarshallingTests do
|
|
383
383
|
obj = object
|
384
384
|
}
|
385
385
|
end
|
386
|
-
result = derived_instance
|
387
|
-
get_ref_info_for_vfunc_in_object_transfer_full GIMarshallingTests::Object.gtype
|
386
|
+
result = derived_instance
|
387
|
+
.get_ref_info_for_vfunc_in_object_transfer_full GIMarshallingTests::Object.gtype
|
388
388
|
_(result).must_equal [1, false]
|
389
389
|
_(obj).must_be_instance_of GIMarshallingTests::Object
|
390
390
|
end
|
@@ -396,8 +396,8 @@ describe GIMarshallingTests do
|
|
396
396
|
obj = object
|
397
397
|
}
|
398
398
|
end
|
399
|
-
result = derived_instance
|
400
|
-
get_ref_info_for_vfunc_in_object_transfer_none GIMarshallingTests::Object.gtype
|
399
|
+
result = derived_instance
|
400
|
+
.get_ref_info_for_vfunc_in_object_transfer_none GIMarshallingTests::Object.gtype
|
401
401
|
_(object_ref_count(obj)).must_be :>, 0
|
402
402
|
_(result).must_equal [2, false]
|
403
403
|
_(obj).must_be_instance_of GIMarshallingTests::Object
|
@@ -584,8 +584,8 @@ describe GIMarshallingTests do
|
|
584
584
|
result = derived_instance.vfunc_meth_with_error 42
|
585
585
|
_(result).must_equal true
|
586
586
|
|
587
|
-
err = _(proc { derived_instance.vfunc_meth_with_error(21) })
|
588
|
-
must_raise GirFFI::GLibError
|
587
|
+
err = _(proc { derived_instance.vfunc_meth_with_error(21) })
|
588
|
+
.must_raise GirFFI::GLibError
|
589
589
|
_(err.message).must_equal "This is not the answer!"
|
590
590
|
_(err.domain).must_equal "gir_ffi"
|
591
591
|
_(err.code).must_equal 0
|
@@ -608,8 +608,8 @@ describe GIMarshallingTests do
|
|
608
608
|
:vfunc_one_out_parameter,
|
609
609
|
proc { |*_args| 23.4 })
|
610
610
|
end
|
611
|
-
_(derived_instance.vfunc_one_out_parameter)
|
612
|
-
must_be_within_epsilon 23.4
|
611
|
+
_(derived_instance.vfunc_one_out_parameter)
|
612
|
+
.must_be_within_epsilon 23.4
|
613
613
|
end
|
614
614
|
|
615
615
|
it "has a working method #vfunc_out_enum" do
|
@@ -632,8 +632,8 @@ describe GIMarshallingTests do
|
|
632
632
|
:vfunc_return_value_and_multiple_out_parameters,
|
633
633
|
proc { |*_args| [42, -142, 3] })
|
634
634
|
end
|
635
|
-
_(derived_instance.vfunc_return_value_and_multiple_out_parameters)
|
636
|
-
must_equal [42, -142, 3]
|
635
|
+
_(derived_instance.vfunc_return_value_and_multiple_out_parameters)
|
636
|
+
.must_equal [42, -142, 3]
|
637
637
|
end
|
638
638
|
|
639
639
|
it "has a working method #vfunc_return_value_and_one_out_parameter" do
|
@@ -642,8 +642,8 @@ describe GIMarshallingTests do
|
|
642
642
|
:vfunc_return_value_and_one_out_parameter,
|
643
643
|
proc { |*_args| [42, -142] })
|
644
644
|
end
|
645
|
-
_(derived_instance.vfunc_return_value_and_one_out_parameter)
|
646
|
-
must_equal [42, -142]
|
645
|
+
_(derived_instance.vfunc_return_value_and_one_out_parameter)
|
646
|
+
.must_equal [42, -142]
|
647
647
|
end
|
648
648
|
|
649
649
|
it "has a working method #vfunc_return_value_only" do
|
@@ -1258,8 +1258,8 @@ describe GIMarshallingTests do
|
|
1258
1258
|
it "creates an instance using #new" do
|
1259
1259
|
so = GIMarshallingTests::SubObject.new
|
1260
1260
|
_(so).must_be_instance_of GIMarshallingTests::SubObject
|
1261
|
-
_(GObject.type_name_from_instance(so))
|
1262
|
-
must_equal "GIMarshallingTestsSubObject"
|
1261
|
+
_(GObject.type_name_from_instance(so))
|
1262
|
+
.must_equal "GIMarshallingTestsSubObject"
|
1263
1263
|
end
|
1264
1264
|
|
1265
1265
|
let(:instance) { GIMarshallingTests::SubObject.new }
|
@@ -1284,8 +1284,8 @@ describe GIMarshallingTests do
|
|
1284
1284
|
it "creates an instance using #new" do
|
1285
1285
|
so = GIMarshallingTests::SubSubObject.new
|
1286
1286
|
assert_instance_of GIMarshallingTests::SubSubObject, so
|
1287
|
-
_(GObject.type_name_from_instance(so))
|
1288
|
-
must_equal "GIMarshallingTestsSubSubObject"
|
1287
|
+
_(GObject.type_name_from_instance(so))
|
1288
|
+
.must_equal "GIMarshallingTestsSubSubObject"
|
1289
1289
|
end
|
1290
1290
|
|
1291
1291
|
let(:instance) { GIMarshallingTests::SubSubObject.new }
|
@@ -20,6 +20,10 @@ describe "the generated Gst module" do
|
|
20
20
|
it "correctly fetches the name" do
|
21
21
|
_(instance.name).must_equal "sink"
|
22
22
|
end
|
23
|
+
|
24
|
+
it "allows the can-activate-push property to be read" do
|
25
|
+
_(instance.get_property("can-activate-push")).must_equal true
|
26
|
+
end
|
23
27
|
end
|
24
28
|
|
25
29
|
describe "Gst::AutoAudioSink" do
|
@@ -1808,8 +1808,8 @@ describe Regress do
|
|
1808
1808
|
ret, y, z, q = instance.torture_signature_1(-21, "hello", 12)
|
1809
1809
|
_([ret, y, z, q]).must_equal [true, -21, 2 * -21, "hello".length + 12]
|
1810
1810
|
|
1811
|
-
_(proc { instance.torture_signature_1(-21, "hello", 11) })
|
1812
|
-
must_raise GirFFI::GLibError
|
1811
|
+
_(proc { instance.torture_signature_1(-21, "hello", 11) })
|
1812
|
+
.must_raise GirFFI::GLibError
|
1813
1813
|
end
|
1814
1814
|
|
1815
1815
|
describe "its 'bare' property" do
|
@@ -2968,8 +2968,8 @@ describe Regress do
|
|
2968
2968
|
end
|
2969
2969
|
|
2970
2970
|
it "has a working function #annotation_string_zero_terminated_out" do
|
2971
|
-
_(Regress.annotation_string_zero_terminated_out(%w(foo bar)).to_a)
|
2972
|
-
must_equal %w(foo bar)
|
2971
|
+
_(Regress.annotation_string_zero_terminated_out(%w(foo bar)).to_a)
|
2972
|
+
.must_equal %w(foo bar)
|
2973
2973
|
end
|
2974
2974
|
|
2975
2975
|
it "has a working function #annotation_test_parsing_bug630862" do
|
@@ -3920,8 +3920,8 @@ describe Regress do
|
|
3920
3920
|
ret, y, z, q = Regress.test_torture_signature_1(-21, "hello", 12)
|
3921
3921
|
_([ret, y, z, q]).must_equal [true, -21, 2 * -21, "hello".length + 12]
|
3922
3922
|
|
3923
|
-
_(proc { Regress.test_torture_signature_1(-21, "hello", 11) })
|
3924
|
-
must_raise GirFFI::GLibError
|
3923
|
+
_(proc { Regress.test_torture_signature_1(-21, "hello", 11) })
|
3924
|
+
.must_raise GirFFI::GLibError
|
3925
3925
|
end
|
3926
3926
|
|
3927
3927
|
it "has a working function #test_torture_signature_2" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gir_ffi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.15.
|
4
|
+
version: 0.15.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matijs van Zuijlen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-10-
|
11
|
+
date: 2019-10-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ffi
|
@@ -450,7 +450,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
450
450
|
- !ruby/object:Gem::Version
|
451
451
|
version: '0'
|
452
452
|
requirements: []
|
453
|
-
rubygems_version: 3.0.
|
453
|
+
rubygems_version: 3.0.6
|
454
454
|
signing_key:
|
455
455
|
specification_version: 4
|
456
456
|
summary: FFI-based GObject binding using the GObject Introspection Repository
|