summaryrefslogtreecommitdiffstats
path: root/t/stash-deletion.t
blob: e331234d386fa6d10597022a0fa8ab4047864606 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/usr/bin/env perl
use strict;
use warnings;
use lib 't/lib';
use Test::More;

use Package::Stash;

{
    package Gets::Deleted;
    sub bar { }
}

{
    my $delete = Package::Stash->new('Gets::Deleted');
    ok($delete->has_symbol('&bar'), "sees the method");
    {
        no strict 'refs';
        delete ${'main::Gets::'}{'Deleted::'};
    }
    ok(!$delete->has_symbol('&bar'), "method goes away when stash is deleted");
}

done_testing;