diff options
author | Michael Vogt <mvo@ubuntu.com> | 2014-06-10 19:00:41 +0200 |
---|---|---|
committer | Michael Vogt <mvo@ubuntu.com> | 2014-06-10 19:00:41 +0200 |
commit | afaeea148553439684e6091f282bf5a4ee5c00d6 (patch) | |
tree | 9de4549d414a78bed64a2a20f7941695c7d6c4df /test/integration/test-apt-translation-has-no-packages | |
parent | b4278cc96fa0184b4f522e2bcfe82bd8eba93595 (diff) | |
parent | eea0f3a6197dba565c5df349ed06c0a70b49b77f (diff) |
Merge branch 'debian/sid' into ubuntu/master1.0.4ubuntu1
Conflicts:
configure.ac
debian/changelog
Diffstat (limited to 'test/integration/test-apt-translation-has-no-packages')
-rwxr-xr-x | test/integration/test-apt-translation-has-no-packages | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/test/integration/test-apt-translation-has-no-packages b/test/integration/test-apt-translation-has-no-packages new file mode 100755 index 000000000..bb2353a33 --- /dev/null +++ b/test/integration/test-apt-translation-has-no-packages @@ -0,0 +1,41 @@ +#!/bin/sh +# +# Due to corruption (local or network) a user might end up with a +# Translation-$lang file on disk that is actually a Packages file. In this +# case apt used to generate invalid package versions out of the +# Translation-$lang file (i.e. apt-cache policy foo) would show a version +# comming out of a Translation file. Downloading this versions fails as +# there is no acquire method available for the package +# +set -e + +TESTDIR=$(readlink -f $(dirname $0)) +. $TESTDIR/framework + +setupenvironment +configarchitecture "amd64" + +if [ ! -x ${BUILDDIRECTORY}/apt ]; then + msgmsg "No ${BUILDDIRECTORY}/apt" + msgskip + exit 0 +fi + +buildsimplenativepackage 'foo' 'all' '1.0' +setupaptarchive + +APTARCHIVE=$(readlink -f ./aptarchive) + +# corrupt the Translation-en file to look like a regular Packages file +rm rootdir/var/cache/apt/*.bin +cp $APTARCHIVE/dists/unstable/main/binary-amd64/Packages \ + rootdir/var/lib/apt/lists/*Translation-en + +# ensure that there is no Version for the package foo generated out of +# the corrupted Translation-en file +testequal "foo: + Installed: (none) + Candidate: 1.0 + Version table: + 1.0 0 + 500 file:$APTARCHIVE/ unstable/main amd64 Packages" aptcache policy foo |