Your message dated Wed, 12 Feb 2014 13:57:02 +0100
with message-id <20140212125701.GB23491@crossbow>
and subject line Re: apt: failing tests in test/libapt does not cause FTBFS
has caused the Debian Bug report #703250,
regarding apt: failing tests in test/libapt does not cause FTBFS
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
703250: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=703250
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: apt
Version: 0.9.7.8
Severity: normal
Tags: patch
Currently, the APT build process will continue even if one of the
tests in test/libapt fails. On IRC (#d-apt) we concluded this was not
the desired behaviour. I am attaching a (prototype) patch for fixing
this issue.
~Niels
=== modified file 'test/libapt/assert.h'
--- test/libapt/assert.h 2012-05-20 16:58:37 +0000
+++ test/libapt/assert.h 2013-03-17 12:55:11 +0000
@@ -1,4 +1,5 @@
#include <iostream>
+#include <cstdlib>
#define equals(x,y) assertEquals(y, x, __LINE__)
#define equalsNot(x,y) assertEqualsNot(y, x, __LINE__)
@@ -6,6 +7,7 @@
template < typename X, typename Y >
void OutputAssertEqual(X expect, char const* compare, Y get, unsigned long const &line) {
std::cerr << "Test FAILED: »" << expect << "« " << compare << " »" << get << "« at line " << line << std::endl;
+ std::exit(EXIT_FAILURE);
}
template < typename X, typename Y >
=== modified file 'test/libapt/run-tests'
--- test/libapt/run-tests 2012-05-20 16:58:37 +0000
+++ test/libapt/run-tests 2013-03-17 13:12:46 +0000
@@ -7,6 +7,7 @@
echo "Running all testcases …"
LDPATH="$DIR/../../build/bin"
EXT="_libapt_test"
+EXIT_CODE=0
# detect if output is on a terminal (colorful) or better not
if expr match "$(readlink -f /proc/$$/fd/1)" '/dev/pts/[0-9]\+' > /dev/null; then
@@ -106,9 +107,15 @@
fi
echo -n "Testing with ${NAME} "
- LD_LIBRARY_PATH=${LDPATH} ${testapp} ${tmppath} && echo "$TESTOKAY" || echo "$TESTFAIL"
+ if LD_LIBRARY_PATH=${LDPATH} ${testapp} ${tmppath} ; then
+ echo "$TESTOKAY"
+ else
+ echo "$TESTFAIL"
+ EXIT_CODE=1
+ fi
if [ -n "$tmppath" -a -d "$tmppath" ]; then
rm -rf "$tmppath"
fi
done
+exit $EXIT_CODE
--- End Message ---
--- Begin Message ---
Version: 0.9.7.9~exp1
Hi,
this looks like being fixed since 0.9.7.9~exp1 with:
apt (0.9.7.9~exp1) experimental; urgency=low
[ Niels Thykier ]
* test/libapt/assert.h, test/libapt/run-tests:
- exit with status 1 on test failure
[…]
-- Michael Vogt <[email protected]> Fri, 22 Mar 2013 21:57:08 +0100
So lets close one more bug to be one step closer to the magic 800…
Best regards
David Kalnischkies
signature.asc
Description: Digital signature
--- End Message ---