Sha256: 5474d8f32b4e4e98158bcf6cb6c29ec96db0e4dfb106d4ce48a3446c24662172

Contents?: true

Size: 923 Bytes

Versions: 3

Compression:

Stored size: 923 Bytes

Contents

# frozen_string_literal: true

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

3 entries across 3 versions & 1 rubygems

Version Path
ripper_ruby_parser-1.7.2 test/pt_testcase/pt_test.rb
ripper_ruby_parser-1.7.1 test/pt_testcase/pt_test.rb
ripper_ruby_parser-1.7.0 test/pt_testcase/pt_test.rb