class Test

Attributes

errors[RW]
notes[RW]
result[RW]
test_name[RW]

Public Class Methods

new(test_name) click to toggle source
# File lib/foundation/test/template/test.rb, line 10
def initialize(test_name)
  @test_name = test_name
  @errors = []
  @notes = []
  @result = {name: test_name, errors: @errors.length}
end

Public Instance Methods

cleanup() click to toggle source
# File lib/foundation/test/template/test.rb, line 85
def cleanup
  PadUtils.puts_c "'#{@test_name} cleanup method' not implemented!", :error
end
explain() click to toggle source
# File lib/foundation/test/template/test.rb, line 17
def explain
  puts
  PadUtils.puts_c "Running: #{@test_name}...", :green
  puts
end
leave() click to toggle source
# File lib/foundation/test/template/test.rb, line 34
def leave
  puts
  PadUtils.puts_c "Finished running: #{@test_name}", @errors.length < 1 ? :green : :error

  if @errors.length < 1
    PadUtils.puts_c "- 0 errors", :green
  else
    PadUtils.puts_c "- #{@errors.length} error(s):", :error
    @errors.each do |error|
      PadUtils.puts_c "--> #{error}"
    end
  end
  puts

  if @notes.length > 0
    PadUtils.puts_c "- #{@notes.length} note(s):", :green
    @notes.each do |note|
      PadUtils.puts_c "--> #{note}"
    end
    puts
  end

  PadUtils.puts_c "--------------------", :green
  puts
end
prepare() click to toggle source
# File lib/foundation/test/template/test.rb, line 81
def prepare
  PadUtils.puts_c "'#{@test_name} prepare method' not implemented!", :error
end
raise_error(e) click to toggle source
# File lib/foundation/test/template/test.rb, line 23
def raise_error(e)
  puts
  PadUtils.puts_c "Error in #{@test_name}: ", :error
  puts "#{e.message} (#{e.class.name})"
  stack = e.backtrace.inspect.split(",")
  stack.each do |s|
    puts "\t#{s}"
  end
  puts
end
run() click to toggle source
# File lib/foundation/test/template/test.rb, line 60
def run
  explain
  prepare
  runner
  cleanup
  leave
  @result[:errors] = @errors.length
  @result
end
run_test() click to toggle source
# File lib/foundation/test/template/test.rb, line 77
def run_test
  PadUtils.puts_c "'#{@test_name} run_test method' not implemented!", :error
end
runner() click to toggle source
# File lib/foundation/test/template/test.rb, line 70
def runner
  run_test
rescue Exception => e
  @errors << "Error message: #{e.message}"
  raise_error(e)
end