Class: Actir::ParallelTests::HtmlFormatter
- Inherits:
-
Object
- Object
- Actir::ParallelTests::HtmlFormatter
- Includes:
- ERB::Util
- Defined in:
- lib/actir/parallel_tests/report/html_formatter.rb
Instance Method Summary collapse
- #flush ⇒ Object
-
#initialize(file) ⇒ HtmlFormatter
constructor
A new instance of HtmlFormatter.
- #make_testsuite_header_red(testsuite_id) ⇒ Object
- #print_html_start ⇒ Object
-
#print_summary(testcase_count, failure_count) ⇒ Object
#class_full_name = temp.split(“/”) #class_name = class_full_name[class_full_name.length - 1].split(“.”).camelize @file.puts “ <dd class="testcase failed">” @file.puts “ <span class="failed_spec_name">: #h(testcase_name)</span>” @file.puts “ <div id="testtab_#failure_number" style="float:right"><a class="expand" href="#" onClick="Effect(‘failure_#failure_number’,this.parentNode.id);" >+</a> </div>” @file.puts “ <div class="failure" id="failure_#failure_number" style="display:none;">” @file.puts “ <div class="backtrace"><pre>#h(backtrace)</pre> <h6>Failure Screenshots:<h6><img src="#screenshots_path/FAILED_#method_name(#class_name).png" onerror="javascript:this.src=‘#’" hight="700" width="800"></div>” @file.puts “ </div>” @file.puts “ </dd>” end.
- #print_testcase_failed(testsuit_name, testcase_name, backtrace, failure_number) ⇒ Object
- #print_testcase_passed(testcase_name) ⇒ Object
- #print_testsuite_end ⇒ Object
- #print_testsuite_start(testsuite_id, testsuite_name) ⇒ Object
Constructor Details
#initialize(file) ⇒ HtmlFormatter
Returns a new instance of HtmlFormatter.
8 9 10 |
# File 'lib/actir/parallel_tests/report/html_formatter.rb', line 8 def initialize(file) @file = file end |
Instance Method Details
#flush ⇒ Object
93 94 95 |
# File 'lib/actir/parallel_tests/report/html_formatter.rb', line 93 def flush @file.flush end |
#make_testsuite_header_red(testsuite_id) ⇒ Object
86 87 88 89 90 91 |
# File 'lib/actir/parallel_tests/report/html_formatter.rb', line 86 def make_testsuite_header_red(testsuite_id) @file.puts " <script type=\"text/javascript\">" \ "makeRed('div_testsuite_#{testsuite_id}');</script>" @file.puts " <script type=\"text/javascript\">" \ "makeRed('testsuite_#{testsuite_id}');</script>" end |
#print_html_start ⇒ Object
12 13 14 15 |
# File 'lib/actir/parallel_tests/report/html_formatter.rb', line 12 def print_html_start @file.puts HTML_HEADER @file.puts REPORT_HEADER end |
#print_summary(testcase_count, failure_count) ⇒ Object
#class_full_name = temp.split(“/”)
#class_name = class_full_name[class_full_name.length - 1].split(".")[0].camelize
@file.puts " <dd class=\"testcase failed\">"
@file.puts " <span class=\"failed_spec_name\">[Testcase]: #{h(testcase_name)}</span>"
@file.puts " <div id=\"testtab_#{failure_number}\" style=\"float:right\"><a class=\"expand\" href=\"#\" onClick=\"Effect('failure_#{failure_number}',this.parentNode.id);\" >+</a> </div>"
@file.puts " <div class=\"failure\" id=\"failure_#{failure_number}\" style=\"display:none;\">"
@file.puts " <div class=\"backtrace\"><pre>#{h(backtrace)}</pre> <h6>Failure Screenshots:<h6><img src=\"#{screenshots_path}/FAILED_#{method_name}(#{class_name}).png\" onerror=\"javascript:this.src='#'\" hight=\"700\" width=\"800\"></div>"
@file.puts " </div>"
@file.puts " </dd>"
end
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/actir/parallel_tests/report/html_formatter.rb', line 69 def print_summary(testcase_count, failure_count) totals = "#{testcase_count} testcase#{'s' unless testcase_count == 1}, " totals << "#{failure_count} failure#{'s' unless failure_count <= 1 }" # formatted_duration = "%.5f" % duration # @file.puts "<script type=\"text/javascript\">" \ # "document.getElementById('duration').innerHTML = \"Finished in " \ # "<strong>#{formatted_duration} seconds</strong>\";</script>" @file.puts "<script type=\"text/javascript\">" \ "document.getElementById('totals').innerHTML = \"#{totals}\";</script>" @file.puts "</div>" @file.puts "</div>" @file.puts "</body>" @file.puts "</html>" end |
#print_testcase_failed(testsuit_name, testcase_name, backtrace, failure_number) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/actir/parallel_tests/report/html_formatter.rb', line 35 def print_testcase_failed(testsuit_name, testcase_name, backtrace, failure_number) #screenshots_path = File.join($project_path, 'screenshots') temp = testcase_name.split(":") class_name = testsuit_name.split(":")[1] method_name = temp[1] #class_full_name = temp[0].split("/") #class_name = class_full_name[class_full_name.length - 1].split(".")[0].camelize @file.puts " <dd class=\"testcase failed\">" @file.puts " <span class=\"failed_spec_name\">[Testcase]: #{h(testcase_name)}</span>" @file.puts " <div id=\"testtab_#{failure_number}\" style=\"float:right\"><a class=\"expand\" href=\"#\" onClick=\"Effect('failure_#{failure_number}',this.parentNode.id);\" >+</a> </div>" @file.puts " <div class=\"failure\" id=\"failure_#{failure_number}\" style=\"display:none;\">" @file.puts " <div class=\"backtrace\"><pre>#{h(backtrace)}</pre> <h6>Failure Screenshots:<h6><img src=\"../ws/screenshots/FAILED_#{method_name}(#{class_name}).png\" onerror=\"javascript:this.src='../../ws/screenshots/FAILED_#{method_name}(#{class_name}).png'\" hight=\"700\" width=\"800\"></div>" @file.puts " </div>" @file.puts " </dd>" end |
#print_testcase_passed(testcase_name) ⇒ Object
29 30 31 32 33 |
# File 'lib/actir/parallel_tests/report/html_formatter.rb', line 29 def print_testcase_passed(testcase_name) @file.puts " <dd class=\"testcase passed\">" @file.puts " <span class=\"passed_spec_name\">[Testcase]: #{h(testcase_name)}</span>" @file.puts " </dd>" end |
#print_testsuite_end ⇒ Object
24 25 26 27 |
# File 'lib/actir/parallel_tests/report/html_formatter.rb', line 24 def print_testsuite_end @file.puts " </dl>" @file.puts "</div>" end |
#print_testsuite_start(testsuite_id, testsuite_name) ⇒ Object
18 19 20 21 22 |
# File 'lib/actir/parallel_tests/report/html_formatter.rb', line 18 def print_testsuite_start(testsuite_id, testsuite_name) @file.puts "<div id=\"div_testsuite_#{testsuite_id}\" class=\"testsuite passed\">" @file.puts " <dl>" @file.puts " <dt id=\"testsuite_#{testsuite_id}\" class=\"passed\">[Testsuite]: #{h(testsuite_name)}</dt>" end |