You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by dj...@apache.org on 2009/06/15 21:59:26 UTC
svn commit: r784956 - /buildr/trunk/lib/buildr/scala/bdd.rb
Author: djspiewak
Date: Mon Jun 15 19:59:26 2009
New Revision: 784956
URL: http://svn.apache.org/viewvc?rev=784956&view=rev
Log:
More robust Specs running
Modified:
buildr/trunk/lib/buildr/scala/bdd.rb
Modified: buildr/trunk/lib/buildr/scala/bdd.rb
URL: http://svn.apache.org/viewvc/buildr/trunk/lib/buildr/scala/bdd.rb?rev=784956&r1=784955&r2=784956&view=diff
==============================================================================
--- buildr/trunk/lib/buildr/scala/bdd.rb (original)
+++ buildr/trunk/lib/buildr/scala/bdd.rb Mon Jun 15 19:59:26 2009
@@ -68,24 +68,29 @@
def tests(dependencies)
dependencies += [task.compile.target.to_s]
- filter_classes(dependencies, :interfaces => ['org.specs.Specification'])
+ candidates = filter_classes(dependencies, :interfaces => ['org.specs.Specification'])
+
+ Java.load # Java is already loaded, but just in case
+
+ filter = Java.org.apache.buildr.JavaTestFilter.new(dependencies.to_java(Java.java.lang.String))
+ filter.add_fields ['MODULE$'].to_java(Java.java.lang.String)
+ filter.filter(candidates.to_java(Java.java.lang.String)) # we only want singletons
end
def run(specs, dependencies) #:nodoc:
- dependencies += [task.compile.target.to_s] + Scalac.dependencies
+ dependencies += [task.compile.target.to_s, File.join(File.dirname(__FILE__))] + Scalac.dependencies
cmd_options = { :properties => options[:properties],
:java_args => options[:java_args],
:classpath => dependencies}
-
+
+ runner = 'org.apache.buildr.SpecsSingletonRunner'
specs.inject [] do |passed, spec|
begin
- Java.load
-
unless Util.win_os?
- Java::Commands.java(spec, '-c', cmd_options)
+ Java::Commands.java(runner, task.compile.target.to_s, '-c', spec, cmd_options)
else
- Java::Commands.java(spec, cmd_options)
+ Java::Commands.java(runner, task.compile.target.to_s, spec, cmd_options)
end
rescue => e
passed