]> git.saurik.com Git - apt.git/blob - test/integration/test-apt-get-changelog
fix file ownership tests to work on kfreebsd
[apt.git] / test / integration / test-apt-get-changelog
1 #!/bin/sh
2 set -e
3
4 TESTDIR=$(readlink -f $(dirname $0))
5 . $TESTDIR/framework
6
7 setupenvironment
8 configarchitecture "i386"
9
10 buildsimplenativepackage 'apt' 'all' '1.0' 'stable'
11
12 setupaptarchive --no-update
13 changetowebserver
14 testsuccess aptget update
15
16 # simulate normal user with non-existent root-owned directories
17 rm -rf rootdir/var/cache/apt/archives/
18 mkdir rootdir/var/cache/apt/archives/
19 addtrap 'prefix' "chmod -f -R +w $PWD/rootdir/var/cache/apt/archives || true;"
20 chmod -R -w rootdir/var/cache/apt/archives
21
22 echo 'Apt::Changelogs::Server "http://localhost:8080/";' > rootdir/etc/apt/apt.conf.d/changelog.conf
23
24 testequal "'http://localhost:8080/pool/apt_1.0/changelog'" aptget changelog apt --print-uris
25
26 testequal "'http://localhost:8080/pool/apt_1.0/changelog'
27 'http://localhost:8080/pool/apt_1.0/changelog'" aptget changelog apt apt --print-uris
28
29 cd downloaded
30
31 testsuccess aptget changelog apt -qq
32 testfileequal '../rootdir/tmp/testsuccess.output' "$(cat ../aptarchive/pool/apt_1.0/changelog)"
33
34 testsuccess aptget changelog apt -d
35 testfileequal 'apt.changelog' "$(cat ../aptarchive/pool/apt_1.0/changelog)"
36 testfilestats 'apt.changelog' '%U:%G:%a' '=' "${TEST_DEFAULT_USER}:${TEST_DEFAULT_GROUP}:644"
37 rm -f apt.changelog ../aptarchive/pool/apt_1.0/changelog
38
39 testequal "$(cat ../aptarchive/pool/apt_1.0.changelog)" aptget changelog apt \
40 -qq -o APT::Changelogs::Server='http://not-on-the-main-server:8080/'
41
42 testsuccess aptget changelog apt -d
43 testfileequal 'apt.changelog' "$(cat ../aptarchive/pool/apt_1.0.changelog)"
44 testfilestats 'apt.changelog' '%U:%G:%a' '=' "${TEST_DEFAULT_USER}:${TEST_DEFAULT_GROUP}:644"
45 rm -f apt.changelog ../aptarchive/pool/apt_1.0.changelog
46
47 testequal 'E: changelog download failed' aptget changelog apt -qq -d -o APT::Changelogs::Server='http://not-on-the-main-server:8080/'
48 testfailure test -e apt.changelog