+++ /dev/null
-use strict;
-# This is automatically generated by author/import-moose-test.pl.
-# DO NOT EDIT THIS FILE. ANY CHANGES WILL BE LOST!!!
-use t::lib::MooseCompat;
-use warnings;
-
-use Test::More;
-$TODO = q{Mouse is not yet completed};
-use Test::Mouse;
-
-{
- package Role::A;
- use Mouse::Role
-}
-
-{
- package Role::B;
- use Mouse::Role
-}
-
-{
- package Foo;
- use Mouse;
-}
-
-{
- package Bar;
- use Mouse;
-
- with 'Role::A';
-}
-
-{
- package Baz;
- use Mouse;
-
- with qw( Role::A Role::B );
-}
-
-{
- package Foo::Child;
- use Mouse;
-
- extends 'Foo';
-}
-
-{
- package Bar::Child;
- use Mouse;
-
- extends 'Bar';
-}
-
-{
- package Baz::Child;
- use Mouse;
-
- extends 'Baz';
-}
-
-with_immutable {
-
- for my $thing ( 'Foo', Foo->new, 'Foo::Child', Foo::Child->new ) {
- my $name = ref $thing ? (ref $thing) . ' object' : "$thing class";
- $name .= ' (immutable)' if $thing->meta->is_immutable;
-
- ok(
- !$thing->does('Role::A'),
- "$name does not do Role::A"
- );
- ok(
- !$thing->does('Role::B'),
- "$name does not do Role::B"
- );
-
- ok(
- !$thing->does( Role::A->meta ),
- "$name does not do Role::A (passed as object)"
- );
- ok(
- !$thing->does( Role::B->meta ),
- "$name does not do Role::B (passed as object)"
- );
-
- ok(
- !$thing->DOES('Role::A'),
- "$name does not do Role::A (using DOES)"
- );
- ok(
- !$thing->DOES('Role::B'),
- "$name does not do Role::B (using DOES)"
- );
- }
-
- for my $thing ( 'Bar', Bar->new, 'Bar::Child', Bar::Child->new ) {
- my $name = ref $thing ? (ref $thing) . ' object' : "$thing class";
- $name .= ' (immutable)' if $thing->meta->is_immutable;
-
- ok(
- $thing->does('Role::A'),
- "$name does Role::A"
- );
- ok(
- !$thing->does('Role::B'),
- "$name does not do Role::B"
- );
-
- ok(
- $thing->does( Role::A->meta ),
- "$name does Role::A (passed as object)"
- );
- ok(
- !$thing->does( Role::B->meta ),
- "$name does not do Role::B (passed as object)"
- );
-
- ok(
- $thing->DOES('Role::A'),
- "$name does Role::A (using DOES)"
- );
- ok(
- !$thing->DOES('Role::B'),
- "$name does not do Role::B (using DOES)"
- );
- }
-
- for my $thing ( 'Baz', Baz->new, 'Baz::Child', Baz::Child->new ) {
- my $name = ref $thing ? (ref $thing) . ' object' : "$thing class";
- $name .= ' (immutable)' if $thing->meta->is_immutable;
-
- ok(
- $thing->does('Role::A'),
- "$name does Role::A"
- );
- ok(
- $thing->does('Role::B'),
- "$name does Role::B"
- );
-
- ok(
- $thing->does( Role::A->meta ),
- "$name does Role::A (passed as object)"
- );
- ok(
- $thing->does( Role::B->meta ),
- "$name does Role::B (passed as object)"
- );
-
- ok(
- $thing->DOES('Role::A'),
- "$name does Role::A (using DOES)"
- );
- ok(
- $thing->DOES('Role::B'),
- "$name does Role::B (using DOES)"
- );
- }
-
-}
-qw( Foo Bar Baz Foo::Child Bar::Child Baz::Child );
-
-done_testing;