]> git.saurik.com Git - apt.git/blob - test/integration/test-apt-translation-has-no-packages
show final solution in --no-download --fix-missing mode
[apt.git] / test / integration / test-apt-translation-has-no-packages
1 #!/bin/sh
2 #
3 # Due to corruption (local or network) a user might end up with a
4 # Translation-$lang file on disk that is actually a Packages file. In this
5 # case apt used to generate invalid package versions out of the
6 # Translation-$lang file (i.e. apt-cache policy foo) would show a version
7 # coming out of a Translation file. Downloading this versions fails as
8 # there is no acquire method available for the package
9 #
10 set -e
11
12 TESTDIR="$(readlink -f "$(dirname "$0")")"
13 . "$TESTDIR/framework"
14
15 setupenvironment
16 configarchitecture "amd64"
17
18 buildsimplenativepackage 'foo' 'all' '1.0'
19 setupaptarchive
20
21 APTARCHIVE="$(readlink -f ./aptarchive)"
22
23 # corrupt the Translation-en file to look like a regular Packages file
24 rm rootdir/var/cache/apt/*.bin
25 cp "$APTARCHIVE/dists/unstable/main/binary-amd64/Packages" \
26 rootdir/var/lib/apt/lists/*Translation-en
27
28 # ensure that there is no Version for the package foo generated out of
29 # the corrupted Translation-en file
30 testsuccessequal "foo:
31 Installed: (none)
32 Candidate: 1.0
33 Version table:
34 1.0 500
35 500 file:$APTARCHIVE unstable/main all Packages" aptcache policy foo