oneconf's autopkgtest never succeeded:
https://jenkins.qa.ubuntu.com/view/Saucy/view/AutoPkgTest/job/saucy-adt-oneconf/
The "unittests" test outputs its regular output to stderr, which autopkgtest considers a failure. That can be helped with re-wiring unittest to use stdout instead, like
unittest.main(testRunner=unittest.TextTestRunner(stream=sys.stdout, verbosity=2))
or just by using 2>&1 in the test script if trying to fix all stderr output is hopeless.
But more importantly, the output also shows several failures:
https://jenkins.qa.ubuntu.com/view/Saucy/view/AutoPkgTest/job/saucy-adt-oneconf/9/ARCH=amd64,label=adt/artifact/results/dsc0t-unittests-stderr
======================================================================
ERROR: Test that the daemon is kept alive if you have activity
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/tmp.TmIuMOLM8d/dsc0-build/oneconf-0.3.3/test/test_daemon.py", line 67, in tearDown
self.dbus_service_process.terminate()
File "/usr/lib/python3.3/subprocess.py", line 1752, in terminate
self.send_signal(signal.SIGTERM)
File "/usr/lib/python3.3/subprocess.py", line 1747, in send_signal
os.kill(self.pid, sig)
nose.proxy.ProcessLookupError: [Errno 3] No such process
-------------------- >> begin captured logging << --------------------
oneconf.distributor: DEBUG: get_distro: 'Test'
--------------------- >> end captured logging << ---------------------
======================================================================
ERROR: Test that the daemon effectively stops after a timeout
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/tmp.TmIuMOLM8d/dsc0-build/oneconf-0.3.3/test/test_daemon.py", line 67, in tearDown
self.dbus_service_process.terminate()
File "/usr/lib/python3.3/subprocess.py", line 1752, in terminate
self.send_signal(signal.SIGTERM)
File "/usr/lib/python3.3/subprocess.py", line 1747, in send_signal
os.kill(self.pid, sig)
ProcessLookupError: [Errno 3] No such process
======================================================================
ERROR: Test that the daemon doesn't crash in case of invalid setup
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/tmp.TmIuMOLM8d/dsc0-build/oneconf-0.3.3/test/test_daemon.py", line 150, in test_no_daemon_crash_if_invalid_setup
oneconf = dbusconnect.DbusConnect()
File "/tmp/tmp.TmIuMOLM8d/dsc0-build/oneconf-0.3.3/oneconf/dbusconnect.py", line 150, in __init__
self.bus = dbus.SessionBus()
File "/usr/lib/python3/dist-packages/dbus/_dbus.py", line 211, in __new__
mainloop=mainloop)
File "/usr/lib/python3/dist-packages/dbus/_dbus.py", line 100, in __new__
bus = BusConnection.__new__(subclass, bus_type, mainloop=mainloop)
File "/usr/lib/python3/dist-packages/dbus/bus.py", line 122, in __new__
bus = cls._new_for_bus(address_or_type, mainloop=mainloop)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
======================================================================
FAIL: Test that the daemon is kept alive if you have activity
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/tmp.TmIuMOLM8d/dsc0-build/oneconf-0.3.3/test/test_daemon.py", line 136, in test_daemon_keep_alive_if_activity
self.assertTrue(time_stop - self.time_start > 2*MIN_TIME_WITHOUT_ACTIVITY)
nose.proxy.AssertionError: False is not true
-------------------- >> begin captured logging << --------------------
oneconf.distributor: DEBUG: get_distro: 'Test'
--------------------- >> end captured logging << ---------------------
======================================================================
FAIL: Test that the daemon effectively stops after a timeout
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/tmp.TmIuMOLM8d/dsc0-build/oneconf-0.3.3/test/test_daemon.py", line 124, in test_daemon_stop_after_timeout
self.assertTrue(time_stop - self.time_start > MIN_TIME_WITHOUT_ACTIVITY)
AssertionError: False is not true
----------------------------------------------------------------------
Ran 78 tests in 448.622s
It seems this at least needs to be run under "xvfb-run dbus-launch ...", and perhaps some other bits for the last failure.