Browse Source

tavis: run testcases a second time, but as root

Git-Dch: Ignore
tags/debian/1.1.exp12
David Kalnischkies 5 years ago
parent
commit
b2640c0afe
3 changed files with 24 additions and 16 deletions
  1. +10
    -4
      .travis.yml
  2. +1
    -1
      test/integration/test-apt-get-install-deb
  3. +13
    -11
      test/integration/test-ubuntu-bug-346386-apt-get-update-paywall

+ 10
- 4
.travis.yml View File

@@ -1,11 +1,17 @@
language: cpp
sudo: required
before_install:
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
- sudo apt-get update -q
- sudo apt-get update -qq
install:
- sudo ./prepare-release travis-ci
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
- sudo apt-get -qq update
- sudo apt-get -qq install g++-4.8
- export CXX=g++-4.8
script: make && make test && test/integration/run-tests
- sudo apt-get -qq -y install gcc-4.8 g++-4.8
- export CC=gcc-4.8 CXX=g++-4.8
script:
- make
- make test
- ./test/integration/run-tests
- sudo adduser --force-badname --system --home /nonexistent --no-create-home --quiet _apt || true
- sudo ./test/integration/run-tests

+ 1
- 1
test/integration/test-apt-get-install-deb View File

@@ -46,7 +46,7 @@ E: Unable to correct problems, you have held broken packages." aptget install ./

testdpkgnotinstalled 'foo'
testsuccess aptget install ./incoming/foo_1.0_i386.deb -o Debug::pkgCacheGen=1
testdpkginstalled 'foo'
testdpkginstalled 'foo:i386'

testsuccessequal "Reading package lists...
Building dependency tree...


+ 13
- 11
test/integration/test-ubuntu-bug-346386-apt-get-update-paywall View File

@@ -17,9 +17,9 @@ changetowebserver -o 'aptwebserver::overwrite::.*::filename=/knights'

msgtest 'Acquire test file from the webserver to check' 'overwrite'
if downloadfile http://localhost:8080/holygrail ./knights-talking >/dev/null; then
msgpass
msgpass
else
msgfail
msgfail
fi

testfileequal knights-talking 'ni ni ni'
@@ -39,27 +39,29 @@ rm -rf rootdir/var/lib/apt/lists
testfailure aptget update
testsuccess grep '^W:.*Clearsigned file .*NOSPLIT.*' rootdir/tmp/testfailure.output

ensure_n_canary_strings_in_dir $LISTS 'ni ni ni' 0
ensure_n_canary_strings_in_dir "$LISTS" 'ni ni ni' 0
testequal 'lock
partial' ls $LISTS
partial' ls "$LISTS"

# and again with pre-existing files with "valid data" which should remain
for f in Release Release.gpg main_binary-amd64_Packages main_source_Sources; do
echo 'peng neee-wom' > $LISTS/localhost:8080_dists_stable_${f}
echo 'peng neee-wom' > "$LISTS/localhost:8080_dists_stable_${f}"
chmod 644 "$LISTS/localhost:8080_dists_stable_${f}"
done

testfailure aptget update
testsuccess grep '^W:.*Clearsigned file .*NOSPLIT.*' rootdir/tmp/testfailure.output

ensure_n_canary_strings_in_dir $LISTS 'peng neee-wom' 4
ensure_n_canary_strings_in_dir $LISTS 'ni ni ni' 0
ensure_n_canary_strings_in_dir "$LISTS" 'peng neee-wom' 4
ensure_n_canary_strings_in_dir "$LISTS" 'ni ni ni' 0

# and now with a pre-existing InRelease file
echo 'peng neee-wom' > $LISTS/localhost:8080_dists_stable_InRelease
rm -f $LISTS/localhost:8080_dists_stable_Release $LISTS/localhost:8080_dists_stable_Release.gpg
echo 'peng neee-wom' > "$LISTS/localhost:8080_dists_stable_InRelease"
chmod 644 "$LISTS/localhost:8080_dists_stable_InRelease"
rm -f "$LISTS/localhost:8080_dists_stable_Release" "$LISTS/localhost:8080_dists_stable_Release.gpg"
msgtest 'excpected failure of' 'apt-get update'
testfailure aptget update
testsuccess grep '^W:.*Clearsigned file .*NOSPLIT.*' rootdir/tmp/testfailure.output

ensure_n_canary_strings_in_dir $LISTS 'peng neee-wom' 3
ensure_n_canary_strings_in_dir $LISTS 'ni ni ni' 0
ensure_n_canary_strings_in_dir "$LISTS" 'peng neee-wom' 3
ensure_n_canary_strings_in_dir "$LISTS" 'ni ni ni' 0

Loading…
Cancel
Save