HashConfig(3pm)

NAME
Lire::Test::HashConfig - Braindead Lire::Config implementation

SYNOPSIS
 use base qw/Test::Unit::TestCase/;

 use Lire::Test::HashConfig;

 sub set_up {
     my $self = $_[0];

     $self->{'old_config'} = $Lire::Config::SINGLETON;
     $Lire::Config::SINGLETON = new Lire::Test::HashConfig( {
                                                             'lr_archive' => undef,
                                                            } );
 }

DESCRIPTION
This is a simple module which is meant to be used from the set_up() method in unit tests. It can be used to create a 'fake' configuration to provide known values to the module under test.

The new() method takes an hash reference which contains the configuration variable.

The only methods of the Lire::Config interface implemented are the get() and config_spec(). The get() method which will return exactly the values provided in the new() method. Trying to get other configuration variables will throw a 'No such configuration variable' exception (as if the variable wasn't defined in the schema).

The config_spec() method will return the object associated with the '_lr_config_spec' key. It will throw an exception if this key wasn't set.

All other Lire::Config methods will throw a 'Unimplemented method' exception.

SEE ALSO
Lire::Config(3pm), Test::Unit::TestCase(3pm)

VERSION
$Id: HashConfig.pm,v 1.8 2004/06/01 19:16:53 flacoste Exp $

AUTHORS
Francis J. Lacoste <flacoste@logreport.org>

COPYRIGHT
Copyright (C) 2003 Stichting LogReport Foundation LogReport@LogReport.org

This file is part of Lire.

Lire 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 2 of the License, or (at your option) any later version.

This program 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 this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html or write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.