]> git.saurik.com Git - apt.git/blob - test/integration/test-bug-624218-Translation-file-handling
merged lp:~donkult/apt/experimental
[apt.git] / test / integration / test-bug-624218-Translation-file-handling
1 #!/bin/sh
2 set -e
3
4 TESTDIR=$(readlink -f $(dirname $0))
5 . $TESTDIR/framework
6 setupenvironment
7 configarchitecture 'i386'
8
9 buildsimplenativepackage 'coolstuff' 'all' '1.0' 'unstable'
10
11 setupaptarchive
12
13 changetowebserver
14
15 rm -rf rootdir/var/lib/apt/lists
16
17 msgtest 'No download of non-existent locals' 'with Index'
18 LC_ALL="" aptget update -o Acquire::Languages=en | grep -q -e 'Translation-[^e][^n] ' && msgfail || msgpass
19 rm -rf rootdir/var/lib/apt/lists
20
21 msgtest 'Download of existent locals' 'with Index'
22 LC_ALL="" aptget update | grep -q -e 'Translation-en ' && msgpass || msgfail
23 rm -rf rootdir/var/lib/apt/lists
24
25 msgtest 'Download of en in LC_ALL=C' 'with Index'
26 LC_ALL=C aptget update | grep -q -e 'Translation-en ' && msgpass || msgfail
27 rm -rf rootdir/var/lib/apt/lists
28
29 msgtest 'Download of en as forced language' 'with Index'
30 aptget update -o Acquire::Languages=en | grep -q -e 'Translation-en ' && msgpass || msgfail
31 rm -rf rootdir/var/lib/apt/lists
32
33 msgtest 'Download of nothing else in forced language' 'with Index'
34 aptget update -o Acquire::Languages=en | grep -q -e 'Translation-[^e][^n] ' && msgfail || msgpass
35 rm -rf rootdir/var/lib/apt/lists
36
37 msgtest 'Download no Translation- if forced language is non-existent' 'with Index'
38 aptget update -o Acquire::Languages=ast_DE | grep -q -e 'Translation-' && msgfail || msgpass
39 rm -rf rootdir/var/lib/apt/lists
40
41 msgtest 'Download of nothing if none is forced' 'with Index'
42 aptget update -o Acquire::Languages=none | grep -q -e 'Translation' && msgfail || msgpass
43 rm -rf rootdir/var/lib/apt/lists
44
45 sed -i '/i18n\/Index$/ d' $(find aptarchive -name 'Release')
46 signreleasefiles
47
48 # we have to try as not every archive includes the i18n Index in the Release file - if it has one at all
49 msgtest 'Download no Translation- if forced language is non-existent' 'with not-announced Index'
50 aptget update -o Acquire::Languages=ast_DE | grep -q -e 'Translation-' && msgfail || msgpass
51 rm -rf rootdir/var/lib/apt/lists
52
53 find aptarchive -name 'Index' -delete
54
55 msgtest 'Download of en as forced language' 'without Index'
56 aptget update -o Acquire::Languages=en | grep -q -e 'Translation-en ' && msgpass || msgfail
57 rm -rf rootdir/var/lib/apt/lists
58
59 msgtest 'Download of nothing else in forced language' 'without Index'
60 aptget update -o Acquire::Languages=en | grep -q -e 'Translation-[^e][^n] ' && msgfail || msgpass
61 rm -rf rootdir/var/lib/apt/lists
62
63 msgtest 'Download of ast_DE as forced language' 'without Index'
64 aptget update -o Acquire::Languages=ast_DE | grep -q -e 'Translation-ast_DE$' && msgpass || msgfail
65 rm -rf rootdir/var/lib/apt/lists
66
67 msgtest 'Download of nothing else in forced language' 'without Index'
68 aptget update -o Acquire::Languages=ast_DE | grep -q -e 'Translation-[^a][^s]' && msgfail || msgpass
69 rm -rf rootdir/var/lib/apt/lists
70
71 msgtest 'Download of nothing if none is forced' 'without Index'
72 aptget update -o Acquire::Languages=none | grep -q -e 'Translation' && msgfail || msgpass
73 rm -rf rootdir/var/lib/apt/lists
74
75 mkdir -p rootdir/var/lib/apt/lists
76 touch rootdir/var/lib/apt/lists/localhost:8080_dists_unstable_main_i18n_Translation-ast_DE
77
78 msgtest 'Download of builtin files' 'without Index'
79 aptget update | grep -q -e 'Translation-ast_DE' && msgpass || msgfail
80 rm -rf rootdir/var/lib/apt/lists
81
82 mkdir -p rootdir/var/lib/apt/lists
83 touch rootdir/var/lib/apt/lists/localhost:8080_dists_unstable_main_i18n_Translation-ast_DE
84
85 msgtest 'Download of nothing (even builtin) if none is forced' 'without Index'
86 aptget update -o Acquire::Languages=none | grep -q -e 'Translation' && msgfail || msgpass
87 rm -rf rootdir/var/lib/apt/lists