X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Moose-t-failing%2F400_moose_util%2F006_create_alias.t;fp=Moose-t-failing%2F400_moose_util%2F006_create_alias.t;h=7f0db4638e5b564ddbca7b09b76a046e7f1b7202;hb=c47cf41554416ee1828eab17d31342a53aaa0839;hp=0000000000000000000000000000000000000000;hpb=9864f0e4ba233c5f30ad6dc7c484ced43d883d27;p=gitmo%2FMouse.git diff --git a/Moose-t-failing/400_moose_util/006_create_alias.t b/Moose-t-failing/400_moose_util/006_create_alias.t new file mode 100644 index 0000000..7f0db46 --- /dev/null +++ b/Moose-t-failing/400_moose_util/006_create_alias.t @@ -0,0 +1,108 @@ +#!/usr/bin/perl +# 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 strict; +use warnings; + +use Test::More; +$TODO = q{Mouse is not yet completed}; +use Test::Mouse qw(does_ok); + +BEGIN { + package Foo::Meta::Role; + use Mouse::Role; + Mouse::Util::meta_class_alias + FooRole => 'Foo::Meta::Role'; + + package Foo::Meta::Class; + use Mouse; + extends 'Mouse::Meta::Class'; + with 'Foo::Meta::Role'; + Mouse::Util::meta_class_alias + FooClass => 'Foo::Meta::Class'; + + package Foo::Meta::Role::Attribute; + use Mouse::Role; + Mouse::Util::meta_attribute_alias + FooAttrRole => 'Foo::Meta::Role::Attribute'; + + package Foo::Meta::Attribute; + use Mouse; + extends 'Mouse::Meta::Attribute'; + with 'Foo::Meta::Role::Attribute'; + Mouse::Util::meta_attribute_alias + FooAttrClass => 'Foo::Meta::Attribute'; + + package Bar::Meta::Role; + use Mouse::Role; + Mouse::Util::meta_class_alias 'BarRole'; + + package Bar::Meta::Class; + use Mouse; + extends 'Mouse::Meta::Class'; + with 'Bar::Meta::Role'; + Mouse::Util::meta_class_alias 'BarClass'; + + package Bar::Meta::Role::Attribute; + use Mouse::Role; + Mouse::Util::meta_attribute_alias 'BarAttrRole'; + + package Bar::Meta::Attribute; + use Mouse; + extends 'Mouse::Meta::Attribute'; + with 'Bar::Meta::Role::Attribute'; + Mouse::Util::meta_attribute_alias 'BarAttrClass'; +} + +package FooWithMetaClass; +use Mouse -metaclass => 'FooClass'; + +has bar => ( + metaclass => 'FooAttrClass', + is => 'ro', +); + + +package FooWithMetaTrait; +use Mouse -traits => 'FooRole'; + +has bar => ( + traits => [qw(FooAttrRole)], + is => 'ro', +); + +package BarWithMetaClass; +use Mouse -metaclass => 'BarClass'; + +has bar => ( + metaclass => 'BarAttrClass', + is => 'ro', +); + + +package BarWithMetaTrait; +use Mouse -traits => 'BarRole'; + +has bar => ( + traits => [qw(BarAttrRole)], + is => 'ro', +); + +package main; +my $fwmc_meta = FooWithMetaClass->meta; +my $fwmt_meta = FooWithMetaTrait->meta; +isa_ok($fwmc_meta, 'Foo::Meta::Class'); +isa_ok($fwmc_meta->get_attribute('bar'), 'Foo::Meta::Attribute'); +does_ok($fwmt_meta, 'Foo::Meta::Role'); +does_ok($fwmt_meta->get_attribute('bar'), 'Foo::Meta::Role::Attribute'); + +my $bwmc_meta = BarWithMetaClass->meta; +my $bwmt_meta = BarWithMetaTrait->meta; +isa_ok($bwmc_meta, 'Bar::Meta::Class'); +isa_ok($bwmc_meta->get_attribute('bar'), 'Bar::Meta::Attribute'); +does_ok($bwmt_meta, 'Bar::Meta::Role'); +does_ok($bwmt_meta->get_attribute('bar'), 'Bar::Meta::Role::Attribute'); + +done_testing;