Class: Xcode::Test::Report::SuiteResult

Inherits:
Object
  • Object
show all
Defined in:
lib/xcode/test/report/suite_result.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(report, name, start_time) ⇒ SuiteResult

Returns a new instance of SuiteResult.



7
8
9
10
11
12
13
14
# File 'lib/xcode/test/report/suite_result.rb', line 7

def initialize(report, name, start_time)
  @report = report
  @name = name
  @start_time = start_time
  @tests = []
  
  @report.notify_observers :before_suite, self
end

Instance Attribute Details

#end_timeObject

Returns the value of attribute end_time.



5
6
7
# File 'lib/xcode/test/report/suite_result.rb', line 5

def end_time
  @end_time
end

#nameObject

Returns the value of attribute name.



5
6
7
# File 'lib/xcode/test/report/suite_result.rb', line 5

def name
  @name
end

#reportObject

Returns the value of attribute report.



5
6
7
# File 'lib/xcode/test/report/suite_result.rb', line 5

def report
  @report
end

#start_timeObject

Returns the value of attribute start_time.



5
6
7
# File 'lib/xcode/test/report/suite_result.rb', line 5

def start_time
  @start_time
end

#testsObject

Returns the value of attribute tests.



5
6
7
# File 'lib/xcode/test/report/suite_result.rb', line 5

def tests
  @tests
end

Instance Method Details

#add_test_case(name) {|test| ... } ⇒ Object

Yields:

  • (test)


26
27
28
29
30
31
32
33
# File 'lib/xcode/test/report/suite_result.rb', line 26

def add_test_case(name)
  finish_current_test
  
  test = Xcode::Test::Report::TestResult.new self, name
  @tests << test
  yield(test) if block_given?
  test
end

#finish(time = Time.now) ⇒ Object



16
17
18
19
20
21
22
23
24
# File 'lib/xcode/test/report/suite_result.rb', line 16

def finish(time=Time.now)
  raise "Time is nil" if time.nil?
    
  # Fail any lingering test
  finish_current_test
      
  @end_time = time
  @report.notify_observers :after_suite, self
end

#finished?Boolean

Returns:

  • (Boolean)


35
36
37
# File 'lib/xcode/test/report/suite_result.rb', line 35

def finished?
  !@end_time.nil?
end

#total_errorsObject



39
40
41
42
43
44
45
# File 'lib/xcode/test/report/suite_result.rb', line 39

def total_errors
  errors = 0
  @tests.each do |t| 
    errors = errors + t.errors.count if t.failed?
  end
  errors
end

#total_failed_testsObject



51
52
53
# File 'lib/xcode/test/report/suite_result.rb', line 51

def total_failed_tests
  @tests.select {|t| t.failed? }.count
end

#total_passed_testsObject



47
48
49
# File 'lib/xcode/test/report/suite_result.rb', line 47

def total_passed_tests
  @tests.select {|t| t.passed? }.count
end