Refactor inclusion of system.i to one place
[Math-GSL.git] / t / Wavelet.t
blobb964d22a72f641f63af3581061849dd5780e6481
1 package Math::GSL::Wavelet::Test;
2 use base q{Test::Class};
3 use Test::More tests => 11;
4 use Math::GSL::Test     qw/:all/;
5 use Math::GSL::Errno    qw/:all/;
6 use Math::GSL::Wavelet  qw/:all/;
7 use Scalar::Util qw/blessed/;
8 use Data::Dumper;
9 use strict;
11 BEGIN{ gsl_set_error_handler_off(); }
13 sub make_fixture : Test(setup) {
14     my $self = shift;
15     $self->{wavelet}   = gsl_wavelet_alloc($gsl_wavelet_daubechies, 4);
16     $self->{workspace} = gsl_wavelet_workspace_alloc(256);
19 sub teardown : Test(teardown) {
20     my $self = shift;
21     gsl_wavelet_free($self->{wavelet});
22     gsl_wavelet_workspace_free($self->{workspace});
25 sub GSL_WAVELET_ALLOC_FREE : Tests {
26     my $self = shift;
27     isa_ok( $self->{wavelet}, 'Math::GSL::Wavelet', 'gsl_wavelet_alloc' );
28     isa_ok( $self->{workspace}, 'Math::GSL::Wavelet', 'gsl_wavelet_workspace_alloc' );
31 sub GSL_WAVELET_TYPES : Tests { 
33     ok( blessed $gsl_wavelet_bspline );
34     ok( blessed $gsl_wavelet_bspline_centered );
35     ok( blessed $gsl_wavelet_haar );
36     ok( blessed $gsl_wavelet_haar_centered );
37     ok( blessed $gsl_wavelet_daubechies );
38     ok( blessed $gsl_wavelet_daubechies_centered);
41 sub GSL_WAVELET_TRANSFORM_FORWARD : Tests { 
42     my $self = shift;
44     my $status = gsl_wavelet_transform_forward ($self->{wavelet},[0..255],
45              1.0, 256, $self->{workspace} ); 
46     ok( $status == $GSL_SUCCESS , 'gsl_wavelet_transform_forward' );
49 sub GSL_WAVELET_TRANSFORM_INVERSE : Tests { 
50     my $self = shift;
52     my $status = gsl_wavelet_transform_inverse ($self->{wavelet},[0..255],1.0, 256, $self->{workspace} ); 
53     ok( $status == $GSL_SUCCESS , 'gsl_wavelet_transform_inverse' );
56 sub GSL_WAVELET_NAME : Tests {
57     my $self = shift;
58     ok( gsl_wavelet_name($self->{wavelet}) eq 'daubechies', 'gsl_wavelet_name' );
61 Test::Class->runtests;