On 04/03/13 06:26, Andrew Gregory wrote: > On 03/04/13 at 05:45am, Allan McRae wrote: >> On 04/03/13 05:43, Allan McRae wrote: >>> On 01/03/13 04:06, Olivier Brunel wrote: >>>> During a sysupgrade, if a package is replaced by another, and an update >>>> for the >>>> former package is found (on another repo) the replaced package would be >>>> re-installed. >>>> >>>> Signed-off-by: Olivier Brunel <[email protected]> >>>> --- >>>> I'm not really familiar with inner workings of ALPM, so this is probably >>>> not the >>>> best way to do this. >>>> > <snip> >>>> diff --git a/test/pacman/tests/sync1104.py b/test/pacman/tests/sync1104.py >>>> new file mode 100644 >>>> index 0000000..5cec98a >>>> --- /dev/null >>>> +++ b/test/pacman/tests/sync1104.py >>>> @@ -0,0 +1,18 @@ >>>> +self.description = "Don't update (reinstall) a replaced package" >>>> + >>>> +lp = pmpkg("old", "1-1") >>>> +self.addpkg2db("local", lp) >>>> + >>>> +p1 = pmpkg("new") >>>> +p1.provides = ["old"] >>>> +p1.replaces = ["old"] >>>> +self.addpkg2db("sync1", p1) >>>> + >>>> +p2 = pmpkg("old", "1-2") >>>> +self.addpkg2db("sync2", p2) >>>> + >>>> +self.args = "-Su" >>>> + >>>> +self.addrule("PACMAN_RETCODE=0") >>>> +self.addrule("!PKG_EXIST=old") >>>> +self.addrule("PKG_EXIST=new") >>>> >>> >> >> Forgot to add - awesome for adding a pactest here! > > Is the test case correct though? Other than the fact that this one uses two > sync repos, this looks identical to sync132 which has the opposite result. >
Hrm... I'd say that sync132 is wrong... If pkg1 replaces pkg2, I'd expect pkg1 to replace pkg2 whether or not pkg2 has an update. Allan Allan
