<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/test/integration/framework, branch 2.9.21</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.9.21</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.9.21'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2024-12-19T22:41:01Z</updated>
<entry>
<title>Use sq in the test suite, remove apt-key</title>
<updated>2024-12-19T22:41:01Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-12-19T21:11:04Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a00fbbdb28cc31e78882301c2efe7218583ab4cb'/>
<id>urn:sha1:a00fbbdb28cc31e78882301c2efe7218583ab4cb</id>
<content type='text'>
Remove the test case for MD5 and expired signatures, as we can't
create them (can't set signing digest, and can't set signature
expiry).

Tests for them have been added to test-method-gpgv instead.

We override sq in a function with cert-store and key-store
set to none.

This supports both sq 0.40 and sq 1.0.
</content>
</entry>
<entry>
<title>Introduce automatic pager for read commands</title>
<updated>2024-12-18T09:25:24Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-12-16T16:05:40Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6e260e26e4cd671f781151e24d89a17b29a55530'/>
<id>urn:sha1:6e260e26e4cd671f781151e24d89a17b29a55530</id>
<content type='text'>
Automatically show the output of `show`, `policy`, `list`,
`search`, `showsrc` in a pager.

The pager setup is inspired by git's pager setup. Notably,
the pager is found using APT_PAGER and PAGER variables.

We wait for the pager to be setup somewhat correctly by
using a notify pipe to figure out whether execvp() was
succesful - then the pipe will read EOF as the other end
got closed by CLOEXEC during exec - or not, then the pipe
will contain an errno.

We set up the correct handlers for signals and exit to close
the fds and wait for the pager. Notably inside the signal
handler we cannot flush our streams, only close them, so
there is some duplication.

We call the InitOutputPager() function from inside the
various Do...() functions rather than setting it up
generally in InitOutput(). Doing so allows us to first
render the progress without a pager, and then setup
the pager for the content only which improves user
experience.

When we setup a pager we also take care to disable
standard input, as we should not be prompting users
while a pager is running (the pager will be reading
from the tty directly). We do this by dup2-ing() a
/dev/null over it; if we just close()d the fd, another
open() might reuse the fd number and problems could
occur.
</content>
</entry>
<entry>
<title>Stop installing apt-key, make it a test suite helper</title>
<updated>2024-12-07T14:14:34Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-11-23T19:36:28Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4b1665fc9df8b42832681adf88985ac762aedf9f'/>
<id>urn:sha1:4b1665fc9df8b42832681adf88985ac762aedf9f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Directly call gpgv instead of apt-key</title>
<updated>2024-11-28T18:01:36Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-11-23T18:59:24Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=325b0c89358dae042ebfe0ba6dcbcc43253927a6'/>
<id>urn:sha1:325b0c89358dae042ebfe0ba6dcbcc43253927a6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>test: Accept empty output from gpgv/apt-key</title>
<updated>2024-11-22T15:44:02Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-11-21T19:10:47Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=de3f663d823f9c185514af69296d011e22161479'/>
<id>urn:sha1:de3f663d823f9c185514af69296d011e22161479</id>
<content type='text'>
Our internal code always generates ENODATA for empty output and
this is checked by the previous commit, so this is entirely safe.
</content>
</entry>
<entry>
<title>test: Do not fail if valgrind is not available</title>
<updated>2024-11-21T14:38:18Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-11-21T14:36:59Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5af5b196742a477c3effb9534c5a3257c8075a8e'/>
<id>urn:sha1:5af5b196742a477c3effb9534c5a3257c8075a8e</id>
<content type='text'>
The command -v check inadvertently exited 0 because it confusingly
also considers functions and aliases. Check if we are able to run
a valgrind binary instead by querying its version.

Then, the msgdebug in the alternative code path was included in the
output that we are asserting so that was causing failures too and
needs removing.

Everything is horrible :D
</content>
</entry>
<entry>
<title>Only run valgrind in tests if valgrind available on host</title>
<updated>2024-11-11T14:14:07Z</updated>
<author>
<name>наб</name>
<email>nabijaczleweli@nabijaczleweli.xyz</email>
</author>
<published>2024-11-11T14:06:27Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=df72264891212bc9846649f3f769a1c44fe787bf'/>
<id>urn:sha1:df72264891212bc9846649f3f769a1c44fe787bf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>test framework: Improve valgrind support</title>
<updated>2024-10-15T13:10:34Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-10-15T13:10:34Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c7dedfd7e13073c98fefbeff10b69c7512a8366e'/>
<id>urn:sha1:c7dedfd7e13073c98fefbeff10b69c7512a8366e</id>
<content type='text'>
Add support for testing apt-ftparchive, set valgrind to quiet such
that we can check program output, and pass --error-exitcode=7 to get
an (should be unused) magic error code if it detects errors.
</content>
</entry>
<entry>
<title>test: Temporarily ignore autoremovable lists for solver3</title>
<updated>2024-05-24T11:43:56Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-05-20T11:17:35Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=0c700522df1c96fd591020e7b3e29bc7e36dec14'/>
<id>urn:sha1:0c700522df1c96fd591020e7b3e29bc7e36dec14</id>
<content type='text'>
We do not show them yet, so let's ignore them so we can focus
on getting the rest of the tests to work.
</content>
</entry>
<entry>
<title>test: Run working tests against the 3.0 solver</title>
<updated>2024-05-24T11:43:56Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-05-19T17:31:48Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1fbdc04be7547b8c4bb84f400329415ea0bc60b5'/>
<id>urn:sha1:1fbdc04be7547b8c4bb84f400329415ea0bc60b5</id>
<content type='text'>
Implement --solver, --only, -skip flags for the test suite, and
run the test suite with the broken tests skipped against solver3.
</content>
</entry>
</feed>
