class Physique::TestsTasksBuilder

Public Instance Methods

add_test_tasks() click to toggle source
# File lib/physique/task_builders/test.rb, line 36
def add_test_tasks
  options = solution.test
  defaults = default_runner_config options
  files = options.files || defaults[:files]

  desc 'Run unit tests'

  if defaults && !files.blank?
    test_runner :test => :compile do |tests|
      tests.files = files
      tests.exe = options.exe || locate_tool(defaults[:exe])

      defaults[:parameters].each do |p|
        tests.parameters.add(p)
      end
    end
  else
    task :test => :compile do
      puts 'No test assemblies were detected'
    end
  end
end
build_tasks() click to toggle source
# File lib/physique/task_builders/test.rb, line 32
def build_tasks
  add_test_tasks
end

Private Instance Methods

default_runner_config(options) click to toggle source
# File lib/physique/task_builders/test.rb, line 61
def default_runner_config(options)
  configuration = solution.compile.configuration
  package_dir = solution.nuget.restore_location

  defaults = {
    nunit: {
        files: FileList["**/*.Tests/bin/#{configuration}/*.Tests.dll"],
        exe: "#{package_dir}/NUnit.Runners*/tools/nunit-console.exe",
        parameters: %w(-labels -trace=Verbose)},
    nspec: {
        files: FileList["**/*.Specs/bin/#{configuration}/*.Specs.dll"],
        exe: "#{package_dir}/nspec*/tools/NSpecRunner.exe",
        parameters: []}}

  defaults[options.runner]
end