Config-Model
view release on metacpan or search on metacpan
t/check_list.t view on Meta::CPAN
choice_list_with_default_and_upstream_default => {
type => 'check_list',
choice => [ 'A' .. 'Z' ],
default_list => [ 'A', 'C' ],
upstream_default_list => [ 'A', 'D' ],
help => { A => 'A help', E => 'E help' },
},
macro => {
type => 'leaf',
value_type => 'enum',
choice => [qw/AD AH AZ/],
},
'warped_choice_list' => {
type => 'check_list',
level => 'hidden',
warp => {
follow => '- macro',
rules => {
AD => {
choice => [ 'A' .. 'D' ],
level => 'normal',
default_list => [ 'A', 'B' ]
},
AH => {
choice => [ 'A' .. 'H' ],
level => 'normal',
},
} }
},
refer_to_list => {
type => 'check_list',
refer_to => '- my_hash'
},
warped_refer_to_list => {
type => 'check_list',
refer_to => '- warped_choice_list',
level => 'hidden',
warp => {
follow => '- macro',
rules => {
AD => {
choice => [ 'A' .. 'D' ],
level => 'normal',
},
},
},
},
refer_to_2_list => {
type => 'check_list',
refer_to => '- my_hash + - my_hash2 + - my_hash3'
},
refer_to_check_list_and_choice => {
type => 'check_list',
computed_refer_to => {
formula => '- refer_to_2_list + - $var',
variables => { var => '- indirection ' },
},
choice => [qw/A1 A2 A3/],
},
indirection => { type => 'leaf', value_type => 'string' },
dumb_list => {
type => 'list',
cargo => { type => 'leaf', value_type => 'string' }
},
refer_to_dumb_list => {
type => 'check_list',
refer_to => '- dumb_list + - my_hash',
},
'Ciphers',
{
'ordered' => '1',
'upstream_default_list' => [
'3des-cbc', 'aes128-cbc', 'aes128-ctr', 'aes192-cbc',
'aes192-ctr', 'aes256-cbc', 'aes256-ctr', 'arcfour',
'arcfour128', 'arcfour256', 'blowfish-cbc', 'cast128-cbc'
],
'type' => 'check_list',
'description' =>
'Specifies the ciphers allowed for protocol version 2 in order of preference. By default, all ciphers are allowed.',
'choice' => [
'aes128-cbc', '3des-cbc', 'blowfish-cbc', 'cast128-cbc',
'arcfour128', 'arcfour256', 'arcfour', 'aes192-cbc',
'aes256-cbc', 'aes128-ctr', 'aes192-ctr', 'aes256-ctr'
]
},
] );
my $inst = $model->instance(
root_class_name => 'Master',
instance_name => 'test1'
);
ok( $inst, "created dummy instance" );
$inst->initial_load_stop;
my $root = $inst->config_root;
my $cl = $root->fetch_element('choice_list');
# check get_choice
is_deeply( [ $cl->get_choice ], [ 'A' .. 'Z' ], "check_get_choice" );
is( $inst->needs_save, 0, "verify instance needs_save status after creation" );
ok( 1, "test get_checked_list for empty check_list" );
my @got = $cl->get_checked_list;
is( scalar @got, 0, "test nb of elt in check_list " );
is_deeply( \@got, [], "test get_checked_list after set_checked_list" );
my %expect;
my $hr = $cl->get_checked_list_as_hash;
is_deeply( $hr, \%expect, "test get_checked_list_as_hash for empty checklist" );
( run in 0.344 second using v1.01-cache-2.11-cpan-d7f47b0818f )