Sha256: 13ca17b0ad14773d63a3adb3d1c273854082d41674c05496a74833432d317cee

Contents?: true

Size: 932 Bytes

Versions: 3

Compression:

Stored size: 932 Bytes

Contents

# frozen_string_literal: true

require 'gir_ffi_test_helper'

GirFFI.setup :Regress

describe GirFFI::Builders::RegisteredTypeBuilder do
  describe '#setup_instance_method' do
    it 'restores a method that was removed' do
      Regress::TestObj.class_eval { remove_method 'instance_method' }

      builder = Regress::TestObj.gir_ffi_builder

      builder.setup_instance_method 'instance_method'

      obj = Regress::TestObj.constructor
      obj.must_respond_to 'instance_method'
    end

    it 'returns the name of the generated method' do
      builder = Regress::TestObj.gir_ffi_builder
      result = builder.setup_instance_method 'instance_method'
      result.must_equal 'instance_method'
    end

    it 'returns the name of the generated method if different from the info name' do
      builder = GLib::IConv.gir_ffi_builder
      result = builder.setup_instance_method ''
      result.must_equal '_'
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
gir_ffi-0.11.4 test/gir_ffi/builders/registered_type_builder_test.rb
gir_ffi-0.11.3 test/gir_ffi/builders/registered_type_builder_test.rb
gir_ffi-0.11.2 test/gir_ffi/builders/registered_type_builder_test.rb