ASP4x-Linker
view release on metacpan or search on metacpan
t/010-basic/030-vars.t view on Meta::CPAN
#!/usr/bin/perl -w
use strict;
use warnings 'all';
use Test::More 'no_plan';
use ASP4::API;
my $api; BEGIN { $api = ASP4::API->new }
use_ok('ASP4x::Linker');
use_ok('Router::Generic');
NO_VARS: {
$api->ua->get('/');
my $linker = ASP4x::Linker->new();
$linker->add_widget(
name => "widgetA",
attrs => [qw/ page_number page_size sort_dir sort_col /]
);
$linker->add_widget(
name => "widgetB",
attrs => [qw/ page_number page_size sort_dir sort_col /]
);
$linker->add_widget(
name => "widgetC",
attrs => [qw/ size type color /]
);
$linker->add_widget(
name => "widgetD",
attrs => [qw/ size type color /]
);
is_deeply
$linker->vars(undef, 1), {
'widgetB.page_number' => undef,
'widgetC.type' => undef,
'widgetD.size' => undef,
'widgetA.page_size' => undef,
'widgetB.sort_dir' => undef,
'widgetC.size' => undef,
'widgetD.color' => undef,
'widgetD.type' => undef,
'widgetA.page_number' => undef,
'widgetA.sort_col' => undef,
'widgetB.sort_col' => undef,
'widgetC.color' => undef,
'widgetA.sort_dir' => undef,
'widgetB.page_size' => undef
}, "Default";
$linker->widget('widgetA')->set( page_size => 10 );
is_deeply
$linker->vars(undef, 1), {
'widgetB.page_number' => undef,
'widgetC.type' => undef,
'widgetD.size' => undef,
'widgetA.page_size' => 10,
( run in 0.487 second using v1.01-cache-2.11-cpan-39bf76dae61 )