-
-
Save anonymous/7161e82ebc06f6af33eb to your computer and use it in GitHub Desktop.
Rake MsTestTask
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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