changeset 2079:522ebb1a6eea octave-forge

Clear test functions when shared is reset.
author pkienzle
date Tue, 25 Oct 2005 02:10:59 +0000
parents 53f96d191adc
children 9c86a97c897e
files extra/testfun/test.m
diffstat 1 files changed, 6 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/extra/testfun/test.m	Tue Oct 25 02:02:16 2005 +0000
+++ b/extra/testfun/test.m	Tue Oct 25 02:10:59 2005 +0000
@@ -333,6 +333,7 @@
   __tests = __successes = 0;
   __shared = " ";
   __shared_r = " ";
+  __clear = "";
   for __i=1:length(__blockidx)-1
 
     ## extract the block
@@ -426,6 +427,9 @@
 	__success = 0;
 	__msg = [ __signal_fail, "shared variable initialization failed\n"];
       end_try_catch
+
+      ## clear shared function definitions
+      eval(__clear,""); __clear="";
       
       ## initialization code will be evaluated below
     
@@ -445,6 +449,7 @@
         try
           eval(__code); ## Define the function
           eval([__name, '= @', __temp_name, ';']);
+          __clear = [__clear, "clear ",__temp_name,";\n"];
         catch
           __success = 0;
           __msg = [ __signal_fail, "test failed: syntax error\n", __error_text__];
@@ -548,6 +553,7 @@
     __tests += __istest;
     __successes += __success*__istest;
   endfor
+  eval(__clear,"");
 
   if (nargout == 0)
     printf("PASSES %d out of %d tests\n",__successes,__tests);