Class: ReportPortal::Cucumber::ParallelReport
- Defined in:
- lib/report_portal/cucumber/parallel_report.rb
Constant Summary collapse
- FILE_WITH_LAUNCH_ID =
Pathname(Dir.tmpdir) + "parallel_launch_id_for_#{Process.ppid}.lck"
Instance Method Summary collapse
- #done(desired_time = ReportPortal.now) ⇒ Object
-
#initialize ⇒ ParallelReport
constructor
A new instance of ParallelReport.
- #parallel? ⇒ Boolean
Methods inherited from Report
#attach_to_launch?, #embed, #puts, #start_launch, #test_case_finished, #test_case_started, #test_step_finished, #test_step_started
Constructor Details
#initialize ⇒ ParallelReport
Returns a new instance of ParallelReport.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/report_portal/cucumber/parallel_report.rb', line 30 def initialize @root_node = Tree::TreeNode.new('') @last_used_time ||= 0 if ParallelTests.first_process? File.open(FILE_WITH_LAUNCH_ID, 'w') do |f| f.flock(File::LOCK_EX) start_launch f.write(ReportPortal.launch_id) f.flush f.flock(File::LOCK_UN) end else File.open(FILE_WITH_LAUNCH_ID, 'r') do |f| f.flock(File::LOCK_SH) ReportPortal.launch_id = f.read f.flock(File::LOCK_UN) end end end |
Instance Method Details
#done(desired_time = ReportPortal.now) ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/report_portal/cucumber/parallel_report.rb', line 51 def done(desired_time = ReportPortal.now) end_feature(desired_time) if @feature_node if ParallelTests.first_process? ParallelTests.wait_for_other_processes_to_finish File.delete(FILE_WITH_LAUNCH_ID) unless attach_to_launch? $stdout.puts "Finishing launch #{ReportPortal.launch_id}" ReportPortal.close_child_items(nil) time_to_send = time_to_send(desired_time) ReportPortal.finish_launch(time_to_send) end end end |
#parallel? ⇒ Boolean
26 27 28 |
# File 'lib/report_portal/cucumber/parallel_report.rb', line 26 def parallel? true end |