Module: ExportManager

Defined in:
lib/teuton/case_manager/export_manager.rb

Class Method Summary collapse

Class Method Details

.run(main_report, cases, input) ⇒ Object

Run export function

Parameters:

  • main_report (Report)
  • cases (Array)
  • input (Hash)

    Selected export options



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/teuton/case_manager/export_manager.rb', line 11

def self.run(main_report, cases, input)
  args = strings2symbols(input)

  # default :mode=>:all, :format=>:txt
  format = args[:format] || Application.instance.default[:format]
  mode = args[:mode] || :all
  # Step 1: Export case reports
  if %i[details all].include? mode
    threads = []
    cases.each { |c| threads << Thread.new { c.export format } }
    threads.each(&:join)
  end
  # Step 2: Export resume report
  main_report.export_resume format if %i[resume all].include? mode
  # Step 3: Preserve files if required
  preserve_files if args[:preserve] == true
end