From ed2ef0f4392398ddd4a9acea4a35565639401763 Mon Sep 17 00:00:00 2001 From: Rene Mendoza Date: Thu, 26 Aug 2010 20:14:26 -0500 Subject: [PATCH] Added autotest support to RubyKoans --- Rakefile | 2 ++ src/autotest/discover.rb | 3 +++ src/autotest/rubykoan.rb | 24 ++++++++++++++++++++++++ 3 files changed, 29 insertions(+) create mode 100644 src/autotest/discover.rb create mode 100644 src/autotest/rubykoan.rb diff --git a/Rakefile b/Rakefile index 614aad6..8fccbbd 100644 --- a/Rakefile +++ b/Rakefile @@ -29,6 +29,8 @@ module Koans def Koans.make_koan_file(infile, outfile) if infile =~ /edgecase/ cp infile, outfile + elsif infile =~ /autotest/ + cp_r infile, outfile else open(infile) do |ins| open(outfile, "w") do |outs| diff --git a/src/autotest/discover.rb b/src/autotest/discover.rb new file mode 100644 index 0000000..31a7804 --- /dev/null +++ b/src/autotest/discover.rb @@ -0,0 +1,3 @@ +Autotest.add_discovery do + "rubykoan" if File.exist? 'path_to_enlightenment.rb' +end diff --git a/src/autotest/rubykoan.rb b/src/autotest/rubykoan.rb new file mode 100644 index 0000000..d43dc91 --- /dev/null +++ b/src/autotest/rubykoan.rb @@ -0,0 +1,24 @@ +require 'autotest' + +class Autotest::Rubykoan < Autotest + def initialize + super + @exceptions = /\.txt|Rakefile|\.rdoc/ + + self.order = :alpha + self.add_mapping(/^about_.*rb$/) do |filename, _| + filename + end + + end + + def make_test_cmd files_to_test + "#{ruby} 'path_to_enlightenment.rb'" + end + + # quiet test/unit chatter + def handle_results(results) + end + +end +