Skip to content

Instantly share code, notes, and snippets.

/MsTestTask.rb Secret

Created January 15, 2015 18:49
Show Gist options
  • Save anonymous/7161e82ebc06f6af33eb to your computer and use it in GitHub Desktop.
Save anonymous/7161e82ebc06f6af33eb to your computer and use it in GitHub Desktop.
Rake MsTestTask
require 'rake'
require 'rake/tasklib'
class MsTestTask < Rake::TaskLib
attr_accessor :name, :containers, :categories, :task_dependencies
def initialize(name = :msbuildtask, task_dependencies = {})
@name = name
@mstest_exe = find_mstest_exe
yield self if block_given?
@task_dependencies = task_dependencies
@containers = find_test_assemblies
define
end
def define
desc 'what'
task name => task_dependencies do
# Run mstest once for each test assembly.
@containers.each do |container|
cmd = "\"#{@mstest_exe}\" /testcontainer:\"#{container}\""
puts cmd
puts `#{cmd}`
end
end
end
def find_mstest_exe
"C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\Common7\\IDE\\MSTest.exe"
end
def find_test_assemblies
FileList.new("test/**/bin/Release/**/*Tests.dll")
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment