Config-Model
view release on metacpan or search on metacpan
t/hash_id_of_values.t view on Meta::CPAN
# -*- cperl -*-
use ExtUtils::testlib;
use Test::More ;
use Test::Memory::Cycle;
use Config::Model;
use Config::Model::Tester::Setup qw/init_test/;
use Test::Exception;
use Test::Differences;
use Test::Log::Log4perl;
use strict;
use warnings;
my ($model, $trace) = init_test();
# new parameter style
my @element = (
# Value constructor args are passed in their specific array ref
cargo => {
type => 'leaf',
value_type => 'string',
class => 'Config::Model::Value',
},
);
# minimal set up to get things working
$model->create_config_class(
name => "Master",
element => [
plain_hash => {
type => 'hash',
index_type => 'integer',
cargo => {
type => 'leaf',
value_type => 'string'
},
},
bounded_hash => {
type => 'hash',
class => 'Config::Model::HashId', # default
index_type => 'integer',
write_empty_value => 1,
# hash boundaries
min => 1,
max => 123,
max_nb => 2,
@element
},
hash_with_auto_created_id => {
type => 'hash',
index_type => 'string',
auto_create_keys => ['yada'],
@element
},
hash_with_several_auto_created_id => {
type => 'hash',
index_type => 'string',
auto_create_keys => [qw/x y z/],
@element
},
[qw/hash_with_default_id hash_with_default_id_2/] => {
type => 'hash',
index_type => 'string',
default_keys => ['yada'],
@element
},
( run in 2.340 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )