mirror of
https://codeberg.org/scip/Config-General.git
synced 2025-12-16 20:21:01 +01:00
1.36 - simplified new() parameter parsing, should be now a little
bit better to understand. - added new parameter -DefaultConfig, which can hold a hashref or a string, which will be used to pre-define values of the resulting hash after parsing a config. Thanks to Mark Hampton <mark.hampton@qualis.com> for the suggestion. - added new parameter -MergeDuplicateOptions, which allows one to overwrite duplicate options, which is required, if you turn on -DefaultConfig, because otherwise a array would be created, which is probably not what you wanted. - added patch by Danial Pearce <danial@infoxchange.net.au> to Config::General::Extended::keys(), which allows to retrieve the keys of the object itself (which was not directly possible before) - added patch by Danial Pearce <danial@infoxchange.net.au> to Config::General::Extended::value(), which allows to set a value to a (perlish-) nontrue value. This was a bug. - added patch by Danial Pearce <danial@infoxchange.net.au> to Config::General::_parse_value, which fixes a bug in this method, which in prior versions caused values of "0" (zero digit) to be wiped out of the config. - added tests in t/run.t for the new default config feature. git-svn-id: http://dev.catalyst.perl.org/repos/Config-General/trunk@25 be1acefe-a474-0410-9a34-9b3221f2030f
This commit is contained in:
46
t/run.t
46
t/run.t
@@ -6,7 +6,7 @@
|
||||
#
|
||||
# Under normal circumstances every test should succeed.
|
||||
|
||||
BEGIN { $| = 1; print "1..16\n";}
|
||||
BEGIN { $| = 1; print "1..18\n";}
|
||||
use lib "blib/lib";
|
||||
use Config::General;
|
||||
use Config::General::Extended;
|
||||
@@ -129,6 +129,50 @@ else {
|
||||
|
||||
|
||||
|
||||
# testing value pre-setting using a hash
|
||||
my $conf17 = new Config::General(
|
||||
-file => "t/cfg.17",
|
||||
-DefaultConfig => { home => "/exports/home", logs => "/var/backlog" },
|
||||
-MergeDuplicateOptions => 1,
|
||||
-MergeDuplicateBlocks => 1
|
||||
);
|
||||
my %h17 = $conf17->getall();
|
||||
if ($h17{home} eq "/home/users") {
|
||||
print "ok\n";
|
||||
print STDERR " .. ok # Testing value pre-setting using a hash\n";
|
||||
}
|
||||
else {
|
||||
print "17 not ok\n";
|
||||
print STDERR "17 not ok\n";
|
||||
}
|
||||
|
||||
|
||||
# testing value pre-setting using a string
|
||||
my $conf18 = new Config::General(
|
||||
-file => "t/cfg.17", # reuse the file
|
||||
-DefaultConfig => "home = /exports/home\nlogs = /var/backlog",
|
||||
-MergeDuplicateOptions => 1,
|
||||
-MergeDuplicateBlocks => 1
|
||||
);
|
||||
my %h18 = $conf18->getall();
|
||||
if ($h18{home} eq "/home/users") {
|
||||
print "ok\n";
|
||||
print STDERR " .. ok # Testing value pre-setting using a hash\n";
|
||||
}
|
||||
else {
|
||||
print "18 not ok\n";
|
||||
print STDERR "18 not ok\n";
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# all subs here
|
||||
|
||||
sub p {
|
||||
my($cfg, $t) = @_;
|
||||
open T, "<$cfg";
|
||||
|
||||
Reference in New Issue
Block a user