summaryrefslogtreecommitdiff
path: root/t/cmop/class_is_pristine.t
diff options
context:
space:
mode:
Diffstat (limited to 't/cmop/class_is_pristine.t')
-rw-r--r--t/cmop/class_is_pristine.t23
1 files changed, 23 insertions, 0 deletions
diff --git a/t/cmop/class_is_pristine.t b/t/cmop/class_is_pristine.t
new file mode 100644
index 0000000..4ab95c0
--- /dev/null
+++ b/t/cmop/class_is_pristine.t
@@ -0,0 +1,23 @@
+use strict;
+use warnings;
+
+use Class::MOP;
+use Test::More;
+
+{
+ package Foo;
+
+ sub foo { }
+ sub bar { }
+}
+
+my $meta = Class::MOP::Class->initialize('Foo');
+ok( $meta->is_pristine, 'Foo is still pristine' );
+
+$meta->add_method( baz => sub { } );
+ok( $meta->is_pristine, 'Foo is still pristine after add_method' );
+
+$meta->add_attribute( name => 'attr', reader => 'get_attr' );
+ok( ! $meta->is_pristine, 'Foo is not pristine after add_attribute' );
+
+done_testing;