Sha256: 86d2243600dbeb92a4dc15258679d7d243ec523b8036f7678f5a309d1456f606
Contents?: true
Size: 1.1 KB
Versions: 26
Compression:
Stored size: 1.1 KB
Contents
require 'spec_helper' describe "The class keyword" do it "returns a plain s(:scope) when given an empty body" do opal_parse('class A; end').should == [:class, :A, nil, [:scope]] end it "does not place single expressions into a s(:block)" do opal_parse('class A; 1; end').should == [:class, :A, nil, [:scope, [:lit, 1]]] end it "adds multiple body expressions into a s(:block)" do opal_parse('class A; 1; 2; end').should == [:class, :A, nil, [:scope, [:block, [:lit, 1], [:lit, 2]]]] end it "uses nil as a placeholder when no superclass is given" do opal_parse('class A; end')[2].should == nil end it "reflects the given superclass" do opal_parse('class A < B; end')[2].should == [:const, :B] end it "should accept just a constant for the class name" do opal_parse('class A; end')[1].should == :A end it "should accept a prefix constant for the class name" do opal_parse('class ::A; end')[1].should == [:colon3, :A] end it "should accept a nested constant for the class name" do opal_parse('class A::B; end')[1].should == [:colon2, [:const, :A], :B] end end
Version data entries
26 entries across 26 versions & 1 rubygems