use
strict;
use
warnings;
package
CB;
use
HTML::FormFu;
my
$form
= HTML::FormFu->new;
$form
->element(
'Text'
)->name(
'foo'
)->constraint(
'Callback'
)->callback( \
&cb
);
$form
->element(
'Text'
)->name(
'bar'
)->constraint(
'Callback'
)
->callback(
"CB::cb"
);
sub
cb {
my
$value
=
shift
;
::ok(1)
if
grep
{
$value
eq
$_
? 1 : 0 }
qw/ 1 0 a /
;
return
1;
}
package
main;
# Valid
{
$form
->process( {
foo
=> 1,
bar
=> [ 0,
'a'
,
'b'
],
} );
::ok(
$form
->valid(
'foo'
),
'foo valid'
);
::ok(
$form
->valid(
'bar'
),
'bar valid'
);
}