Class: Object

Inherits:
BasicObject
Defined in:
lib/test_simple/object.rb

Defined Under Namespace

Classes: Fail

Instance Method Summary collapse

Instance Method Details

#assert(actual, expect) ⇒ Object

Raises:



48
49
50
51
# File 'lib/test_simple/object.rb', line 48

def assert(actual, expect)
  $assertions += 1
  raise Fail, "compared: #{actual} == #{expect}" unless actual == expect
end

#assert_not(actual, expect) ⇒ Object

Raises:



53
54
55
56
# File 'lib/test_simple/object.rb', line 53

def assert_not(actual, expect)
  $assertions += 1
  raise Fail, "compared: #{actual} == #{expect}" unless actual != expect
end

#pp(to_print) ⇒ Object



12
13
14
15
16
# File 'lib/test_simple/object.rb', line 12

def pp(to_print)
  $pp[$no] ||= []
  $pp[$no] << to_print
  $pp[$no] = $pp[$no].uniq
end

#resultsObject



58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'lib/test_simple/object.rb', line 58

def results
  color = ($failed >= 1 or $error >= 1) ? :red : :green
  puts ' '
  puts "Failed: #{$failed}, Errors: #{$error}, Passed: #{$passed}, Total: #{$failed + $error + $passed}, Assertions: #{$assertions}".colorize(color)
  puts ' '
  unless $msg.empty?
    puts 'FAILURES & ERRORS'
    $msg.each do |name, msg|
      puts "#{name}".colorize(:red)
      msg.each do |er|
        puts "   #{er}"
      end
      puts ' '
    end
  end
  puts ' '
end

#setupObject



18
19
20
# File 'lib/test_simple/object.rb', line 18

def setup
  yield
end

#should(name = 'test') ⇒ Object

Raises:

  • (FormulationError)


22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/test_simple/object.rb', line 22

def should(name = 'test')
  space = 31 - name.length
  raise FormulationError, 'Test name too long must be 30 char or less' if name.length > 50
  begin
    yield
    if yield == false
      raise Fail
    end
    print "passed".colorize(:green)
    $passed += 1
  rescue Fail => e
    print "failed".colorize(:red)
    $msg["#{$no}. #{name}"] = [e]
    $failed += 1
  rescue => exception
    print "error ".colorize(:red)
    $msg["#{$no}. #{name}"] = [exception] + exception.backtrace
    $error += 1
  end
  print "  #{$no}. #{name}"
  puts ' '
  $pp[$no].each { |pp| puts pp } if $pp[$no]
  puts ' ' if $pp[$no]
  $no += 1
end