Sha256: e4dca20f301de5bebd33940fcdde5c2da6ec587eada801a12b6fd688a33f9221
Contents?: true
Size: 1.03 KB
Versions: 128
Compression:
Stored size: 1.03 KB
Contents
require 'nokogiri' module Gitlab module QA module Report class UpdateScreenshotPath def initialize(files:) @files = files end REGEX = %r{(?<gitlab_qa_run>gitlab-qa-run-.*?(?=\/))\/(?<gitlab_ce_ee_qa>gitlab-(ee|ce)-qa-.*?(?=\/))} def invoke! Dir.glob(@files).each do |rspec_report_file| report = rewrite_each_screenshot_path(rspec_report_file) File.write(rspec_report_file, report) puts "Saved #{rspec_report_file}" end end private def rewrite_each_screenshot_path(rspec_report_file) report = Nokogiri::XML(File.open(rspec_report_file)) match_data = rspec_report_file.match(REGEX) report.xpath('//system-out').each do |system_out| system_out.content = system_out.content.gsub(File.join(Docker::Volumes::QA_CONTAINER_WORKDIR, 'tmp'), "#{match_data[:gitlab_qa_run]}/#{match_data[:gitlab_ce_ee_qa]}") end report.to_s end end end end end
Version data entries
128 entries across 128 versions & 1 rubygems