use strict; use warnings; use Test::More tests => 4; use HTML::FormFu; use lib 't/lib'; use HTMLFormFu::TestLib; my $form = HTML::FormFu->new; $form->load_config_file('t/constraints/required_only_on_reps.yml'); # Valid { $form->process( { foo_1 => 'a', bar_1 => '', buz_1 => 'g', moo_1 => 'j', foo_2 => '', bar_2 => 'e', buz_2 => '', moo_2 => 'k', foo_3 => '', bar_3 => '', buz_3 => 'i', moo_3 => 'l', count => 3, } ); ok( $form->submitted_and_valid ); } # Valid { $form->process( { foo_1 => 'a', bar_1 => 'd', buz_1 => 'g', moo_1 => 'j', foo_2 => 'b', bar_2 => 'e', buz_2 => 'h', moo_2 => 'k', foo_3 => 'c', bar_3 => 'f', buz_3 => 'i', moo_3 => 'l', count => 3, } ); ok( $form->submitted_and_valid ); } # Missing - Invalid { $form->process( { foo_1 => '', bar_1 => '', buz_1 => '', moo_1 => '', foo_2 => '', bar_2 => '', buz_2 => '', moo_2 => 'k', foo_3 => '', bar_3 => '', buz_3 => 'i', moo_3 => '', count => 3, } ); ok( ! $form->submitted_and_valid ); is_deeply( [ $form->has_errors ], [qw/ foo_1 buz_1 moo_1 bar_2 moo_3 /] ); }