class MiniAssert::TestSuite
Test executable object
Public Class Methods
new(test_classes)
click to toggle source
# File lib/mini_assert/test_suite.rb, line 6 def initialize(test_classes) @test_classes = test_classes @results = { total_tests: 0, passed_tests: 0 } end
Public Instance Methods
run!()
click to toggle source
# File lib/mini_assert/test_suite.rb, line 11 def run! @test_classes.each do |test_class| test_obj = test_class.new test_obj.each_test! { |message| show_failure message } @results[:total_tests] += test_obj.total_tests @results[:passed_tests] += test_obj.passed_tests end show_results end
Private Instance Methods
show_failure(message)
click to toggle source
# File lib/mini_assert/test_suite.rb, line 33 def show_failure(message) status = MiniAssert::Crayon.red('fail') puts "[#{status}] #{message}" end
show_results()
click to toggle source
# File lib/mini_assert/test_suite.rb, line 23 def show_results ratio_string = "#{@results[:passed_tests]}/#{@results[:total_tests]}" status = if @results[:passed_tests] == @results[:total_tests] MiniAssert::Crayon.green(ratio_string) else MiniAssert::Crayon.red(ratio_string) end puts "[#{status}] tests succeded" end