Sha256: 139b1dbff62289eb0608e029d80ae400823fdebed34b92f3c973e8c7cc92b451

Contents?: true

Size: 851 Bytes

Versions: 9

Compression:

Stored size: 851 Bytes

Contents

# frozen_string_literal: true

require 'gir_ffi_test_helper'

describe GirFFI::Builders::InterfaceBuilder do
  let(:interface_builder) do
    GirFFI::Builders::InterfaceBuilder.new(
      get_introspection_data('Regress', 'TestInterface'))
  end

  describe '#build_class' do
    before do
      info = get_introspection_data 'GObject', 'TypePlugin'
      @bldr = GirFFI::Builders::InterfaceBuilder.new info
      @iface = @bldr.build_class
    end

    it 'builds an interface as a module' do
      assert_instance_of Module, @iface
    end

    it 'creates methods on the interface' do
      assert_defines_instance_method @iface, :complete_interface_info
    end
  end

  describe '#interface_struct' do
    it 'returns the interface struct type' do
      interface_builder.interface_struct.must_equal Regress::TestInterfaceIface
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
gir_ffi-0.14.1 test/gir_ffi/builders/interface_builder_test.rb
gir_ffi-0.14.0 test/gir_ffi/builders/interface_builder_test.rb
gir_ffi-0.13.1 test/gir_ffi/builders/interface_builder_test.rb
gir_ffi-0.13.0 test/gir_ffi/builders/interface_builder_test.rb
gir_ffi-0.12.1 test/gir_ffi/builders/interface_builder_test.rb
gir_ffi-0.12.0 test/gir_ffi/builders/interface_builder_test.rb
gir_ffi-0.11.4 test/gir_ffi/builders/interface_builder_test.rb
gir_ffi-0.11.3 test/gir_ffi/builders/interface_builder_test.rb
gir_ffi-0.11.2 test/gir_ffi/builders/interface_builder_test.rb