Class: TestOutput

Inherits:
Object
  • Object
show all
Defined in:
lib/test_output.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(lines) ⇒ TestOutput

Returns a new instance of TestOutput.



4
5
6
7
8
9
10
# File 'lib/test_output.rb', line 4

def initialize(lines)
  @lines = lines

  if compile_error?
    @message = lines.join("\n")
  end
end

Instance Attribute Details

#messageObject (readonly)

Returns the value of attribute message.



2
3
4
# File 'lib/test_output.rb', line 2

def message
  @message
end

Instance Method Details

#compile_error?Boolean

Returns:

  • (Boolean)


12
13
14
# File 'lib/test_output.rb', line 12

def compile_error?
  @lines.any? { |line| /^!/ =~ line }
end

#testsObject



16
17
18
19
20
21
22
23
24
# File 'lib/test_output.rb', line 16

def tests
  @lines.inject([]) do |acc, line|
    acc << if /true/ =~ line
      Test.new(true, line.match(/(.+) true/)[1])
    else
      Test.new(false, line.match(/(.+) false/)[1])
    end
  end
end