changeset 19130:90421e725f1d

codesprint: Tests for fftw * fftw.cc: Add tests and input validation for fftw.
author Mike Miller <mtmiller@ieee.org>
date Sun, 21 Sep 2014 14:38:29 -0400
parents ba1fbfa5cece
children cbd55a4e549b
files libinterp/dldfcn/fftw.cc
diffstat 1 files changed, 27 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/dldfcn/fftw.cc	Sun Sep 21 11:26:11 2014 -0700
+++ b/libinterp/dldfcn/fftw.cc	Sun Sep 21 14:38:29 2014 -0400
@@ -367,8 +367,22 @@
 %!   fftw ("planner", def_method);
 %! end_unwind_protect
 
-%!error <Invalid call to fftw> fftw ();
-%!error <Invalid call to fftw> fftw ("planner", "estimate", "measure");
+%!testif HAVE_FFTW
+%! def_dwisdom = fftw ("dwisdom");
+%! def_swisdom = fftw ("swisdom");
+%! unwind_protect
+%!   wisdom = fftw ("dwisdom");
+%!   assert (ischar (wisdom));
+%!   fftw ("dwisdom", wisdom);
+%!   assert (fftw ("dwisdom"), wisdom);
+%!   wisdom = fftw ("swisdom");
+%!   assert (ischar (wisdom));
+%!   fftw ("swisdom", wisdom);
+%!   assert (fftw ("swisdom"), wisdom);
+%! unwind_protect_cleanup
+%!   fftw ("dwisdom", def_dwisdom);
+%!   fftw ("swisdom", def_swisdom);
+%! end_unwind_protect
 
 %!testif HAVE_FFTW3_THREADS
 %! n = fftw ("threads");
@@ -378,4 +392,15 @@
 %! unwind_protect_cleanup
 %!   fftw ("threads", n);
 %! end_unwind_protect
+
+%!error <Invalid call to fftw> fftw ();
+%!error <Invalid call to fftw> fftw ("planner", "estimate", "measure");
+%!error fftw (3);
+%!error fftw ("invalid");
+%!error fftw ("planner", "invalid");
+%!error fftw ("planner", 2);
+%!error fftw ("dwisdom", "invalid");
+%!error fftw ("swisdom", "invalid");
+%!error fftw ("threads", "invalid");
+%!error fftw ("threads", -3);
  */