Sha256: 0699e8b676690830820446ded27b010799a505578cc5d27adf8b52a98be8677f

Contents?: true

Size: 586 Bytes

Versions: 7

Compression:

Stored size: 586 Bytes

Contents

require File.dirname(__FILE__) + '/helper'

class ExpressionTest < Test::Unit::TestCase

  def test_terminal?
    rule = Expression.new
    assert(rule.terminal?)
  end

  def test_match
    rule = Expression.new(/\d+/)
    match = rule.match(input('123 456'))
    assert(match)
    assert_equal('123', match.text)
    assert_equal(3, match.length)
  end

  def test_match_failure
    rule = Expression.new(/\d+/)
    match = rule.match(input(' 456'))
    assert_equal(nil, match)
  end

  def test_to_s
    rule = Expression.new(/\d+/)
    assert_equal('/\\d+/', rule.to_s)
  end

end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
citrus-1.4.0 test/expression_test.rb
citrus-1.3.0 test/expression_test.rb
citrus-1.2.2 test/expression_test.rb
citrus-1.2.1 test/expression_test.rb
citrus-1.2.0 test/expression_test.rb
citrus-1.1.0 test/expression_test.rb
citrus-1.0.0 test/expression_test.rb