gnu: pulseaudio: Add patch for 'volume-test'; re-enable tests.

* gnu/packages/patches/pulseaudio-volume-test.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/pulseaudio.scm (pulseaudio): Use it.  Remove
  #:tests? #t.
This commit is contained in:
Ludovic Courtès 2014-01-03 16:47:19 +01:00
parent bf0018cd87
commit f5ac2352e9
3 changed files with 35 additions and 10 deletions

View File

@ -276,6 +276,7 @@ dist_patch_DATA = \
gnu/packages/patches/procps-make-3.82.patch \
gnu/packages/patches/pspp-tests.patch \
gnu/packages/patches/pulseaudio-test-timeouts.patch \
gnu/packages/patches/pulseaudio-volume-test.patch \
gnu/packages/patches/python-fix-dbm.patch \
gnu/packages/patches/qemu-make-4.0.patch \
gnu/packages/patches/qemu-multiple-smb-shares.patch \

View File

@ -0,0 +1,29 @@
Fix seemingly random failures of 'volume-test' in particular on 32-bit
machines. See <https://bugs.freedesktop.org/show_bug.cgi?id=72374> for
details.
From 27e47c72a25846e107b6e450c3a1480a2742382e Mon Sep 17 00:00:00 2001
From: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
Date: Sat, 14 Dec 2013 07:21:22 +0000
Subject: volume-test: Increase the allowed number of rouding errors
BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=72374
---
diff --git a/src/tests/volume-test.c b/src/tests/volume-test.c
index a2daf3e..1ab0b5c 100644
--- a/src/tests/volume-test.c
+++ b/src/tests/volume-test.c
@@ -138,7 +138,13 @@ START_TEST (volume_test) {
pa_log("max deviation: %lu n=%lu", (unsigned long) md, (unsigned long) mdn);
fail_unless(md <= 1);
- fail_unless(mdn <= 251);
+
+ /* mdn counts the times there were rounding errors during the test. The
+ * number of rounding errors seems to vary slightly depending on the
+ * hardware. The original limit was 251 errors, but it was increased to 253
+ * when the test was failing on Tanu's laptop.
+ * See https://bugs.freedesktop.org/show_bug.cgi?id=72374 */
+ fail_unless(mdn <= 253);
}
END_TEST

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -143,7 +143,9 @@ parse JSON formatted strings back into the C representation of JSON objects.")
(sha256
(base32
"1bndz4l8jxyq3zq128gzp3gryxl6yjs66j2y1d7yabw2n5mv7kim"))
(patches (list (search-patch "pulseaudio-test-timeouts.patch")))))
(patches (map search-patch
'("pulseaudio-test-timeouts.patch"
"pulseaudio-volume-test.patch")))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--localstatedir=/var" ;"--sysconfdir=/etc"
@ -154,14 +156,7 @@ parse JSON formatted strings back into the C representation of JSON objects.")
;; 'tests/lock-autospawn-test.c' wants to create a file
;; under ~/.config/pulse.
(setenv "HOME" (getcwd)))
%standard-phases)
,@(if (or (string=? (%current-system) "i686-linux")
(string=? (%current-system) "mips64el-linux"))
;; Work around test failure:
;; <https://bugs.freedesktop.org/show_bug.cgi?id=72374>.
'(#:tests? #f)
'())))
%standard-phases)))
(inputs
;; TODO: Add optional inputs (GTK+?).
`(;; ("sbc" ,sbc)