class Gitlab::QA::Report::TestResult::JsonTestResult
Public Instance Methods
ci_job_url()
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 59 def ci_job_url report['ci_job_url'] end
failure_issue()
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 75 def failure_issue report['failure_issue'] end
failure_issue=(new_failure_issue)
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 79 def failure_issue=(new_failure_issue) report['failure_issue'] = new_failure_issue end
file()
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 51 def file report['file_path'] end
name()
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 47 def name report['full_description'] end
quarantine?()
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 83 def quarantine? # The value for 'quarantine' could be nil, a hash, a string, # or true (if the test just has the :quarantine tag) # But any non-nil or false value should means the test is in quarantine report['quarantine'].present? end
skipped()
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 63 def skipped status == 'pending' end
status()
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 55 def status report['status'] end
testcase()
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 67 def testcase report['testcase'] end
testcase=(new_testcase)
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 71 def testcase=(new_testcase) report['testcase'] = new_testcase end
Private Instance Methods
failures_from_exceptions()
click to toggle source
rubocop:disable Metrics/AbcSize
# File lib/gitlab/qa/report/test_result.rb, line 93 def failures_from_exceptions return [] unless report.key?('exceptions') report['exceptions'].map do |exception| spec_file_first_index = exception['backtrace'].rindex do |line| line.include?(File.basename(report['file_path'])) end { 'message' => "#{exception['class']}: #{exception['message']}", 'message_lines' => exception['message_lines'], 'stacktrace' => "#{format_message_lines(exception['message_lines'])}\n#{exception['backtrace'].slice(0..spec_file_first_index).join("\n")}" } end end
format_message_lines(message_lines)
click to toggle source
# File lib/gitlab/qa/report/test_result.rb, line 109 def format_message_lines(message_lines) message_lines.is_a?(Array) ? message_lines.join("\n") : message_lines end