#!/usr/bin/perl -w use strict; use Test::More 'no_plan'; use Data::Dumper; use lib '/home/uwe/cvs/perl'; use lib '/home/uwe/cvs/perl/module'; use_ok 'Parameter::Validate'; my $debug = 1; # generate new object my $pv = Parameter::Validate->new('datatype'); isa_ok($pv, 'Parameter::Validate'); can_ok($pv, qw(new clone enable disable change debug process)); # clone object my $copy = $pv->clone; isa_ok($copy, 'Parameter::Validate'); can_ok($pv, qw(new clone enable disable change debug process)); if ($debug) { # print Dumper($copy); # print "\n$pv\n$copy\n"; } # enable parameter $pv->enable(qw(mandatory min_length max_length min_number max_number)); #print Dumper($pv) if $debug; # disable parameter $pv->disable(qw(mandatory min_length max_length min_number max_number)); #print Dumper($pv) if $debug; # change parameter $pv->enable(qw(min_length max_length)); # 3 parameter form $pv->change('min_length', 'default', 123); # 2 parameter form $pv->change('max_length', {default => 25, max => 50}); #print Dumper($pv) if $debug; $copy->enable(qw(min_length max_length max_number min_number)); # 2 parameter form extended $copy->change('min_length', {default => 25, max => 50}, 'max_length', {default => 23, max => 99}); # 1 parameter form $copy->change({min_number => {default => 222}, max_number => {default => 999}}); #print Dumper($copy) if $debug; # process parameter $pv->enable('mandatory'); print Dumper($pv->process(mandatory => 1, min_length => 67));