Update META.yml
[Math-GSL.git] / lib / Math / GSL / Wavelet / Test.pm
blobf12247eb7e5638990cdd4e9d970a99e8fda56d38
1 package Math::GSL::Wavelet::Test;
2 use Math::GSL::Test qw/:all/;
3 use base q{Test::Class};
4 use Test::More;
5 use Math::GSL::Errno qw/:all/;
6 use Math::GSL::Wavelet qw/:all/;
7 use Math::GSL qw/:all/;
8 use Data::Dumper;
9 use Scalar::Util qw/blessed/;
10 use strict;
12 BEGIN{ gsl_set_error_handler_off(); }
14 sub make_fixture : Test(setup) {
15 my $self = shift;
16 $self->{wavelet} = gsl_wavelet_alloc($gsl_wavelet_daubechies, 4);
17 $self->{workspace} = gsl_wavelet_workspace_alloc(256);
20 sub teardown : Test(teardown) {
21 my $self = shift;
22 gsl_wavelet_free($self->{wavelet});
23 gsl_wavelet_workspace_free($self->{workspace});
26 sub GSL_WAVELET_ALLOC_FREE : Tests {
27 my $self = shift;
28 isa_ok( $self->{wavelet}, 'Math::GSL::Wavelet', 'gsl_wavelet_alloc' );
29 isa_ok( $self->{workspace}, 'Math::GSL::Wavelet', 'gsl_wavelet_workspace_alloc' );
32 sub GSL_WAVELET_TYPES : Tests {
34 ok( blessed $gsl_wavelet_bspline );
35 ok( blessed $gsl_wavelet_bspline_centered );
36 ok( blessed $gsl_wavelet_haar );
37 ok( blessed $gsl_wavelet_haar_centered );
38 ok( blessed $gsl_wavelet_daubechies );
39 ok( blessed $gsl_wavelet_daubechies_centered);
42 sub GSL_WAVELET_TRANSFORM_FORWARD : Tests {
43 my $self = shift;
45 my $status = gsl_wavelet_transform_forward ($self->{wavelet},[0..255],
46 1.0, 256, $self->{workspace} );
47 ok( $status == $GSL_SUCCESS , 'gsl_wavelet_transform_forward' );
50 sub GSL_WAVELET_TRANSFORM_INVERSE : Tests {
51 my $self = shift;
53 my $status = gsl_wavelet_transform_inverse ($self->{wavelet},[0..255],1.0, 256, $self->{workspace} );
54 ok( $status == $GSL_SUCCESS , 'gsl_wavelet_transform_inverse' );
57 sub GSL_WAVELET_NAME : Tests {
58 my $self = shift;
59 ok( gsl_wavelet_name($self->{wavelet}) eq 'daubechies', 'gsl_wavelet_name' );