Use applied_attribute metarole with Moose 1.9900+
[gitmo/MooseX-SemiAffordanceAccessor.git] / t / basic.t
index 123e3e6..dc5c65f 100644 (file)
--- a/t/basic.t
+++ b/t/basic.t
@@ -1,7 +1,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 21;
+use Test::More;
 
 {
 
@@ -17,18 +17,6 @@ use Test::More tests => 21;
 
     package SAA;
 
-    use MooseX::SemiAffordanceAccessor;
-    use Moose;
-
-    has 'thing'    => ( is => 'rw' );
-    has '_private' => ( is => 'rw' );
-}
-
-{
-
-    package SAA2;
-
-    # Make sure load order doesn't matter
     use Moose;
     use MooseX::SemiAffordanceAccessor;
 
@@ -69,11 +57,6 @@ ok( SAA->can('set_thing'),    'SAA->set_thing() exists' );
 ok( SAA->can('_private'),     'SAA->_private() exists' );
 ok( SAA->can('_set_private'), 'SAA->_set_private() exists' );
 
-ok( SAA2->can('thing'),        'SAA2->thing() exists' );
-ok( SAA2->can('set_thing'),    'SAA2->set_thing() exists' );
-ok( SAA2->can('_private'),     'SAA2->_private() exists' );
-ok( SAA2->can('_set_private'), 'SAA2->_set_private() exists' );
-
 ok( SAA3->can('ro'),          'SAA3->ro exists' );
 ok( !SAA3->can('set_ro'),     'SAA3->set_ro does not exist' );
 ok( SAA3->can('thing'),       'SAA3->thing exists' );
@@ -84,3 +67,21 @@ ok( SAA3->can('set_it'),      'SAA3->set_it does exist' );
 
 ok( !SAA4->can('bare'),     'SAA4->bare does not exist' );
 ok( !SAA4->can('set_bare'), 'SAA4->set_bare does not exist' );
+
+{
+    package SAA::Role;
+    use Moose::Role;
+    use MooseX::SemiAffordanceAccessor;
+    has foo => (is => 'rw');
+}
+
+{
+    package SAA::WithRole;
+    use Moose;
+    with 'SAA::Role';
+}
+
+ok( SAA::WithRole->can('foo'), "roles work" );
+ok( SAA::WithRole->can('set_foo'), "roles work" );
+
+done_testing();