/t/list.t

http://github.com/gshank/html-formhandler · Raku · 39 lines · 27 code · 12 blank · 0 comment · 0 complexity · 50e2236bbe51b30d77b3c3afed103b93 MD5 · raw file

  1. use strict;
  2. use warnings;
  3. use Test::More;
  4. use_ok('HTML::FormHandler::Field::Repeatable');
  5. {
  6. package List::Form;
  7. use HTML::FormHandler::Moose;
  8. extends 'HTML::FormHandler';
  9. has_field 'tags' => ( type => 'Repeatable' );
  10. has_field 'tags.contains';
  11. }
  12. my $form = List::Form->new;
  13. ok( $form, 'form created' );
  14. my $params = {
  15. tags => ['linux', 'algorithms', 'loops'],
  16. };
  17. $form->process($params);
  18. ok( $form->validated, 'form validated' );
  19. is( $form->field('tags')->field('0')->value, 'linux', 'get correct value' );
  20. my $fif = {
  21. 'tags.0' => 'linux',
  22. 'tags.1' => 'algorithms',
  23. 'tags.2' => 'loops',
  24. };
  25. is_deeply( $form->fif, $fif, 'fif is correct' );
  26. is_deeply( $form->values, $params, 'values are correct' );
  27. done_testing;