Module: Buildr::TestFramework::JRubyBased
Defined Under Namespace
Modules: ClassMethods
Constant Summary collapse
- VERSION =
'1.1.3'
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.dependencies ⇒ Object
62 63 64 |
# File 'lib/buildr/java/bdd.rb', line 62 def dependencies [jruby_artifact] end |
.included(mod) ⇒ Object
66 67 68 69 |
# File 'lib/buildr/java/bdd.rb', line 66 def included(mod) mod.extend ClassMethods super end |
.jruby_artifact ⇒ Object
58 59 60 |
# File 'lib/buildr/java/bdd.rb', line 58 def jruby_artifact "org.jruby:jruby-complete:jar:#{version}" end |
.version ⇒ Object
54 55 56 |
# File 'lib/buildr/java/bdd.rb', line 54 def version Buildr.settings.build['jruby'] || VERSION end |
Instance Method Details
#jruby_home ⇒ Object
115 116 117 118 |
# File 'lib/buildr/java/bdd.rb', line 115 def jruby_home @jruby_home ||= RUBY_PLATFORM =~ /java/ ? Config::CONFIG['prefix'] : ( ENV['JRUBY_HOME'] || File.('~/.jruby') ) end |
#jruby_installed? ⇒ Boolean
120 121 122 |
# File 'lib/buildr/java/bdd.rb', line 120 def jruby_installed? !Dir.glob(File.join(jruby_home, 'lib', 'jruby*.jar')).empty? end |
#run(tests, dependencies) ⇒ Object
82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
# File 'lib/buildr/java/bdd.rb', line 82 def run(tests, dependencies) maybe_install_jruby dependencies |= [task.compile.target.to_s] spec_dir = task.project.path_to(:source, :spec, :ruby) report_dir = task.report_to.to_s FileUtils.rm_rf report_dir FileUtils.mkdir_p report_dir ENV['CI_REPORTS'] = report_dir runner = runner_config runner.content = runner_content(binding) Buildr.write(runner.file, runner.content) FileUtils.rm_f runner.result if RUBY_PLATFORM[/java/] && !.fork runtime = new_runtime runtime.getObject.java.lang.System.getProperties().putAll([:properties] || {}) runtime.getLoadService.require runner.file else = task..only(:properties, :java_args) .update(:classpath => dependencies, :project => task.project) jruby runner.file, tests, end result = YAML.load(File.read(runner.result)) if Exception === result raise [result., result.backtrace].flatten.join("\n") end result.succeeded end |