Sha256: b90880b5b536195be7b35724e22ad242224461b6f11fc0e9c7704ebdcdc55012

Contents?: true

Size: 1.24 KB

Versions: 7

Compression:

Stored size: 1.24 KB

Contents

require File.expand_path("../../helpers", __FILE__)

class ExpressionToH < Test::Unit::TestCase

  def test_expression_to_h
    root = RP.parse('abc')

    hash = root.to_h

    assert_equal hash, {
      :token             => :root,
      :type              => :expression,
      :text              => 'abc',
      :starts_at         => 0,
      :length            => 3,
      :quantifier        => nil,
      :options           => {},
      :level             => nil,
      :set_level         => nil,
      :conditional_level => nil,
      :expressions       => [
        {
          :token             => :literal,
          :type              => :literal,
          :text              => 'abc',
          :starts_at         => 0,
          :length            => 3,
          :quantifier        => nil,
          :options           => {},
          :level             => 0,
          :set_level         => 0,
          :conditional_level => 0
        }
      ]
    }
  end

  def test_expression_quantifier_to_h
    root = RP.parse('a{2,4}')
    exp  = root.expressions.at(0)

    hash = exp.quantifier.to_h

    assert_equal hash, {
      :max   => 4,
      :min   => 2,
      :mode  => :greedy,
      :text  => '{2,4}',
      :token => :interval
    }
  end

end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
regexp_parser-0.4.13 test/expression/test_to_h.rb
regexp_parser-0.4.12 test/expression/test_to_h.rb
regexp_parser-0.4.11 test/expression/test_to_h.rb
regexp_parser-0.4.10 test/expression/test_to_h.rb
regexp_parser-0.4.9 test/expression/test_to_h.rb
regexp_parser-0.4.8 test/expression/test_to_h.rb
regexp_parser-0.4.7 test/expression/test_to_h.rb