Sha256: 9085e78f00d556af67ae994e025cb73231194fbf4f233b93b213330be8afc1be

Contents?: true

Size: 1.11 KB

Versions: 1

Compression:

Stored size: 1.11 KB

Contents

require File.dirname(__FILE__) + '/test_helper'

context "Ruby Extension creation" do

  specify "should create a valid Ruby extension" do
    Extension.new "ext_test" do |e|
      e.sources full_dir("headers/empty.h")
      e.writer_mode :single
    end

    should.not.raise LoadError do
      require("ext_test")
    end
  end

  specify "should create a valid Ruby extension without a block" do
    e = Extension.new "extension"
    e.sources full_dir("headers/empty.h")
    e.working_dir = File.join(File.expand_path(File.dirname(__FILE__)), "generated")
    e.writer_mode :single
    e.build
    e.write
    e.compile

    should.not.raise LoadError do
      require("ext_test")
    end
  end

  specify "should properly build working dir as deep as needed" do
    should.not.raise Errno::ENOENT do
      path = File.join(File.expand_path(File.dirname(__FILE__)), "generated", "path1", "path2")
      Extension.new "extension" do |e|
        e.sources full_dir("headers/empty.h")
        e.working_dir = path
        e.writer_mode :single
      end

      assert File.exists?(File.join(path, "extconf.rb"))
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rbplusplus-0.9 test/extension_test.rb