Sha256: e61ce6606ff1a08f9878cf753a3f3504e70b52ebfabd5669af004af8417fc3a3

Contents?: true

Size: 1.11 KB

Versions: 2

Compression:

Stored size: 1.11 KB

Contents

require "albacore/albacoretask"
require "albacore/ncoverreports"
require "albacore/config/ncoverreportconfig"

class NCoverReport
  TaskName = :ncoverreport

  include Albacore::Task
  include Albacore::RunCommand
  include Configuration::NCoverReport
  
  attr_array :coverage_files, 
             :reports, 
             :required_coverage, 
             :filters
  
  def initialize
    super()
    update_attributes(ncoverreport.to_hash)
  end
  
  def execute
    unless @command
      fail_with_message("ncoverreport requires #command")
      return
    end
    
    result = run_command("ncoverreport", build_parameters)
    fail_with_message("NCover Report failed, see the build log for more details.") unless result
  end
  
  def build_parameters
    p = []
    p << @coverage_files.map { |file| "\"#{file}\"" } if @coverage_files
    p << @reports.map { |report| "//or #{report.get_report_options}" } if @reports
    p << @required_coverage.map { |coverage| "//mc #{coverage.get_coverage_options}" } if @required_coverage
    p << @filters.map { |filter| "//cf #{filter.get_filter_options}" } if @filters
    p
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
albacore-1.0.0 lib/albacore/ncoverreport.rb
albacore-1.0.0.rc.3 lib/albacore/ncoverreport.rb