package Math::GSL::PowInt::Test; use base q{Test::Class}; use Test::More tests => 14; use Math::GSL::Sys qw/gsl_posinf gsl_nan/; use Math::GSL::Test qw/:all/; use Math::GSL::PowInt qw/:all/; use Math::GSL::Errno qw/:all/; use Data::Dumper; use strict; BEGIN { gsl_set_error_handler_off() } sub make_fixture : Test(setup) { } sub teardown : Test(teardown) { } sub TEST_BASIC: Tests { my %results = ( 'gsl_pow_2(3.14)' => [ (3.14)**2 ], 'gsl_pow_2(3)' => [ 3 ** 2 ], 'gsl_pow_2(0)' => [ 0 ** 2 ], 'gsl_pow_2(-1)' => [ (-1) ** 2 ], 'gsl_pow_3(4)' => [ 4 ** 3 ], 'gsl_pow_4(5)' => [ 5 ** 4 ], 'gsl_pow_5(6)' => [ 6 ** 5 ], 'gsl_pow_6(7)' => [ 7 ** 6 ], 'gsl_pow_7(8)' => [ 8 ** 7 ], 'gsl_pow_8(-4)' => [ (-4) ** 8 ], 'gsl_pow_9(4)' => [ 4 ** 9 ], 'gsl_pow_int(5,10)'=> [ 5 ** 10 ], ); verify(\%results, 'Math::GSL::PowInt'); } sub TEST_NAN_INF : Tests { my $self = shift; $main::nan = gsl_nan(); $main::posinf = gsl_posinf(); my %results = ( q{gsl_pow_2($main::nan)} => [ $main::nan ], q{gsl_pow_2($main::posinf)} => [ $main::posinf ], ); verify(\%results,'Math::GSL::PowInt'); } Test::Class->runtests;