Sha256: 39d42dad6f60a37fbe64809dd0bf7724694b94f6df32e7f424ba7c6e624e1843

Contents?: true

Size: 915 Bytes

Versions: 4

Compression:

Stored size: 915 Bytes

Contents

# frozen_string_literal: true

require "gir_ffi_test_helper"

GirFFI.setup :Regress

describe GirFFI::InfoExt::ISignalInfo do
  let(:signal_class) do
    Class.new do
      include GirFFI::InfoExt::ICallableInfo
      include GirFFI::InfoExt::ISignalInfo
    end
  end
  let(:signal_info) { signal_class.new }

  describe "#arguments_to_gvalues" do
    let(:object) { Regress::TestSubObj.new }
    let(:boxed) { Regress::TestSimpleBoxedA.const_return }
    let(:signal_info) { Regress::TestSubObj.find_signal "test-with-static-scope-arg" }
    let(:result) { signal_info.arguments_to_gvalues(object, [boxed]) }

    it "correctly wraps :object" do
      _(result[0].get_value).must_equal object
    end

    it "correctly wraps :struct" do
      result_boxed = result[1].get_value
      _(result_boxed.some_int8).must_equal boxed.some_int8
      _(result_boxed.some_int).must_equal boxed.some_int
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
gir_ffi-0.15.3 test/gir_ffi/info_ext/i_signal_info_test.rb
gir_ffi-0.15.2 test/gir_ffi/info_ext/i_signal_info_test.rb
gir_ffi-0.15.1 test/gir_ffi/info_ext/i_signal_info_test.rb
gir_ffi-0.15.0 test/gir_ffi/info_ext/i_signal_info_test.rb