Config-Model
view release on metacpan or search on metacpan
t/multi_warp_value.t view on Meta::CPAN
# -*- cperl -*-
use ExtUtils::testlib;
use Test::More;
use Test::Differences;
use Test::Memory::Cycle;
use Config::Model;
use Config::Model::Tester::Setup qw/init_test/;
use Storable qw/dclone/;
use strict;
use warnings;
my ($model, $trace) = init_test();
my @m1 = qw/A1 B1/;
my @m2 = qw/A2 B2 C2/;
my @m3 = qw/A3 B3/;
my @rules;
foreach my $c1 (@m1) {
foreach my $c2 (@m2) {
foreach my $c3 (@m3) {
my $test = sprintf(
'$m1 eq "%s" and $m2 eq "%s" and $m3 eq "%s"',
$c1,$c2,$c3
);
push @rules, $test, { default => "m$c1$c2$c3" };
}
}
}
# minimal set up to get things working
my $model_data = {
name => 'Master',
'element' => [
macro1 => {
type => 'leaf',
value_type => 'enum',
choice => \@m1
},
macro2 => {
type => 'leaf',
value_type => 'enum',
choice => \@m2
},
macro3 => {
type => 'leaf',
value_type => 'enum',
choice => \@m3
},
m1 => {
type => 'leaf',
value_type => 'string',
'warp' => {
follow => {
m1 => '- macro1',
m2 => ' - macro2',
m3 => '- macro3'
},
rules => \@rules
}
},
'm3' => {
type => 'leaf',
( run in 0.555 second using v1.01-cache-2.11-cpan-6aa56a78535 )