1 package Math::GSL::Sys::Test;
2 use base q{Test::Class};
3 use Test::More tests => 17;
4 use Math::GSL::Sys qw/:all/;
5 use Math::GSL::Test qw/:all/;
9 sub make_fixture : Test(setup) {
12 sub teardown : Test(teardown) {
16 ok( gsl_isnan(gsl_nan()), 'I like nan');
17 ok(!gsl_isnan(0.0), '0 is a number');
18 ok(!gsl_isnan(1.0), '1 is a number');
19 ok(!gsl_isnan(-1.0), '-1 is a number');
20 ok( gsl_isnan(gsl_log1p(-1)), 'ln(0)=nan');
21 ok(!gsl_isnan(gsl_posinf()), 'posinf is a number');
22 ok( gsl_isinf(gsl_posinf()),'posinf is inf' );
23 ok( gsl_isinf(gsl_neginf()),'neginf is inf' );
24 ok(!gsl_isinf(gsl_nan()),'nan is not inf' );
25 ok( gsl_isinf($GSL_POSINF), 'GSL_POSINF' );
26 ok( gsl_isinf($GSL_NEGINF), 'GSL_NEGINF' );
27 ok( gsl_finite(0.0), '0 is finite' );
28 ok( gsl_finite(1.0), '1 is finite' );
29 ok( gsl_finite(-1.0), '-1 is finite' );
30 ok(!gsl_finite(gsl_nan()), 'nan is not finite' );
31 ok(!gsl_finite(gsl_posinf()),'posinf is not finite' );
32 ok(!gsl_finite(gsl_neginf()),'neginf is not finite' );
35 Test::Class->runtests;