ASP4x-Linker
view release on metacpan or search on metacpan
t/010-basic/040-links.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( $linker->uri() => '/', "/" );
is(
$linker->uri({
widgetA => { page_number => 2 }
}) => '/?widgetA.page_number=2'
);
is(
$linker->uri({
widgetA => {
page_number => 2,
page_size => 20,
sort_col => 'name',
sort_dir => 'ASC'
}
}) => '/?widgetA.page_number=2&widgetA.page_size=20&widgetA.sort_col=name&widgetA.sort_dir=ASC'
);
};
WITH_VARS: {
$api->ua->get('/?widgetA.page_number=24&widgetB.page_size=100&widgetC.color=blue&widgetD.type=hat');
my $linker = ASP4x::Linker->new();
( run in 0.976 second using v1.01-cache-2.11-cpan-39bf76dae61 )