Sha256: cc9ec022bf4fc250199231346748579df77932d42f84c8f1fdaea981afd5cedb

Contents?: true

Size: 697 Bytes

Versions: 5

Compression:

Stored size: 697 Bytes

Contents

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

class TernaryNodeTest < Johnson::NodeTestCase
  def test_ternary
    assert_sexp([
      [:var, [[:assign,
        [:name, "x"],
        [:ternary,
          [:lt, [:name, "y"], [:lit, 10]],
          [:lit, 20],
          [:lit, 30]
        ]
      ]]]],
                @parser.parse('var x = y < 10 ? 20 : 30')
               )
    assert_ecma('var x = y < 10 ? 20 : 30;',
                @parser.parse('var x = y < 10 ? 20 : 30')
               )
  end

  def test_weird_rounding
    ecma = @parser.parse('(value < 0.00001) ? 0 : value;').to_ecma
    assert_match(/\(?value < 1.0e-[0]*5\)? \? 0 : value;/, ecma)
  end
end

Version data entries

5 entries across 5 versions & 3 rubygems

Version Path
johnson19-2.0.0.pre3 test/johnson/generic/nodes/ternary_test.rb
pre-johnson-2.0.0 test/johnson/generic/nodes/ternary_test.rb
johnson-2.0.0.pre3 test/johnson/generic/nodes/ternary_test.rb
johnson-2.0.0.pre2 test/johnson/generic/nodes/ternary_test.rb
johnson-2.0.0.pre1 test/johnson/generic/nodes/ternary_test.rb