summaryrefslogtreecommitdiffstats
path: root/pactest
AgeCommit message (Collapse)AuthorFilesLines
2007-12-11Fail sanely on OUTPUT rules when --nolog is passedAaron Griffin1-2/+6
Check for existence of the logfile first, and output an error if not found Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-11Update GNU GPL boilerplate and copyright datesDan McGee8-24/+8
Update the GPL boilerplate to direct people to the GNU website for a copy of the license, as well as bump all of Judd's copyrights to 2007. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-11pactest: if we are root, don't use fakerootDan McGee1-1/+3
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-03Add a lot more tests (and some pactest fixes) to -Si and -Qi testsDan McGee3-8/+33
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-03Add more pactests to increase code coverageDan McGee9-1/+96
These new tests test the following ops at least once: -Ss, -Si, -Sl, -Sp, -Qs, -Qi, -T Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-03Add 4 new pactests to get better code coverage by pactestDan McGee4-0/+20
I started playing around with gcov today and it showed a few places in the code that we don't test at all. This is the start of ensuring that we execute most of the code in our codebase. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-12-01New sync1005 and sync1006 pactestsNagy Gabor2-0/+28
This pactest checks what happens if a package exists in two sync repos. Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> [Dan: added sync1006, same test with different versions] Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-25Fix for sync1003 and sync1004 pactestsNagy Gabor1-4/+3
checkdeps and resolvedeps now take both a remove list and an install list as arguments, allowing dependencies to be calculated correctly. This broke the sync990 pactest, but this pactest used dependencies and provides in an unusual way, so it has been changed. Dan: the sync990 pactest was just plain wrong. It didn't satisfy the dependencies correctly, so should never have succeeded. Signed-off-by: Chantry Xavier <shiningxc@gmail.com> [Dan: some variable renaming, clarification in commit message] Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-21Remove -F/--freshen operationDan McGee3-54/+0
This operation made sense in the days before sync DBs existed, but it no longer has the same usefulness it once did. Signed-off-by: Dan McGee <dan@archlinux.org> Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2007-11-19Versioned provisions.Nagy Gabor3-0/+40
This patch introduces versioned provisions in "provision 1.0-1" format. _alpm_db_whatprovides was modified accordingly (added sync500.py), alpm_depcmp was modified accordingly (add043.py passes now; added add044.py and add045.py). Notes: alpm_db_search now uses the whole versioned %PROVIDES% string in its search. debug logging was simplified in alpm_depcmp. Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> [Xavier: fixed a few typos, duplicate const strings with strdup before modifying them, put some debugging back in alpm_depcmp, minor code cleanups (var/function renaming), added a note in PKGBUILD man page.] Signed-off-by: Chantry Xavier <shiningxc@gmail.com> [Dan: made strcmp checks clearer, added a comment] Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-15Remove REQUIREDBY checks from pactestDan McGee3-10/+1
Remove any checks dealing with requiredby from pactest (but not actually from the pactests themselves). Of course, we should probably find a new way to check requiredby values of packages since there is no guarantee our code is working perfectly. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-15new trans001.py pactestNagy Gabor1-0/+20
The pactest demonstrates what happens if fileconflict was found after the removal part of a sync transaction. Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-15new add043.py pactestNagy Gabor1-0/+15
Currently alpm_depcmp uses pkg->version as a version number for provisions, which is odd. The failure of the pactest demonstrates this. Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-13Add pactest for IgnoreGroup.Nathan Jones2-0/+23
Also tell pactest to reset IgnoreGroup like it does for IgnorePkg. Signed-off-by: Nathan Jones <nathanj@insightbb.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-11Add two requiredby pactestsChantry Xavier2-0/+42
One currently should succeed (006), and 005 fails. requiredby005.py is originally from Nagy Gabor <ngaba@petra.hos.u-szeged.hu>. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-11Add a symlink-based pactestDan McGee1-0/+20
This passes with both the upcoming 3.1 devel tree and the 3.0.6 pacman code. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-11-04Added optdepends support to pactestJeff Mickey4-0/+12
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-10-29simple pactest renaming : split conflict* into depconflict* and fileconflict*.Chantry Xavier6-2/+1
Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-10-29pactest: generate the filelist the correct wayDan McGee1-6/+16
Actually use python commands to generate the filelist instead of os.system calls that don't necessarily work everywhere. Noticed when running "make check" on FreeBSD where the tar program is actually bsdtar. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-10-29extend type001 pactest with a symlink.Chantry Xavier1-5/+9
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-10-15Fix scriptlet pactest cases so they 'succeed' againDan McGee2-0/+10
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-10-09Add two new pactests to check symlink behaviorNagy Gabor2-0/+37
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-10-09Add new (failing) sync pactestNagy Gabor1-0/+18
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-09-24libalpm/add.c: fix backup array issueDan McGee6-0/+6
As seen with the recent upgrade of pacman and the removal of the pacman.d/current mirrorlist, files that were formerly in the backup array get deleted upon their removal, which could be dangerous. Instead, we should use the combined backup array of the old and new package. This fix should address this issue in a relatively straightforward way. In addition, old files should be moved to pacsave locations as expected. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-09-24Add sync044 pactest : A dependency induces a replacement.Chantry Xavier1-0/+20
That is the problem mentioned by Nagy there (with suggestions for fixing it) : http://www.archlinux.org/pipermail/pacman-dev/2007-August/009082.html If a dependency conflicts with a local package and has to replace it, the PM_SYNC_TYPE_DEPEND information is lost, and the resulting install reason is wrong (the package is marked as explictly installed). Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-09-24Add two pactests with broken requiredby, and two about pacsave handling.Chantry Xavier4-0/+56
remove048 is the case mentioned there (fails in 3.0 but works in 3.1) : http://www.archlinux.org/pipermail/pacman-dev/2007-September/009294.html It's the same as remove046 with -R instead of -Rc. sync060 is a case reported this morning on IRC : a pacman -Su wanted to replace gensplashutils by gensplash, but pacman said gensplashutils was required by initscripts-gensplash, while initscripts-gensplash was not even installed. This is also fixed in the current 3.1 code though. upgrade02{4,5} are the backup handling problem I described there : http://www.archlinux.org/pipermail/pacman-dev/2007-September/009376.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-09-07Fix sync db location in pactest so new location is acceptableDan McGee1-1/+4
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-09-07Add a few pactests collected over time.Chantry Xavier6-0/+128
remove047 : Remove a package required by other packages conflict004 : a package conflicts with itself http://www.archlinux.org/pipermail/pacman-dev/2007-August/009077.html sync400 : Install package with dep that conflicts with older version of package sync401 : Ensure we choose provider already in target list http://www.archlinux.org/pipermail/pacman-dev/2007-July/009041.html sync402/sync403 (failing) : Choice between two providers http://www.archlinux.org/pipermail/pacman-dev/2007-July/008787.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-08-20Add sync1003 pactest.Nagy Gabor1-0/+26
The sync package pkg3 depends on the sync package pkg2, but pkg1 replaces pkg2. So pkg2 is added to the remove list. When checkdeps checks if pkg2 can be removed, it looks at the packages that require pkg2 (with the RequiredBy field of pkg2), but this doesn't contain pkg3 at this point. RequiredBy fields are only updated after the packages are installed. Proposed solution : checkdeps should know both the remove and upgrade list to decide properly. Reference: http://www.archlinux.org/pipermail/pacman-dev/2007-July/008972.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-08-20libalpm/add.c,trans.c : cleanup of requiredby handling.Nagy Gabor1-0/+1
This patch cleans up and fix the _alpm_trans_update_depends function and ensure that all requiredby fields are filled in case of multiple satisfiers (previously, the handling of mutliple satisfiers in that function was inconsistent). This makes a special case handling of requiredby in commit_single_pkg() obsolete, and so allows cleaning that code as well. Also fixed upgrade056 pactest because : 1) the requiredby fields were wrong, and this wouldn't happen with the fixed _alpm_trans_update_depends(). 2) this is a very unusual case anyway (and handling all corner cases combined to a broken database seems nearly impossible to achieve). References : http://www.archlinux.org/pipermail/pacman-dev/2007-July/008919.html http://www.archlinux.org/pipermail/pacman-dev/2007-July/008920.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-08-13Add two pactest for versioned conflicts.Nagy Gabor2-0/+26
A side effect of the previous commit ( ea9a756eeaca7398c0860b55f8abe2932ad195bd ) is that it's now possible to use versioned conflicts. Add two new conflict pactests for showing it. Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-07-20add conflict001 pactest.Nagy Gabor1-0/+19
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-07-20Add sync1002 pactest.Nagy Gabor1-0/+19
Reference: http://www.archlinux.org/pipermail/pacman-dev/2007-July/008971.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-07-16Remove unnecessary entries from .gitignore filesDan McGee1-3/+0
.gitignore works recursively, so we don't need Makefile and Makefile.in in all of the subdirectory .gitignore files. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-07-16Add remove046 pactest for FS#7622.Chantry Xavier1-0/+10
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-07-16Add new sync012 pactest.Chantry Xavier1-0/+20
This test installs three packages with a circular dependency, to check everything still goes fine in that case. Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-07-15Add --asdeps option to pacmanDan McGee2-0/+38
This replaces the former -D operation that was undocumented and rather hacky. It can be used with add, upgrade, or sync transactions and will affect all packages installed. Should close FS #7193. Also tell makepkg to use this new flag. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-07-15libalpm/deps.c : cleanup + little fix for resolvedeps.Nagy Gabor1-0/+20
The resolvedeps function was a bit negligent, as showed by the sync011 pactest. Reference : http://www.archlinux.org/pipermail/pacman-dev/2007-July/008782.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-07-13remove sync022 and sync023 pactest.Chantry Xavier2-44/+0
Currently the replaces flag is only used for forcing the replacement of package (eg because of a renaming) on sysupgrade operation. If the replaces flag should also be used for resolving conflicts, then it should be discussed and specified correctly first. References: http://bugs.archlinux.org/task/7415#comment17207 http://www.archlinux.org/pipermail/pacman-dev/2007-June/008553.html commit which introduced the replace flag : 4fcec8f03ff790bfb23b826eee169bc9c0b00142 Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-07-11Add new pactest that is backwards of sync022Dan McGee2-1/+23
sync022 was added here: 39b654965580bfb7dc0ab72b8c901fbf7729a568 This pactest reverses the installed package to see if it is correctly picked, in order to test some further changes to this depcheck code that currently makes sync022 fail. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-07-10add remove045 pactest.Chantry Xavier1-0/+30
Another test a bit more complicated for -Rs, to prevent regression if removedeps is changed. Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-07-10add remove044 pactest.Nagy Gabor1-0/+16
This indicates a problem in the current removedeps function (no version checking) for which Nagy proposed a fix here : http://www.archlinux.org/pipermail/pacman-dev/2007-June/008539.html But as he mentioned there, a better fix might be to use the checkdeps function in the removedeps one. Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2007-07-06Fix up pactest TODODan McGee1-1/+1
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-07-02Reduce delay in pactest when running MODIFIED testsDan McGee1-4/+2
pactest was sleeping for 3 seconds, which is unnecessary. Reduce it to 1.5 seconds and clean up the code a bit anyway. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-07-02Add mode and type checking to pactest for filesDan McGee3-16/+54
Add the ability to check the permissions and type of a file within the framework of pactest. Two new rules can be used: self.addrule("FILE_TYPE=bin/foo|file") self.addrule("FILE_MODE=bin/bar|644") TODO: add the ability to add different types of files (eg links) via the test package building framework, and add the ability to change the modes on files. Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-28Remove lockfile configuration from frontend, make it job of libalpmDan McGee2-4/+3
I previously introduced some patches to make just about every path in pacman/libalpm configurable; doing this with the lockfile seemed a bit too far and we really should just place the lockfile where it belongs- with the DB that needs locking. More details in this thread: http://archlinux.org/pipermail/pacman-dev/2007-June/008499.html Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-26Add pactest to help debug FS #7415Chantry Xavier1-0/+22
Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-26Add sync301 pactest- pacman gains new deps and should be pulled inChantry Xavier1-0/+25
Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-12Add pactest requiredby004.Nagy Gabor1-0/+20
Upgrade a package that no longer needs a depend. Reference: http://www.archlinux.org/pipermail/pacman-dev/2007-June/008503.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
2007-06-11Add new pactest remove043.Nagy Gabor1-0/+18
Remove a package required by another package. Signed-off-by: Chantry Xavier <shiningxc@gmail.com>