Apache-Voodoo
view release on metacpan or search on metacpan
t/Application-ConfigParser.t view on Meta::CPAN
use strict;
use warnings;
use Test::More tests => 55;
use Data::Dumper;
use lib("t");
BEGIN {
# fall back to eq_or_diff if we don't have Test::Differences
if (!eval q{ use Test::Differences; 1 }) {
*eq_or_diff = \&is_deeply;
}
}
use_ok('Apache::Voodoo::Constants') || BAIL_OUT($@);
use_ok('Apache::Voodoo::Application::ConfigParser') || BAIL_OUT($@);
my $c = Apache::Voodoo::Constants->new('test_data::MyConfig');
my $loc = $INC{'Apache/Voodoo/Constants.pm'};
$loc =~ s/(blib\/)?lib\/Apache\/Voodoo\/Constants.pm//;
$c->{'PREFIX'} = $loc;
$c->{'INSTALL_PATH'} = $loc."t/";
eval {
Apache::Voodoo::Application::ConfigParser->new();
};
ok($@ =~ /ID is a required parameter/, "ID is a required param");
my $cp;
eval {
$cp = Apache::Voodoo::Application::ConfigParser->new('app_blank');
};
ok(!$@,'ID alone works');
is(ref($cp->{'constants'}),'Apache::Voodoo::Constants','No constants object creates one');
eval {
$cp = Apache::Voodoo::Application::ConfigParser->new('app_blank',$c);
};
ok(!$@,'ID and constants object works');
$cp->parse;
foreach (
['id', 'app_blank'],
['old_ns', 0]
) {
is($cp->{$_->[0]}, $_->[1],"default value for $_->[0] set correctly");
}
foreach (
['id', 'app_blank'],
['base_package', 'app_blank'],
['session_timeout', 900 ],
['upload_size_max', 5*1024*1024],
['cookie_name', 'APP_BLANK_SID'],
['https_cookies', 0,],
['logout_target', '/index'],
['devel_mode', 0],
['dynamic_loading', 0],
['halt_on_errors', 1]
) {
is($cp->{config}->{$_->[0]}, $_->[1],"default value for $_->[0] set correctly");
( run in 0.437 second using v1.01-cache-2.11-cpan-39bf76dae61 )