tests
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
== The python/ directory == module/ contains the hawkey.test module used for testing Python bindings of hawkey and its Python clients. tests/ contains the unit tests themselves. == The repos/ directory == This directory contains sample package data for testing. It is crucial to maintain integrity of packages as described by the .repo files, for instance the same (equal NEVRA) package present in two different repos needs to keep the same provides and requires at both places. The goal is to have as few packages as possible, ideally one or two per a specific testing role they can play: flying * installed at a version older than anything from repositories * there's one updated version with different arch than the installed * the latest available version is not installable fool * installed version available from main repo, updates repo contains a newer version * the updates version obsoletes two packages * installonly testing penny, penny-lib * have summaries * installed in the highest available version * penny-lib is architecture dependent * 'penny-lib' provides 'P-lib' that 'flying' needs, so it can not be removed by itself. walrus * not installed, available in the main repo, update available in updates * requires two packages semolina * for multilib install testing pilchard * for selector upgrade testing hello * depends on 'goodbye' which is not provided by anything else jay * installed twice, not updatable from main. * downgrade available from main. baby * installed at a version newer than anything available (downgrade, distupgrade testing) * has epoch (testing evr parsing) foolish-grin * in the "vendor" repo, for testing vendor change gun * installed only in the i686 version * higher version of x86_64 arch is available in "vendor" repo (distupgrade doesn't replace it) * testing forcebest/arches interaction pigs, tour * testing file reqiures * tour is available as a command-line .rpm too === repos/yum === To test loading of yum repos we need an actual yum repo. It currently consists of two packages ("mystery", "tour") and generated repodata. The specfiles are included, all the package payload is generated in them. To rebuild them, e.g.: rpmbuild -bb tour.spec If things change in these packages the respective changes need to be made in the unit tests too for them to pass. The command to do the metadata rebuild from hawkey/tests/repos/yum: createrepo --deltas --oldpackagedirs=../yum_oldrpms/ --no-database . Or use the 'recreate' script in the directory.