use strict; use warnings; use Test::More tests => 6; use HTML::FormFu; my $form = HTML::FormFu->new; $form->element('Text')->name('foo')->filter('HTMLScrubber'); $form->element('Text')->name('bar')->filter('HTMLScrubber')->allow( ['b'] ); $form->element('Text')->name('fum')->filter('HTMLScrubber')->rules([ '*' => 0, p => { '*' => 0 }, a => { href => 1, '*' => 0 } ]); my $original_foo = "

message

"; my $filtered_foo = "message"; my $original_bar = "

message

"; my $filtered_bar = "message"; my $original_fum = "

messagetext

"; my $filtered_fum = "

messagetext

"; $form->process( { foo => $original_foo, bar => $original_bar, fum => $original_fum, } ); # foo is quoted is( $form->param('foo'), $filtered_foo, 'foo filtered' ); is( $form->params->{foo}, $filtered_foo, 'foo filtered' ); # bar is filtered is( $form->param('bar'), $filtered_bar, 'bar filtered' ); is( $form->params->{bar}, $filtered_bar, 'bar filtered' ); # fum is filtered is( $form->param('fum'), $filtered_fum, 'fum filtered' ); is( $form->params->{fum}, $filtered_fum, 'fum filtered' );