Sha256: d2b7cb877a2de159fd73ef0f8dd5d5451120060b9ec2b4755b3656de7e65004a

Contents?: true

Size: 673 Bytes

Versions: 39

Compression:

Stored size: 673 Bytes

Contents

require 'support/parser_helpers'

describe "Singleton classes" do
  it "returns an empty s(:block) when given an empty body" do
    parsed('class << A; end')[2].should == [:block]
  end

  it "does not place single expressions into an s(:block)" do
    parsed('class << A; 1; end')[2].should == [:int, 1]
  end

  it "adds multiple body expressions into a s(:block)" do
    parsed('class << A; 1; 2; end')[2].should == [:block, [:int, 1], [:int, 2]]
  end

  it "should accept any expressions for singleton part" do
    parsed('class << A; end').should == [:sclass, [:const, :A], [:block]]
    parsed('class << self; end').should == [:sclass, [:self], [:block]]
  end
end

Version data entries

39 entries across 39 versions & 3 rubygems

Version Path
opal-0.10.6 spec/lib/parser/sclass_spec.rb
opal-0.10.6.beta spec/lib/parser/sclass_spec.rb
opal-0.10.5 spec/lib/parser/sclass_spec.rb
opal-0.10.4 spec/lib/parser/sclass_spec.rb
opal-0.10.3 spec/lib/parser/sclass_spec.rb
opal-0.10.2 spec/lib/parser/sclass_spec.rb
opal-0.10.1 spec/lib/parser/sclass_spec.rb
opal-0.10.0 spec/lib/parser/sclass_spec.rb
opal-0.10.0.rc2 spec/lib/parser/sclass_spec.rb
opal-0.9.4 spec/lib/parser/sclass_spec.rb
opal-0.9.3 spec/lib/parser/sclass_spec.rb
opal-0.10.0.rc1 spec/lib/parser/sclass_spec.rb
opal-0.10.0.beta5 spec/lib/parser/sclass_spec.rb
opal-0.10.0.beta4 spec/lib/parser/sclass_spec.rb
opal-0.10.0.beta3 spec/lib/parser/sclass_spec.rb
opal-0.10.0.beta2 spec/lib/parser/sclass_spec.rb
opal-0.10.0.beta1 spec/lib/parser/sclass_spec.rb
opal-0.9.2 spec/lib/parser/sclass_spec.rb
opal-0.9.0 spec/lib/parser/sclass_spec.rb
opal-0.9.0.rc1 spec/lib/parser/sclass_spec.rb