diff --git a/lib/inferno/apps/cli/requirements_coverage_checker.rb b/lib/inferno/apps/cli/requirements_coverage_checker.rb index 64a356edd..09a8f6466 100644 --- a/lib/inferno/apps/cli/requirements_coverage_checker.rb +++ b/lib/inferno/apps/cli/requirements_coverage_checker.rb @@ -119,7 +119,7 @@ def unmatched_requirement_rows suite_runnables.select { |runnable| runnable.verifies_requirements.include? requirement_id } runnables_for_requirement.map do |runnable| - [requirement_id, runnable.short_id, runnable.id] + [requirement_id, runnable < Inferno::Entities::TestSuite ? 'suite' : runnable.short_id, runnable.id] end end end diff --git a/spec/inferno/cli/requirements_coverage_checker_spec.rb b/spec/inferno/cli/requirements_coverage_checker_spec.rb index 48973daee..17b4db6fa 100644 --- a/spec/inferno/cli/requirements_coverage_checker_spec.rb +++ b/spec/inferno/cli/requirements_coverage_checker_spec.rb @@ -18,4 +18,24 @@ expect(generated_csv).to eq(expected_csv) end end + + describe '#run' do + let(:mock_exporter) do + instance_double(Inferno::CLI::RequirementsExporter, base_requirements_folder: 'tmp/requirements') + end + + before do + allow(Inferno::CLI::RequirementsExporter).to receive(:new).and_return(mock_exporter) + allow(checker).to receive(:puts) + allow(File).to receive(:exist?).with(checker.output_file_path).and_return(false) + allow(File).to receive(:read).with(checker.output_file_path) + allow(FileUtils).to receive(:mkdir_p) + allow(File).to receive(:write) + end + + it 'runs to completion' do + expect { checker.run }.to_not raise_error + expect(File).to have_received(:write).with(checker.output_file_path, checker.new_csv) + end + end end