diff options
-rw-r--r-- | test/ripper/test_files.rb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/ripper/test_files.rb b/test/ripper/test_files.rb new file mode 100644 index 0000000000..8d0af73adb --- /dev/null +++ b/test/ripper/test_files.rb @@ -0,0 +1,20 @@ +require 'ripper' +require 'find' +require 'test/unit' + +class TestRipper_Generic < Test::Unit::TestCase + SRCDIR = File.dirname(File.dirname(File.dirname(File.expand_path(__FILE__)))) + + class Parser < Ripper + PARSER_EVENTS.each {|n| eval "def on_#{n}(*args) r = [:#{n}, *args]; r.inspect; Object.new end" } + SCANNER_EVENTS.each {|n| eval "def on_#{n}(*args) r = [:#{n}, *args]; r.inspect; Object.new end" } + end + + def test_parse_files + Find.find("#{SRCDIR}/lib", "#{SRCDIR}/ext", "#{SRCDIR}/sample", "#{SRCDIR}/test") {|n| + next if /\.rb\z/ !~ n || !File.file?(n) + p n + assert_nothing_raised { Parser.new(File.read(n)).parse } + } + end +end |