Sha256: 9b7c8e6e00600adea3b1ba19b5bcb7b0cf739593ea91d6990abaf42ffc2c7814

Contents?: true

Size: 807 Bytes

Versions: 52

Compression:

Stored size: 807 Bytes

Contents

require File.expand_path('../../../spec_helper', __FILE__)
require File.expand_path('../fixtures/classes', __FILE__)

describe "Module.new" do
  it "creates a new anonymous Module" do
    Module.new.is_a?(Module).should == true
  end

  it "creates a new Module and passes it to the provided block" do
    test_mod = nil
    m = Module.new do |mod|
      mod.should_not == nil
      self.should == mod
      test_mod = mod
      mod.is_a?(Module).should == true
      Object.new # trying to return something
    end
    test_mod.should == m
  end

  it "evaluates a passed block in the context of the module" do
    fred = Module.new do
      def hello() "hello" end
      def bye()   "bye"   end
    end

    (o = mock('x')).extend(fred)
    o.hello.should == "hello"
    o.bye.should   == "bye"
  end
end

Version data entries

52 entries across 52 versions & 2 rubygems

Version Path
rhodes-7.6.0 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-7.5.1 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-7.4.1 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-7.1.17 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-6.2.0 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-6.0.11 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-5.5.18 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-5.5.17 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-5.5.15 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-5.5.0.22 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-5.5.2 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-5.5.0.7 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-5.5.0.3 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-5.5.0 spec/framework_spec/app/spec/core/module/new_spec.rb
tauplatform-1.0.3 spec/framework_spec/app/spec/core/module/new_spec.rb
tauplatform-1.0.2 spec/framework_spec/app/spec/core/module/new_spec.rb
tauplatform-1.0.1 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-3.5.1.12 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-3.3.5 spec/framework_spec/app/spec/core/module/new_spec.rb
rhodes-3.4.2 spec/framework_spec/app/spec/core/module/new_spec.rb