6c933bbf3c
Our complicated heuristics for handling multiple packages of the same name comes back to bite us. In the multilib case, we can have packages of the same NEVR, but different arch, sitting in the same tree. Previously, even if the arch was different, we would still mark it as an upgrade or downgrade. But that complicates things in the case of multiple packages of the same name in the same tree. We greatly simplify things here by making the diff algorithm dumber. We now only consider a package as "modified" (i.e. upgraded/downgraded) if it has the same NA (but different EVR). This makes handling multilib cases natural and seems worth it overall vs trying to handle the odd e.g. noarch <--> archful pkg transitions that could happen. Closes: #1230 Approved by: cgwalters |
||
---|---|---|
.. | ||
check | ||
common | ||
compose-tests | ||
composedata | ||
ex-container-tests | ||
gpghome | ||
manual | ||
utils | ||
vmcheck | ||
compose | ||
ex-container | ||
README.md |
Tests are divided into three groups:
-
Tests in the
check
directory are non-destructive and uninstalled. Some of the tests require root privileges. Usemake check
to run these. -
The
composecheck
tests currently require uid 0 capabilities - the default in Docker, or you can run them via a user namespace. They are non-destructive, but are installed.To use them, you might do a
make && sudo make install
inside a Docker container.Then invoke
./tests/compose
. Alternatively of course, you can simply run the tests on a host system or in an existing container, without doing a build.Note: This is intentionally not a
Makefile
target because it doesn't require building and doesn't use uninstalled binaries. -
Tests in the
vmcheck
directory are oriented around using Vagrant. Usemake vmcheck
to run them. See alsoHACKING.md
in the top directory.
The common
directory contains files used by multiple
tests. The utils
directory contains helper utilities
required to run the tests.