use utf8;
use Test::More;
use Data::Dumper;
use FindBin;
{
package TestClass::FieldsAccess;
use Validation::Class;
fld name => {required => 1};
package main;
my $class = "TestClass::FieldsAccess";
my $self = $class->new(name => undef);
my $proto = $self->proto;
my $name = $proto->fields->name;
ok "Validation::Class::Field" eq ref $name,
"$class has field name which is a V::C::Field object";
eval { $proto->fields->something };
ok $@, "error occurred trying to execute a method named something, which doesn't exist, as expected";
ok $name->has('name'), "name field has name method";
ok $name->has('value'), "name field has value method";
}
done_testing;