Sha256: 8a8e0127d2fd03f62eed823a31738d640bdf77add7aa43b347713833106de38f

Contents?: true

Size: 768 Bytes

Versions: 6

Compression:

Stored size: 768 Bytes

Contents

# backtick_javascript: true

module RuntimeFixtures
  class A
  end

  class A::B
    module C
    end
  end

  module ModuleB
  end

  module ModuleA
    include ModuleB
  end
end

describe "Constants access via .$$ with dots (regression for #1418)" do
  it "allows to acces scopes on `Opal`" do
    `Opal.Object.$$.RuntimeFixtures.$$.A.$$.B.$$.C`.should == RuntimeFixtures::A::B::C
  end
end

describe "Inclusion of modules" do
  it "that have been included by other modules works" do
    # here ClassC would have failed to be created due to a bug in Opal.append_features
    module RuntimeFixtures
      class ClassC
        include ModuleA
        include ModuleB
      end
    end
    RuntimeFixtures::ClassC.new.class.should == RuntimeFixtures::ClassC
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
opal-1.8.3.rc1 spec/opal/core/runtime/constants_spec.rb
opal-1.8.2 spec/opal/core/runtime/constants_spec.rb
opal-1.8.1 spec/opal/core/runtime/constants_spec.rb
opal-1.8.0 spec/opal/core/runtime/constants_spec.rb
opal-1.8.0.beta1 spec/opal/core/runtime/constants_spec.rb
opal-1.8.0.alpha1 spec/opal/core/runtime/constants_spec.rb