}, 'classes on div for field' );
{
package MyApp::Form;
use HTML::FormHandler::Moose;
extends 'HTML::FormHandler';
sub build_do_form_wrapper {1}
has '+name' => ( default => 'myapp_form' );
sub form_element_attr { { name => 'myapp_form' } }
has_field 'foo';
has_field 'bar';
has_field 'mox' => ( element_attr => { placeholder => 'my placeholder' } );;
sub html_attributes {
my ( $self, $field, $type, $attr ) = @_;
# $type is one of element, label, wrapper
my $class = $attr->{class} || '';
$attr->{class} = [$type, 'hfh'];
push @{$attr->{class}}, 'error' if $class =~ /error/;
if( exists $attr->{placeholder} ) {
$attr->{placeholder} = $self->_localize($attr->{placeholder});
}
return $attr;
}
}
$form = MyApp::Form->new;
$form->process( params => {} );
my $expected =
'
';
$rendered = $form->render;
is_html($rendered, $expected, 'renders correctly');
done_testing;