Skip Menu |

This queue is for tickets about the Test-Corpus-Audio-MPD CPAN distribution.

Report information
The Basics
Id: 73628
Status: rejected
Priority: 0/
Queue: Test-Corpus-Audio-MPD

People
Owner: Nobody in particular
Requestors: davidp [...] preshweb.co.uk
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: (no value)
Fixed in: (no value)



Subject: Launch on a random port/private IP rather then trying to stop mpd,, perhaps?
This module caused a failure to install Audio::MPD on a machine which had mpd already running. Test output: Building Test-Corpus-Audio-MPD # Failed test 'module loads ok' # at t/00-compile.t line 17. # got: 'could not start fake mpd: Failed to bind to '[::1]:6600': Address already in use # # Compilation failed in require at (eval 4) line 2. # BEGIN failed--compilation aborted at (eval 4) line 2. As you can see, there was already an MPD process running and listening on the default port, and it would seem that, although this module claims it will temporarily stop it, it didn't. Perhaps, instead of trying to stop any existing mpd instance, it could just pick a random port for the temporary one to listen on, and set $ENV{MPD_PORT} to the port chosen? Alternatively, perhaps write the fake config file to tell mpd to listen only on, say, 127.0.0.42 (any IP in the 127.x range) and set $ENV{MPD_HOST} appropriately?
On Fri Dec 30 18:23:10 2011, BIGPRESH wrote: Show quoted text
> This module caused a failure to install Audio::MPD on a machine which > had mpd already running.
this is by design. indeed, test-corpus-audio-mpd is used by audio-mpd and pococ-mpd, and the fact that test-corpus-audio-mpd dies with a reason is part of its api. Show quoted text
> As you can see, there was already an MPD process running and listening > on the default port, and it would seem that, although this module claims > it will temporarily stop it, it didn't.
you need to set MPD_TEST_OVERRIDE to a true value for this behaviour to be in effect. Show quoted text
> Perhaps, instead of trying to stop any existing mpd instance, it could > just pick a random port for the temporary one to listen on, and set > $ENV{MPD_PORT} to the port chosen? Alternatively, perhaps write the > fake config file to tell mpd to listen only on, say, 127.0.0.42 (any IP > in the 127.x range) and set $ENV{MPD_HOST} appropriately?
not possible, since audio-mpd and pococ-mpd are testing connection both when MPD_* vars are set, and when they aren't (default values). really, this module is a bit weird in its testing, but as all test:: modules.
No more information on this ticket, closing it as rejected.