Memoize tests
[p5sagit/p5-mst-13.2.git] / lib / Memoize / t / unmemoize.t
1 #!/usr/bin/perl
2
3 BEGIN {
4     chdir 't' if -d 't';
5     @INC = '../lib';
6 }
7 use Memoize qw(memoize unmemoize);
8
9 print "1..5\n";
10
11 eval { unmemoize('f') };        # Should fail
12 print (($@ ? '' : 'not '), "ok 1\n");
13
14 { my $I = 0;
15   sub u { $I++ }
16 }
17 memoize('u');
18 my @ur = (&u, &u, &u);
19 print (("@ur" eq "0 0 0") ? "ok 2\n" : "not ok 2\n");
20
21 eval { unmemoize('u') };        # Should succeed
22 print ($@ ? "not ok 3\n" : "ok 3\n");
23
24 @ur = (&u, &u, &u);
25 print (("@ur" eq "1 2 3") ? "ok 4\n" : "not ok 4\n");
26
27 eval { unmemoize('u') };        # Should fail
28 print ($@ ? "ok 5\n" : "not ok 5\n");
29