Sha256: a1b71c8ec24b2f9882415e532d95bb1fd6838c2f5f5f1c64881a80e126fa7b2d

Contents?: true

Size: 1.26 KB

Versions: 17

Compression:

Stored size: 1.26 KB

Contents

require File.expand_path(File.join(File.dirname(__FILE__), "/../../helper"))

class IfTest < Johnson::NodeTestCase
  def test_if_no_else
    assert_sexp([
      [:if, [:and, [:name, "x"], [:name, "y"]],
        [:var, [[:assign, [:name, "foo"], [:lit, 20]]]],
        nil
      ]], @parser.parse('if(x && y) var foo = 20;')
    )
    assert_ecma('if(x && y) var foo = 20;',
      @parser.parse('if(x && y) var foo = 20;')
    )
  end

  def test_if_else
    assert_sexp([
      [:if, [:and, [:lit, 5], [:lit, 10]],
        [:var, [[:assign, [:name, "foo"], [:lit, 20]]]],
        [:var, [[:assign, [:name, "bar"], [:lit, 5]]]]
      ]],
      @parser.parse('if(5 && 10) var foo = 20; else var bar = 5;')
    )
    assert_ecma('if(x && y) var foo = 20; else var bar = 5;',
      @parser.parse('if(x && y) var foo = 20; else var bar = 5;')
    )
  end

  def test_if_else_block
    assert_sexp([
      [:if, [:and, [:lit, 5], [:lit, 10]],
        [[:var, [[:assign, [:name, "foo"], [:lit, 20]]]]],
        [:var, [[:assign, [:name, "bar"], [:lit, 5]]]]
      ]],
      @parser.parse('if(5 && 10){ var foo = 20; } else var bar = 5;')
    )
    assert_ecma("if(5 && 10) {\n  var foo = 20;\n} else var bar = 5;",
      @parser.parse('if(5 && 10){ var foo = 20; } else var bar = 5;')
    )
  end
end

Version data entries

17 entries across 17 versions & 2 rubygems

Version Path
jbarnette-johnson-1.0.0.200806240111 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.200807291507 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.200808062051 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.200808062111 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.200811251942 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.20081126120511 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.20090127202936 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.20090225110820 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.20090326122910 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.20090326154650 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.20090326161333 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.20090402144841 test/johnson/nodes/if_test.rb
jbarnette-johnson-1.0.0.20090402155420 test/johnson/nodes/if_test.rb
johnson-1.2.0 test/johnson/nodes/if_test.rb
johnson-1.1.1 test/johnson/nodes/if_test.rb
johnson-1.1.2 test/johnson/nodes/if_test.rb
johnson-1.1.0 test/johnson/nodes/if_test.rb