Sha256: 53e117a5c8ee7676af39a4484db45ae3059309af0b0d70db85324ff6608bdde5

Contents?: true

Size: 892 Bytes

Versions: 5

Compression:

Stored size: 892 Bytes

Contents

require File.expand_path('../test_helper.rb', File.dirname(__FILE__))
require 'pt_testcase'

class TestParser < RipperRubyParser::Parser
  def process(input)
    parse input
  end
end

SKIPPED_TESTS = ['dstr_heredoc_windoze_sucks'].freeze

class RubyParserTestCase < ParseTreeTestCase
  def self.previous(_key)
    'Ruby'
  end

  def self.generate_test(klass, node, data, input_name, _output_name)
    if data['Ruby'].is_a? Array
      klass.send :define_method, "test_#{node}" do
        skip 'Not a parser test'
      end
      return
    end

    if SKIPPED_TESTS.include? node
      klass.send :define_method, "test_#{node}" do
        skip "Can't or won't fix this difference"
      end
      return
    end

    super klass, node, data, input_name, 'ParseTree'
  end
end

class TestRuby19Parser < RubyParserTestCase
  def setup
    super

    self.processor = TestParser.new
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ripper_ruby_parser-1.4.2 test/pt_testcase/pt_test.rb
ripper_ruby_parser-1.4.1 test/pt_testcase/pt_test.rb
ripper_ruby_parser-1.4.0 test/pt_testcase/pt_test.rb
ripper_ruby_parser-1.3.0 test/pt_testcase/pt_test.rb
ripper_ruby_parser-1.2.0 test/pt_testcase/pt_test.rb