aboutsummaryrefslogtreecommitdiff
path: root/gnu/tests/audio.scm
blob: 7bf7d4ef1467efeb035c676e14db23ebe1de76ed (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu tests audio)
  #:use-module (gnu tests)
  #:use-module (gnu system)
  #:use-module (gnu system vm)
  #:use-module (gnu services)
  #:use-module (gnu services audio)
  #:use-module (gnu packages mpd)
  #:use-module (guix gexp)
  #:export (%test-mpd))

(define %mpd-os
  (simple-operating-system
   (service mpd-service-type)))

(define (run-mpd-test)
  "Run tests in %mpd-os, which has mpd running."
  (define os
    (marionette-operating-system
     %mpd-os
     #:imported-modules '((gnu services herd))))

  (define vm
    (virtual-machine os))

  (define test
    (with-imported-modules '((gnu build marionette))
      #~(begin
          (use-modules (srfi srfi-64)
                       (gnu build marionette))
          (define marionette
            (make-marionette (list #$vm)))

          (mkdir #$output)
          (chdir #$output)

          (test-begin "mpd")

          (test-assert "service is running"
            (marionette-eval
             '(begin
                (use-modules (gnu services herd))
                (start-service 'mpd))
             marionette))

          (test-assert "mpd listening"
            ;; Wait until mpd is actually listening before spawning 'mpc'.
            (wait-for-tcp-port 6600 marionette))

          (test-equal "mpc connect"
            0
            (marionette-eval
             '(system* #$(file-append mpd-mpc "/bin/mpc"))
             marionette))

          (test-end)
          (exit (= (test-runner-fail-count (test-runner-current)) 0)))))
  (gexp->derivation "mpd-test" test))

(define %test-mpd
  (system-test
   (name "mpd")
   (description "Test that the mpd can run and be connected to.")
   (value (run-mpd-test))))
3tag)[home-page]: Likewise. (mp3info)[source, home-page]: Likewise. (mpg123)[source]: Likewise. (libmpcdec)[source, home-page]: Likewise. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Alex Vong 2018-09-05gnu: eyed3: Update home page....* gnu/packages/mp3.scm (eyed3)[home-page]: Update to redirected HTTPS URL. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Alex Vong 2018-08-15gnu: eyeD3: Update to 0.8.7....* gnu/packages/mp3.scm (eyed3): Update to 0.8.7. Leo Famulari 2018-04-21Merge branch 'master' into core-updatesMark H Weaver 2018-04-18gnu: mpg123: Update to 1.25.10....* gnu/packages/mp3.scm (mpg123): Update to 1.25.10. Leo Famulari 2018-04-10Merge branch 'master' into core-updatesMark H Weaver 2018-04-09gnu: chromaprint: Fix typo....* gnu/packages/mp3.scm (chromaprint): Fix typo. Leo Famulari 2018-04-09gnu: eyeD3: Update to 0.8.5....* gnu/packages/mp3.scm (eyed3): Update to 0.8.5. [source]: Use pypi-uri. [propagated-inputs]: Add python-magic and python-pathlib. Leo Famulari 2018-04-04gnu: chromaprint: Build 'fpcalc'....* gnu/packages/mp3.scm (chromaprint)[arguments]: Add #:configure-flags. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Pierre Neidhardt 2018-03-16gnu: All snippets report errors using exceptions, else return #t....* gnu/packages/admin.scm, gnu/packages/algebra.scm, gnu/packages/audio.scm, gnu/packages/backup.scm, gnu/packages/base.scm, gnu/packages/bioinformatics.scm, gnu/packages/cdrom.scm, gnu/packages/chez.scm, gnu/packages/code.scm, gnu/packages/compression.scm, gnu/packages/cross-base.scm, gnu/packages/crypto.scm, gnu/packages/cups.scm, gnu/packages/databases.scm, gnu/packages/dns.scm, gnu/packages/emacs.scm, gnu/packages/emulators.scm, gnu/packages/engineering.scm, gnu/packages/enlightenment.scm, gnu/packages/fpga.scm, gnu/packages/freedesktop.scm, gnu/packages/ftp.scm, gnu/packages/games.scm, gnu/packages/gcc.scm, gnu/packages/geo.scm, gnu/packages/ghostscript.scm, gnu/packages/gl.scm, gnu/packages/glib.scm, gnu/packages/gnome.scm, gnu/packages/gnuzilla.scm, gnu/packages/graphics.scm, gnu/packages/gtk.scm, gnu/packages/guile.scm, gnu/packages/irc.scm, gnu/packages/java.scm, gnu/packages/kerberos.scm, gnu/packages/linux.scm, gnu/packages/lisp.scm, gnu/packages/lxde.scm, gnu/packages/machine-learning.scm, gnu/packages/mail.scm, gnu/packages/maths.scm, gnu/packages/messaging.scm, gnu/packages/monitoring.scm, gnu/packages/mp3.scm, gnu/packages/music.scm, gnu/packages/netpbm.scm, gnu/packages/networking.scm, gnu/packages/node.scm, gnu/packages/nvi.scm, gnu/packages/ocaml.scm, gnu/packages/pdf.scm, gnu/packages/perl.scm, gnu/packages/php.scm, gnu/packages/plotutils.scm, gnu/packages/pretty-print.scm, gnu/packages/profiling.scm, gnu/packages/pulseaudio.scm, gnu/packages/python-crypto.scm, gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/robotics.scm, gnu/packages/sawfish.scm, gnu/packages/scanner.scm, gnu/packages/scheme.scm, gnu/packages/scribus.scm, gnu/packages/sdl.scm, gnu/packages/serialization.scm, gnu/packages/shells.scm, gnu/packages/slang.scm, gnu/packages/smalltalk.scm, gnu/packages/ssh.scm, gnu/packages/sync.scm, gnu/packages/syncthing.scm, gnu/packages/tbb.scm, gnu/packages/terminals.scm, gnu/packages/texinfo.scm, gnu/packages/text-editors.scm, gnu/packages/textutils.scm, gnu/packages/tls.scm, gnu/packages/unrtf.scm, gnu/packages/version-control.scm, gnu/packages/video.scm, gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wm.scm, gnu/packages/wxwidgets.scm, gnu/packages/xdisorg.scm, gnu/packages/xorg.scm: In all snippets, report errors using exceptions, or else return #t. Mark H Weaver 2018-02-19gnu: chromaprint: Update to 1.4.3....* gnu/packages/mp3.scm (chromaprint): Update to 1.4.3. [source]: Update URI. Tobias Geerinckx-Rice 2018-01-16gnu: mpg123: Use HTTPS for home page....* gnu/packages/mp3.scm (mpg123)[home-page]: Use HTTPS. Tobias Geerinckx-Rice 2018-01-16gnu: mpg123: Update to 1.25.8....* gnu/packages/mp3.scm (mpg123): Update to 1.25.8. Tobias Geerinckx-Rice 2018-01-08gnu: lame: Remove obsolete workaround....* gnu/packages/mp3.scm (lame)[native-inputs]: Remove. Marius Bakke 2017-11-21gnu: taglib: Update to 1.11.1 and fix home page....* gnu/packages/mp3.scm (taglib)[version]: Update to 1.11.1. [arguments]: Configure with -DBUILD_SHARED_LIBS=ON. [home-page]: Change to http://taglib.org. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Pierre Langlois 2017-11-09gnu: chromaprint: Update to 1.4.2....* gnu/packages/mp3.scm (chromaprint): Update to 1.4.2. Leo Famulari