use strict;
use Test::More tests => 16;
use CGI;
BEGIN{ use_ok("FormValidator::Simple") }
my $q = CGI->new;
$q->param( hoge => 'test' );
$q->param( hoge2 => 'test' );
$q->param( hoge3 => '' );
my $r = FormValidator::Simple->check( $q => [
hoge => [ [qw/LENGTH 10/], [qw/INT/], [qw/NOT_ASCII/] ],
hoge2 => [ [qw/LENGTH 10/] ],
hoge3 => [ 'NOT_BLANK' ],
] );
my $invalids = $r->invalid('hoge');
is(scalar(@$invalids), 3);
is($invalids->[0], 'LENGTH');
is($invalids->[1], 'INT');
is($invalids->[2], 'NOT_ASCII');
my @errors = $r->error;
is($errors[0], 'hoge');
is($errors[1], 'hoge2');
is($errors[2], 'hoge3');
my @inv = $r->invalid;
is($inv[0], 'hoge');
is($inv[1], 'hoge2');
my @mis = $r->missing;
is($mis[0], 'hoge3');
my $hoge_errors = $r->error('hoge');
is($hoge_errors->[0], 'LENGTH');
is($hoge_errors->[1], 'INT');
is($hoge_errors->[2], 'NOT_ASCII');
my $hoge_errors2 = $r->error('hoge3');
is($hoge_errors2->[0], 'NOT_BLANK');
ok($r->error( hoge3 => 'NOT_BLANK'));