Class: XCPretty::HTML

Inherits:
Object
  • Object
show all
Includes:
FormatMethods
Defined in:
lib/xcpretty/reporters/html.rb

Constant Summary collapse

FILEPATH =
'build/reports/tests.html'
TEMPLATE =
File.expand_path('../../../../assets/report.html.erb', __FILE__)
SCREENSHOT_DIR =
'build/reports'

Constants included from FormatMethods

FormatMethods::EMPTY

Instance Method Summary collapse

Methods included from FormatMethods

#format_analyze, #format_analyze_target, #format_build_target, #format_check_dependencies, #format_clean, #format_clean_remove, #format_clean_target, #format_codesign, #format_compile, #format_compile_command, #format_compile_error, #format_compile_warning, #format_compile_xib, #format_copy_header_file, #format_copy_plist_file, #format_copy_strings_file, #format_cpresource, #format_duplicate_symbols, #format_error, #format_generate_dsym, #format_libtool, #format_linking, #format_measuring_test, #format_pbxcp, #format_pending_test, #format_phase_script_execution, #format_preprocess, #format_process_info_plist, #format_process_pch, #format_process_pch_command, #format_shell_command, #format_test_run_finished, #format_test_run_started, #format_test_suite_started, #format_test_summary, #format_tiffutil, #format_touch, #format_undefined_symbols, #format_warning, #format_write_auxiliary_files, #format_write_file

Constructor Details

#initialize(options) ⇒ HTML

Returns a new instance of HTML.



18
19
20
21
22
23
24
25
26
# File 'lib/xcpretty/reporters/html.rb', line 18

def initialize(options)
  load_dependencies
  @test_suites = {}
  @filepath    = options[:path] || FILEPATH
  @parser      = Parser.new(self)
  @test_count  = 0
  @fail_count  = 0
  @collect_screenshots = options[:screenshots]
end

Instance Method Details

#finishObject



41
42
43
44
# File 'lib/xcpretty/reporters/html.rb', line 41

def finish
  FileUtils.mkdir_p(File.dirname(@filepath))
  write_report
end

#format_failing_test(suite, test_case, reason, file) ⇒ Object



32
33
34
35
# File 'lib/xcpretty/reporters/html.rb', line 32

def format_failing_test(suite, test_case, reason, file)
  add_test(suite, {:name => test_case, :failing => true,
    :reason => reason, :file => file, :snippet => formatted_snippet(file)})
end

#format_passing_test(suite, test_case, time) ⇒ Object



37
38
39
# File 'lib/xcpretty/reporters/html.rb', line 37

def format_passing_test(suite, test_case, time)
  add_test(suite, {:name => test_case, :time => time})
end

#handle(line) ⇒ Object



28
29
30
# File 'lib/xcpretty/reporters/html.rb', line 28

def handle(line)
  @parser.parse(line)
end

#load_dependenciesObject



9
10
11
12
13
14
15
16
# File 'lib/xcpretty/reporters/html.rb', line 9

def load_dependencies
  unless @@loaded ||= false
    require 'fileutils'
    require 'pathname'
    require 'erb'
    @@loaded = true
  end
end