Scroll to navigation

GEM2DEB-TEST-RUNNER(1) GEM2DEB-TEST-RUNNER(1)

NAME

gem2deb-test-runner - runs test suite contained in Debian Ruby packages

SYNOPSIS

gem2deb-test-runner [OPTIONS]

DESCRIPTION

gem2deb-test-runner runs the tests shipped inside a source Debian Ruby package. The way the tests are run is configured in one of the three files: debian/ruby-test-files.yaml, debian/ruby-tests.rake, debian/ruby-tests.rb. See the FILES section in dh_ruby(1) for details.

If called without argument in the root of the source package after the package is built and installed under debian/package_name, then the tests will be run using the files of the package installed under debian/package_name. This call is part of the dh_ruby(1) sequence when building a Ruby package with gem2deb.

If the option --autopkgtest is used, the package needs to be installed on the system. gem2deb-test-runner will not try to load files under debian/ and will move away temporarily the lib/ and ext/ directory to ensure the test suite is run against the installed package. This is used in the context of automatic as-installed package testing, through the autopkgtest framework.

OPTIONS

Run the tests against the installed package for automatic as-installed package testing. Useful in conjunction with adt-run(1).
Before running the tests, checks whether all dependencies of the package, as declared in the Rubygems metadata, are present. Makes the program exit with a non-zero status code (i.e. fails) if they aren't.
Check that the package can be correctly loaded by bundler. This tests that the package can be loaded properly by bundler with the following two types of Gemfiles. One lists the package as a top-level dependency:

  gem "foo"
    

This will be tested by calling `ruby -rbundler/setup`.

The other type includes the package in a group:

  group :test do
    gem "foo"
  end
    

That will be tested by calling `ruby -rbundler -e 'Bundler.require(:test)'`.

ENVIRONMENT

Used to pass options to gem2deb-test-runner via the environment. For example, to make gem2deb-test-runner check dependencies during package build, you can add the following to debian/rules:

export GEM2DEB_TEST_RUNNER = --check-dependencies

EXIT STATUS

  • 0 if tests pass.
  • 1 if tests fail.
  • 77 if --autopkgtest was passed and gem2deb-test-runner cannot determine how to run the test suite.

SEE ALSO

dh_ruby(1), gem2deb(1)

2023-02-08