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.9 2006/07/23 13:16:31 vanbaal 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.