summaryrefslogtreecommitdiffstats
path: root/t/destructor.t
diff options
context:
space:
mode:
Diffstat (limited to 't/destructor.t')
-rw-r--r--t/destructor.t30
1 files changed, 30 insertions, 0 deletions
diff --git a/t/destructor.t b/t/destructor.t
new file mode 100644
index 0000000..e9a2185
--- /dev/null
+++ b/t/destructor.t
@@ -0,0 +1,30 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use Test::More;
+use Test::Moose;
+
+my ($destroyed, $demolished);
+package Foo;
+
+sub new { bless {}, shift }
+
+sub DESTROY { $destroyed++ }
+
+package Foo::Sub;
+use Moose;
+use MooseX::NonMoose;
+extends 'Foo';
+
+sub DEMOLISH { $demolished++ }
+
+package main;
+
+with_immutable {
+ ($destroyed, $demolished) = (0, 0);
+ { Foo::Sub->new }
+ is($destroyed, 1, "non-Moose destructor called");
+ is($demolished, 1, "Moose destructor called");
+} 'Foo::Sub';
+
+done_testing;