|
2.
|
|
|
The `DEP 8 specification <DEP8_>`_ defines how automatic testing can very easily be integrated into packages. To integrate a test into a package, all you need to do is:
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:5
|
|
6.
|
|
|
In ``debian/tests/control`` you specify what to expect from the testbed. So for example you list all the required packages for the tests, if the testbed gets broken during the build or if ``root`` permissions are required. The `DEP 8 specification <DEP8_>`_ lists all available options.
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:17
|
|
7.
|
|
|
Below we are having a look at the ``glib2.0`` source package. In a very simple case the file would look like this::
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:22
|
|
8.
|
|
|
For the test in ``debian/tests/build`` this would ensure that the packages ``libglib2.0-dev`` and ``build-essential`` are installed.
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:28
|
|
9.
|
|
|
You can use ``@`` in the ``Depends`` line to indicate that you want all the packages installed which are built by the source package in question.
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:31
|
|
10.
|
|
|
The actual tests
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:37
|
|
11.
|
|
|
The accompanying test for the example above might be:
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:39
|
|
12.
|
|
|
Here a very simple piece of C code is written to a temporary directory. Then this is compiled with system libraries (using flags and library paths as provided by `pkg-config`). Then the compiled binary, which just exercises some parts of core glib functionality, is run.
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:71
|
|
13.
|
|
|
While this test is very small and simple, it covers quite a lot: that your -dev package has all necessary dependencies, that your package installs working pkg-config files, headers and libraries are put into the right place, or that the compiler and linker work. This helps to uncover critical issues early on.
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:76
|
|
14.
|
|
|
Executing the test
|
|
|
|
(no translation yet)
|
|
|
|
Located in
../ubuntu-packaging-guide/auto-pkg-test.rst:82
|