summaryrefslogtreecommitdiff
path: root/lib/Memoize/t/unmemoize.t
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Memoize/t/unmemoize.t')
-rwxr-xr-xlib/Memoize/t/unmemoize.t26
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/Memoize/t/unmemoize.t b/lib/Memoize/t/unmemoize.t
new file mode 100755
index 0000000000..82b318c645
--- /dev/null
+++ b/lib/Memoize/t/unmemoize.t
@@ -0,0 +1,26 @@
+#!/usr/bin/perl
+
+use lib '..';
+use Memoize qw(memoize unmemoize);
+
+print "1..5\n";
+
+eval { unmemoize('f') }; # Should fail
+print (($@ ? '' : 'not '), "ok 1\n");
+
+{ my $I = 0;
+ sub u { $I++ }
+}
+memoize('u');
+my @ur = (&u, &u, &u);
+print (("@ur" eq "0 0 0") ? "ok 2\n" : "not ok 2\n");
+
+eval { unmemoize('u') }; # Should succeed
+print ($@ ? "not ok 3\n" : "ok 3\n");
+
+@ur = (&u, &u, &u);
+print (("@ur" eq "1 2 3") ? "ok 4\n" : "not ok 4\n");
+
+eval { unmemoize('u') }; # Should fail
+print ($@ ? "ok 5\n" : "not ok 5\n");
+