Class: RSpec::Core::Formatters::HtmlPrinter
- Inherits:
-
Object
- Object
- RSpec::Core::Formatters::HtmlPrinter
show all
- Includes:
- ERB::Util
- Defined in:
- lib/rspec/core/formatters/html_printer.rb
Instance Method Summary
collapse
-
#flush ⇒ Object
-
#initialize(output) ⇒ HtmlPrinter
constructor
A new instance of HtmlPrinter.
-
#make_example_group_header_red(group_id) ⇒ Object
-
#make_example_group_header_yellow(group_id) ⇒ Object
-
#make_header_red ⇒ Object
-
#make_header_yellow ⇒ Object
-
#move_progress(percent_done) ⇒ Object
-
#print_example_failed(pending_fixed, description, run_time, failure_id, exception, extra_content, escape_backtrace = false) ⇒ Object
-
#print_example_group_end ⇒ Object
-
#print_example_group_start(group_id, description, number_of_parents) ⇒ Object
-
#print_example_passed(description, run_time) ⇒ Object
-
#print_example_pending(description, pending_message) ⇒ Object
-
#print_html_start ⇒ Object
-
#print_summary(was_dry_run, duration, example_count, failure_count, pending_count) ⇒ Object
Constructor Details
Returns a new instance of HtmlPrinter.
8
9
10
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 8
def initialize(output)
@output = output
end
|
Instance Method Details
#flush ⇒ Object
77
78
79
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 77
def flush
@output.flush
end
|
94
95
96
97
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 94
def (group_id)
@output.puts " <script type=\"text/javascript\">makeRed('div_group_#{group_id}');</script>"
@output.puts " <script type=\"text/javascript\">makeRed('example_group_#{group_id}');</script>"
end
|
99
100
101
102
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 99
def (group_id)
@output.puts " <script type=\"text/javascript\">makeYellow('div_group_#{group_id}');</script>"
@output.puts " <script type=\"text/javascript\">makeYellow('example_group_#{group_id}');</script>"
end
|
86
87
88
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 86
def
@output.puts " <script type=\"text/javascript\">makeRed('rspec-header');</script>"
end
|
90
91
92
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 90
def
@output.puts " <script type=\"text/javascript\">makeYellow('rspec-header');</script>"
end
|
#move_progress(percent_done) ⇒ Object
81
82
83
84
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 81
def move_progress( percent_done )
@output.puts " <script type=\"text/javascript\">moveProgressBar('#{percent_done}');</script>"
@output.flush
end
|
#print_example_failed(pending_fixed, description, run_time, failure_id, exception, extra_content, escape_backtrace = false) ⇒ Object
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 33
def print_example_failed( pending_fixed, description, run_time, failure_id, exception, , escape_backtrace = false )
formatted_run_time = sprintf("%.5f", run_time)
@output.puts " <dd class=\"example #{pending_fixed ? 'pending_fixed' : 'failed'}\">"
@output.puts " <span class=\"failed_spec_name\">#{h(description)}</span>"
@output.puts " <span class=\"duration\">#{formatted_run_time}s</span>"
@output.puts " <div class=\"failure\" id=\"failure_#{failure_id}\">"
if exception
@output.puts " <div class=\"message\"><pre>#{h(exception[:message])}</pre></div>"
if escape_backtrace
@output.puts " <div class=\"backtrace\"><pre>#{h exception[:backtrace]}</pre></div>"
else
@output.puts " <div class=\"backtrace\"><pre>#{exception[:backtrace]}</pre></div>"
end
end
@output.puts if
@output.puts " </div>"
@output.puts " </dd>"
end
|
#print_example_group_end ⇒ Object
17
18
19
20
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 17
def print_example_group_end
@output.puts " </dl>"
@output.puts "</div>"
end
|
#print_example_group_start(group_id, description, number_of_parents) ⇒ Object
22
23
24
25
26
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 22
def print_example_group_start( group_id, description, number_of_parents )
@output.puts "<div id=\"div_group_#{group_id}\" class=\"example_group passed\">"
@output.puts " <dl #{indentation_style(number_of_parents)}>"
@output.puts " <dt id=\"example_group_#{group_id}\" class=\"passed\">#{h(description)}</dt>"
end
|
#print_example_passed(description, run_time) ⇒ Object
28
29
30
31
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 28
def print_example_passed( description, run_time )
formatted_run_time = sprintf("%.5f", run_time)
@output.puts " <dd class=\"example passed\"><span class=\"passed_spec_name\">#{h(description)}</span><span class='duration'>#{formatted_run_time}s</span></dd>"
end
|
#print_example_pending(description, pending_message) ⇒ Object
53
54
55
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 53
def print_example_pending( description, pending_message )
@output.puts " <dd class=\"example not_implemented\"><span class=\"not_implemented_spec_name\">#{h(description)} (PENDING: #{h(pending_message)})</span></dd>"
end
|
#print_html_start ⇒ Object
12
13
14
15
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 12
def print_html_start
@output.puts HTML_HEADER
@output.puts REPORT_HEADER
end
|
#print_summary(was_dry_run, duration, example_count, failure_count, pending_count) ⇒ Object
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
# File 'lib/rspec/core/formatters/html_printer.rb', line 57
def print_summary( was_dry_run, duration, example_count, failure_count, pending_count )
if was_dry_run
totals = "This was a dry-run"
else
totals = "#{example_count} example#{'s' unless example_count == 1}, "
totals << "#{failure_count} failure#{'s' unless failure_count == 1}"
totals << ", #{pending_count} pending" if pending_count > 0
end
formatted_duration = sprintf("%.5f", duration)
@output.puts "<script type=\"text/javascript\">document.getElementById('duration').innerHTML = \"Finished in <strong>#{formatted_duration} seconds</strong>\";</script>"
@output.puts "<script type=\"text/javascript\">document.getElementById('totals').innerHTML = \"#{totals}\";</script>"
@output.puts "</div>"
@output.puts "</div>"
@output.puts "</body>"
@output.puts "</html>"
end
|