lib/cuker/cuker_cmd.rb in cuker-0.5.15 vs lib/cuker/cuker_cmd.rb in cuker-0.5.21

- old
+ new

@@ -17,37 +17,48 @@ # class CukerCmd < Thor class CukerCmd include LoggerSetup - CONSTS = [] - PRESETS = { - :simple_csv => [CsvModel, CsvWriter], - :simple_jira => [JiraModel, JiraWriter], - :monospaced_jira => [JiraMonoModel, JiraWriter], - # :simple_excel => [RubyXLModel, RubyXLWriter], - } + PRODUCERS = {} + PRODUCERS[:simple_csv] = [CsvModel, CsvWriter] + PRODUCERS[:simple_jira] = [JiraModel, JiraWriter] + PRODUCERS[:monospaced_jira] = [JiraMonoModel, JiraWriter] + PRODUCERS[:jira_excel] = [RubyXLModel, RubyXLWriter] + PRESETS = {} + PRESETS[:jira_package] = [:simple_jira, :jira_excel] + PRESETS[:jira_text] = [:simple_jira] + PRESETS[:jira_excel] = [:jira_excel] + + # desc "report PRESET_KEY [FEATURE_PATH [REPORT_PATH [REPORT_FILE_NAME [LOG_LEVEL]]]]", # "reports parsed results into \nREPORT_PATH/REPORT_FILE_NAME \nfor all '*.feature' files in the given FEATURE_PATH\nSTDIO LOG_LEVEL adjustable\n" - def report preset_key, feat_path = "../", report_file_name = 'sample_report', report_path = ".", log_level = :error + def report preset_key, feat_path = "../", report_file_name = 'sample_report', report_path_input = ".", log_level = :info init_logger log_level - report_path = File.join report_path, 'reports', LOG_TIME_TODAY + output_files = [] + producers = PRESETS[preset_key] - msg = "running '#{preset_key.to_s.upcase}' reporter @\n Feature Path: '#{feat_path}' \n Report Path => '#{report_path}' - '#{report_file_name}'\n" + @log.info "Using preset: #{preset_key} => #{producers}" + gr = GherkinRipper.new feat_path + ast_map = gr.ast_map - @log.info msg - puts msg + producers.each do |producer| + report_path = File.join report_path_input, 'reports', LOG_TIME_TODAY + msg = "running '#{preset_key.to_s.upcase}' reporter @\n Feature Path: '#{feat_path}' \n Report Path => '#{report_path}' - '#{report_file_name}'\n" - model, writer = PRESETS[preset_key] + @log.info msg + puts msg + model, writer = PRODUCERS[producer] - gr = GherkinRipper.new feat_path - ast_map = gr.ast_map - preset_model = model.new ast_map - preset_writer = writer.new - grr = GherkinReporter.new preset_writer, preset_model, report_path, report_file_name - File.expand_path grr.write + preset_model = model.new ast_map + preset_writer = writer.new + grr = GherkinReporter.new preset_writer, preset_model, report_path, report_file_name + + output_files << File.expand_path(grr.write) + end + output_files end private def init \ No newline at end of file