Sha256: f691cc819d04e14571698cfdd0d9e24c1b3543be43e344d3476c1abdd74b6f7e

Contents?: true

Size: 960 Bytes

Versions: 1

Compression:

Stored size: 960 Bytes

Contents

require File.expand_path('../gir_ffi_test_helper.rb', File.dirname(__FILE__))

describe GirFFI::Builder::Function do
  describe "#pretty_print" do
    it "delegates to #generate" do
      builder = GirFFI::Builder::Function.new(:info, :libmodule)

      mock(builder).generate { 'result_from_generate' }

      assert_equal "result_from_generate", builder.pretty_print
    end
  end

  it "builds a correct definition of Regress:test_array_fixed_out_objects" do
    go = get_introspection_data 'Regress', 'test_array_fixed_out_objects'
    fbuilder = GirFFI::Builder::Function.new go, Lib
    code = fbuilder.generate

    expected = <<-CODE
      def test_array_fixed_out_objects 
        _v1 = GirFFI::InOutPointer.for_array [:pointer, ::Regress::TestObj]
        ::Lib.regress_test_array_fixed_out_objects _v1
        _v2 = _v1.to_sized_array_value 2
        return _v2
      end
      CODE

    assert_equal expected.reset_indentation, code
  end

end




Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
gir_ffi-0.2.2 test/unit/function_builder_test.rb