POE::Component::Client::MPD::Test.3pm

Langue: en

Autres versions - même langue

Version: 2009-11-08 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

NAME

POE::Component::Client::MPD::Test - automate launching of fake mdp for testing purposes

VERSION

version 0.9.6

SYNOPSIS

     use POE::Component::Client::MPD::Test; # die if error
     [...]
     stop_fake_mpd();
 
 

DESCRIPTION

General usage

This module will try to launch a new mpd server for testing purposes. This mpd server will then be used during POE::Component::Client::MPD tests.

In order to achieve this, the module will create a fake mpd.conf file with the correct pathes (ie, where you untarred the module tarball). It will then check if some mpd server is already running, and stop it if the MPD_TEST_OVERRIDE environment variable is true (die otherwise). Last it will run the test mpd with its newly created configuration file.

Everything described above is done automatically when the module is "use"-d.

Once the tests are run, the mpd server will be shut down, and the original one will be relaunched (if there was one).

Note that the test mpd will listen to "localhost", so you are on the safe side. Note also that the test suite comes with its own ogg files - and yes, we can redistribute them since it's only some random voice recordings :-)

Advanced usage

In case you want more control on the test mpd server, you can use the following public methods:
start_test_mpd()
Start the fake mpd, and die if there were any error.
stop_test_mpd()
Kill the fake mpd.
customize_test_mpd_configuration( [$port] )
Create a fake mpd configuration file, based on the file mpd.conf.template located in t/mpd-test. The string PWD will be replaced by the real path - ie, where the tarball has been untarred. The string PORT will be replaced by $port if specified, 6600 otherwise (MPD default).

This might be useful when trying to test connections with mpd server.

AUTHOR

   Jerome Quelin
 
 
This software is copyright (c) 2007 by Jerome Quelin.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.