Skip to content

Convenience tasks and classes for automated testing of hydra heads.

License

Notifications You must be signed in to change notification settings

westarete/jettywrapper

 
 

Repository files navigation

jettywrapper

This gem is designed to make it easier to integrate a jetty servlet container into a rails project.
Jettywrapper provides rake tasks for starting and stopping jetty, as well as a method (Jettywrapper.wrap) that will start the server before the block and stop the server after the block, which is useful for automated testing.

jettywrapper supports
ruby 2.0.0
ruby 1.9.3
ruby 1.8.7
ree 1.8.7
jruby 1.6.6+

Configuring Jettywrapper

Jettywrapper starts the process with a list of options that you can specify in config/jetty.yml (otherwise a default is used). You can provide a per environment configuration, or you can have a default configuration which will be used when a per-environment configuration is not specified.

default:
  jetty_port: 8983
  java_opts:
    - "-XX:MaxPermSize=128m"
    - "-Xmx256m"

Example rake task:

require 'jettywrapper'
desc "Hudson build"
task :hudson do
  jetty_params = Jettywrapper.load_config.merge({:jetty_home => File.expand_path(File.dirname(__FILE__) + '/../jetty')})
  error = Jettywrapper.wrap(jetty_params) do  
    Rake::Task["spec"].invoke
  end
  raise "test failures: #{error}" if error
end

Testing the gem

If you haven’t already, clone the git repository

  git clone [email protected]:projecthydra/jettywrapper.git
  cd jettywrapper

Install the gems

  bundle install

Run the tests

  rake 

About

Convenience tasks and classes for automated testing of hydra heads.

Resources

License

Stars

Watchers

Forks

Packages

No packages published