Sha256: 11527a6784efc235a9d92b70c9b4824172774d25dc1568e299e3f7dd3fc235dc

Contents?: true

Size: 1.25 KB

Versions: 7

Compression:

Stored size: 1.25 KB

Contents

class TestHelper
  class AssertionFailure < Exception
  end
  def assert(val)
    raise AssertionFailure.new("assertion failed: expected a value, got #{val.inspect}") unless val
  end

  def assert_nil(val)
    raise AssertionFailure.new("assertion failed: did not expect a value, got #{val.inspect}") if val
  end

  def assert_equal(expected,val)
    raise AssertionFailure.new("expected #{expected.inspect}; got #{val.inspect}") if expected!=val
  end

  def run_tests(tests=nil)
    failures=[]
    errors=[]
    successes=0
    (tests || self.methods).each do |method|
      method=method.to_sym
      if method.to_s[/^test_/]
        begin
          self.send(method)
          successes+=1
          $stdout.write(".");
        rescue AssertionFailure => e
          errors<<"#{method} failed an assertion: #{e}"+
          "    "+e.backtrace.join("\n    ")+"\n\n"
          $stdout.write("E");
        rescue Exception => e
          failures<<"#{method} had an error: #{e}"+
          "    "+e.backtrace.join("\n    ")+"\n\n"
          $stdout.write("F");
        end
        $stdout.flush()
      end
    end
    puts ""
    puts "\n\n"+(errors+failures).join("\n\n")
    puts "successes: #{successes}, failures: #{failures.length}, errors: #{errors.length}"
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
babel_bridge-0.4.1 test/test_helper.rb
babel_bridge-0.4.0 test/test_helper.rb
babel_bridge-0.3.1 test/test_helper.rb
babel_bridge-0.3.0 test/test_helper.rb
babel_bridge-0.2.0 test/test_helper.rb
babel_bridge-0.1.1 test/test_helper.rb
babel_bridge-0.1.0 test/test_helper.rb