Algorithm-Evolutionary-Fitness
view release on metacpan or search on metacpan
t/0306-any.t view on Meta::CPAN
#-*-cperl-*-
use Test::More;
use warnings;
use strict;
use lib qw( ../../lib ../lib lib ); #Just in case we are testing it in-place
use Algorithm::Evolutionary::Utils qw(random_bitstring decode_string);
use_ok( "Algorithm::Evolutionary::Fitness::Any", "using Fitness::Any OK" );
my $string = random_bitstring(64);
sub squares {
my $chrom = shift;
my @values = decode_string( $chrom, 32, -1, 1 );
return $values[0] * $values[1];
}
my $resultado = squares( $string );
my $any_eval = new Algorithm::Evolutionary::Fitness::Any \&squares;
isa_ok( $any_eval, "Algorithm::Evolutionary::Fitness::Any" );
my $chrom = { '_str' => $string };
ok( $any_eval->apply( $chrom ) == $resultado, "Seems to work" );
done_testing();
( run in 0.954 second using v1.01-cache-2.11-cpan-39bf76dae61 )