Package: coreutils
Version: 8.13-3.2
Tags: patch
User: [email protected]
Usertags: origin-ubuntu ubuntu-patch raring
Hello,
in Ubuntu we added an autopkgtest [1] test to coreutils to run a
subset of the upstream tests against the installed package.
autopkgtest/DEP-8 have been a Debian standard for quite some time, but
now folks are discussing to actually deploy the tests on Debian as
well [2] so that they eventually get run on Debian's Jenkins [3].
So please consider adding the tests to Debian as well. These are
mission-critical infrastructure in Ubuntu now, so we'll ensure that
they keep working (and sending patches as appropriate).
Thanks for considering,
Martin
[1] http://dep.debian.net/deps/dep8/
[2]
http://lists.alioth.debian.org/pipermail/autopkgtest-devel/2012-November/000256.html
[3] http://jenkins.debian.net/
--
Martin Pitt | http://www.piware.de
Ubuntu Developer (www.ubuntu.com) | Debian Developer (www.debian.org)
* Add debian/tests/: autopkgtest for running a subset of the upstream tests
against the system installed binaries. The other upstream tests need a
built tree, and are run during package build. (LP: #1073445)
=== modified file 'debian/control'
--- debian/control 2012-09-10 14:07:50 +0000
+++ debian/control 2012-10-30 22:00:06 +0000
@@ -5,6 +5,7 @@
Priority: required
Standards-Version: 3.9.2.0
Build-Depends: gettext:any (>= 0.10.37), debhelper (>= 5.0.0), dh-buildinfo,
texinfo (>= 4.2), groff, dpatch, libattr1-dev [linux-any], libacl1-dev
[linux-any], libselinux1-dev (>= 1.32) [linux-any], gperf, bison
+XS-Testsuite: autopkgtest
Package: coreutils
Architecture: any
=== added directory 'debian/tests'
=== added file 'debian/tests/control'
--- debian/tests/control 1970-01-01 00:00:00 +0000
+++ debian/tests/control 2012-10-30 22:03:22 +0000
@@ -0,0 +1,2 @@
+Tests: upstream
+Depends: coreutils
=== added file 'debian/tests/upstream'
--- debian/tests/upstream 1970-01-01 00:00:00 +0000
+++ debian/tests/upstream 2012-11-08 05:01:17 +0000
@@ -0,0 +1,260 @@
+#!/bin/sh
+# Run a subset of the upstream tests which work in an unbuilt tree against the
+# system installed package; these have been selected with
+#
+# for t in */*; do if env LANG= $t >/dev/null 2>&1; then echo $t; fi; done
+set -e
+
+# ensure that we do not stumble over translations
+unset LANG
+unset LANGUAGE
+export LC_ALL=C
+fails=0
+cd tests
+
+for test in \
+ chmod/c-option \
+ chmod/equals \
+ chmod/equal-x \
+ chmod/inaccessible \
+ chmod/octal \
+ chmod/setgid \
+ chmod/silent \
+ chmod/thru-dangling \
+ chmod/umask-x \
+ chmod/usage \
+ chown/deref \
+ chown/separator \
+ cp/abuse \
+ cp/backup-1 \
+ cp/backup-dir \
+ cp/backup-is-src \
+ cp/cp-deref \
+ cp/cp-HL \
+ cp/cp-i \
+ cp/cp-mv-backup \
+ cp/cp-parents \
+ cp/deref-slink \
+ cp/dir-rm-dest \
+ cp/dir-slash \
+ cp/dir-vs-file \
+ cp/existing-perm-dir \
+ cp/file-perm-race \
+ cp/into-self \
+ cp/link \
+ cp/link-no-deref \
+ cp/link-preserve \
+ cp/link-symlink \
+ cp/no-deref-link1 \
+ cp/no-deref-link2 \
+ cp/no-deref-link3 \
+ cp/parent-perm \
+ cp/parent-perm-race \
+ cp/preserve-2 \
+ cp/preserve-link \
+ cp/proc-short-read \
+ cp/proc-zero-len \
+ cp/reflink-perm \
+ cp/r-vs-symlink \
+ cp/same-file \
+ cp/slink-2-slink \
+ cp/special-f \
+ cp/src-base-dot \
+ cp/symlink-slash \
+ cp/thru-dangling \
+ dd/misc \
+ dd/nocache \
+ dd/not-rewound \
+ dd/reblock \
+ dd/skip-seek2 \
+ dd/stderr \
+ dd/unblock-sync \
+ du/basic \
+ du/deref \
+ du/deref-args \
+ du/exclude \
+ du/files0-from-dir \
+ du/hard-link \
+ du/long-sloop \
+ du/max-depth \
+ du/no-deref \
+ du/one-file-system \
+ du/restore-wd \
+ du/slash \
+ du/slink \
+ du/trailing-slash \
+ du/two-args \
+ install/trap \
+ ln/backup-1 \
+ ln/hard-backup \
+ ln/hard-to-sym \
+ ln/sf-1 \
+ ln/slash-decorated-nonexistent-dest \
+ ln/target-1 \
+ ls/abmon-align \
+ ls/color-clear-to-eol \
+ ls/color-dtype-dir \
+ ls/color-norm \
+ ls/dangle \
+ ls/dired \
+ ls/file-type \
+ ls/follow-slink \
+ ls/infloop \
+ ls/inode \
+ ls/m-option \
+ ls/multihardlink \
+ ls/no-arg \
+ ls/proc-selinux-segfault \
+ ls/readdir-mountpoint-inode \
+ ls/recursive \
+ ls/rt-1 \
+ ls/stat-dtype \
+ ls/stat-free-symlinks \
+ ls/stat-vs-dirent \
+ ls/symlink-slash \
+ ls/x-option \
+ misc/cat-proc \
+ misc/chcon-fail \
+ misc/chroot-fail \
+ misc/csplit \
+ misc/csplit-1000 \
+ misc/date-sec \
+ misc/df \
+ misc/df-P \
+ misc/env-null \
+ misc/false-status \
+ misc/fmt-long-line \
+ misc/head-c \
+ misc/head-pos \
+ misc/id-groups \
+ misc/invalid-opt \
+ misc/ls-time \
+ misc/md5sum-parallel \
+ misc/mknod \
+ misc/nice \
+ misc/nice-fail \
+ misc/nl \
+ misc/nproc-avail \
+ misc/nproc-positive \
+ misc/od-float \
+ misc/od-multiple-t \
+ misc/od-N \
+ misc/od-x8 \
+ misc/printenv \
+ misc/printf-hex \
+ misc/ptx-overrun \
+ misc/pwd-option \
+ misc/runcon-no-reorder \
+ misc/shred-exact \
+ misc/shred-passes \
+ misc/sort-compress \
+ misc/sort-debug-keys \
+ misc/sort-debug-warn \
+ misc/sort-month \
+ misc/sort-rand \
+ misc/sort-unique \
+ misc/sort-version \
+ misc/stat-fmt \
+ misc/stat-hyphen \
+ misc/stat-mount \
+ misc/stat-nanoseconds \
+ misc/stat-slash \
+ misc/sum-sysv \
+ misc/tee \
+ misc/tee-dash \
+ misc/timeout \
+ misc/timeout-group \
+ misc/tr-case-class \
+ misc/truncate-dangling-symlink \
+ misc/truncate-dir-fail \
+ misc/truncate-fifo \
+ misc/truncate-no-create-missing \
+ misc/truncate-parameters \
+ misc/truncate-relative \
+ misc/uniq-perf \
+ misc/wc-files0 \
+ misc/wc-parallel \
+ mkdir/p-1 \
+ mkdir/p-2 \
+ mkdir/parents \
+ mkdir/perm \
+ mkdir/p-slashdot \
+ mkdir/p-thru-slink \
+ mkdir/p-v \
+ mkdir/special-1 \
+ mkdir/t-slash \
+ mv/atomic \
+ mv/atomic2 \
+ mv/backup-dir \
+ mv/diag \
+ mv/dir2dir \
+ mv/dir-file \
+ mv/force \
+ mv/hard-4 \
+ mv/hard-verbose \
+ mv/i-4 \
+ mv/i-5 \
+ mv/i-link-no \
+ mv/into-self \
+ mv/into-self-3 \
+ mv/into-self-4 \
+ mv/mv-n \
+ mv/no-target-dir \
+ mv/trailing-slash \
+ mv/update \
+ readlink/rl-1 \
+ rm/dangling-symlink \
+ rm/deep-1 \
+ rmdir/fail-perm \
+ rmdir/ignore \
+ rm/dir-nonrecur \
+ rm/dir-no-w \
+ rmdir/t-slash \
+ rm/dot-rel \
+ rm/f-1 \
+ rm/i-1 \
+ rm/i-no-r \
+ rm/interactive-always \
+ rm/interactive-once \
+ rm/ir-1 \
+ rm/one-file-system2 \
+ rm/r-1 \
+ rm/r-2 \
+ rm/r-3 \
+ rm/r-4 \
+ rm/readdir-bug \
+ rm/sunos-1 \
+ rm/v-slash \
+ split/b-chunk \
+ split/filter \
+ split/l-chunk \
+ split/lines \
+ split/suffix-length \
+ tail-2/follow-stdin \
+ tail-2/F-vs-rename \
+ tail-2/infloop-1 \
+ tail-2/inotify-hash-abuse \
+ tail-2/inotify-hash-abuse2 \
+ tail-2/pipe-f \
+ tail-2/pipe-f2 \
+ tail-2/proc-ksyms \
+ tail-2/start-middle \
+ tail-2/tail-n0f \
+ tail-2/wait \
+ touch/60-seconds \
+ touch/dangling-symlink \
+ touch/dir-1 \
+ touch/empty-file \
+ touch/fifo \
+ touch/no-create-missing \
+ touch/no-rights \
+ touch/obsolescent \
+ touch/relative \
+ touch/trailing-slash \
+; do
+ echo "$test"
+ OUT=$($test 2>&1) || { fails=$((fails+1)); echo "FAIL:"; echo "$OUT"; }
+done
+
+echo $fails tests failed
+exit $fails