r36420 - in /trunk/libmoosex-methodattributes-perl: ./ debian/ lib/MooseX/ lib/MooseX/MethodAttributes/ lib/MooseX/MethodAttributes/Role/ lib/MooseX/MethodAttributes/Role/AttrContainer/ lib/MooseX/MethodAttributes/Role/Meta/ lib/MooseX/MethodAttributes/Role/Meta/Method/ t/ t/lib/
ryan52-guest at users.alioth.debian.org
ryan52-guest at users.alioth.debian.org
Tue May 26 06:12:19 UTC 2009
Author: ryan52-guest
Date: Tue May 26 06:12:13 2009
New Revision: 36420
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=36420
Log:
* New upstream release
* Add myself to Uploaders
Added:
trunk/libmoosex-methodattributes-perl/TODO
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/TODO
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Map.pm
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/lib/MooseX/MethodAttributes/Role/Meta/Map.pm
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Role.pm
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/lib/MooseX/MethodAttributes/Role/Meta/Role.pm
trunk/libmoosex-methodattributes-perl/t/catalyst_role.t
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/t/catalyst_role.t
trunk/libmoosex-methodattributes-perl/t/catalyst_role_method_aliasing.t
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/t/catalyst_role_method_aliasing.t
trunk/libmoosex-methodattributes-perl/t/catalyst_role_preexist_methods.t
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/t/catalyst_role_preexist_methods.t
trunk/libmoosex-methodattributes-perl/t/lib/ClassUsingRoleWithAttributes.pm
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/t/lib/ClassUsingRoleWithAttributes.pm
trunk/libmoosex-methodattributes-perl/t/lib/RoleWithAttributes.pm
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/t/lib/RoleWithAttributes.pm
trunk/libmoosex-methodattributes-perl/t/role.t
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/t/role.t
trunk/libmoosex-methodattributes-perl/t/role_applied.t
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/t/role_applied.t
trunk/libmoosex-methodattributes-perl/t/role_in_role.t
- copied unchanged from r36419, branches/upstream/libmoosex-methodattributes-perl/current/t/role_in_role.t
Removed:
trunk/libmoosex-methodattributes-perl/t/catalyst2.t
Modified:
trunk/libmoosex-methodattributes-perl/Changes
trunk/libmoosex-methodattributes-perl/MANIFEST
trunk/libmoosex-methodattributes-perl/META.yml
trunk/libmoosex-methodattributes-perl/Makefile.PL
trunk/libmoosex-methodattributes-perl/README
trunk/libmoosex-methodattributes-perl/debian/changelog
trunk/libmoosex-methodattributes-perl/debian/control
trunk/libmoosex-methodattributes-perl/dist.ini
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm
trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm
trunk/libmoosex-methodattributes-perl/t/catalyst.t
trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm
trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm
trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm
trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm
trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm
trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm
Modified: trunk/libmoosex-methodattributes-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/Changes?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/Changes (original)
+++ trunk/libmoosex-methodattributes-perl/Changes Tue May 26 06:12:13 2009
@@ -1,3 +1,27 @@
+0.12 Mon, 25 May 2009 19:33:30 +0100
+ * Add additional tests for role composition behavior.
+ * Add an error message if someone tries to exclude or alias methods
+ from a role with attributes, which currently doesn't work.
+ * Add tests for this error, and tests for behavior if aliasing did work.
+
+0.11_03 Mon, 25 May 2009 00:06:50 +0100
+ * Fix overenthusiastic meta trait application which caused
+ classes which already had methods with attributes to have their
+ attributes wiped out.
+
+0.11_02 Thu, 21 May 2009 01:46:47 +0100
+ * Add support for use Moose::Role -traits => 'MethodAttributes'
+ if we've already been loaded.
+ * Add support for composing a role containg methods with attributes into
+ another role.
+
+0.11_01 Sun, 17 May 2009 23:50:44 +0100
+ * Do not apply metaclass roles unless needed.
+ * Add MooseX::MethodAttributes::Role::Meta::Role, for roles which
+ contain methods with attributes.
+ * Split attribute container functionality out into
+ MooseX::MethodAttributes::Role::Meta::Map.
+
0.11 Fri, 15 May 2009 18:02:27 +0200
* Depend on Moose 079 to prevent metaclass incompatibility failure.
Modified: trunk/libmoosex-methodattributes-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/MANIFEST?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/MANIFEST (original)
+++ trunk/libmoosex-methodattributes-perl/MANIFEST Tue May 26 06:12:13 2009
@@ -4,25 +4,35 @@
META.yml
Makefile.PL
README
+TODO
dist.ini
lib/MooseX/MethodAttributes.pm
lib/MooseX/MethodAttributes/Inheritable.pm
lib/MooseX/MethodAttributes/Role/AttrContainer.pm
lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm
lib/MooseX/MethodAttributes/Role/Meta/Class.pm
+lib/MooseX/MethodAttributes/Role/Meta/Map.pm
lib/MooseX/MethodAttributes/Role/Meta/Method.pm
lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm
lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm
+lib/MooseX/MethodAttributes/Role/Meta/Role.pm
t/basic.t
t/calling.t
t/catalyst.t
-t/catalyst2.t
+t/catalyst_role.t
+t/catalyst_role_method_aliasing.t
+t/catalyst_role_preexist_methods.t
t/inherited.t
t/inherited_non_moose_multilevel.t
t/lib/BaseClass.pm
+t/lib/ClassUsingRoleWithAttributes.pm
t/lib/OtherSubClass.pm
+t/lib/RoleWithAttributes.pm
t/lib/SubClass.pm
t/lib/SubClassUseBaseAndUseMoose.pm
t/lib/SubSubClass.pm
t/lib/TestClass.pm
-t/override_method_with_no_attribute.t
+t/override_method_with_no_attribute.t
+t/role.t
+t/role_applied.t
+t/role_in_role.t
Modified: trunk/libmoosex-methodattributes-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/META.yml?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/META.yml (original)
+++ trunk/libmoosex-methodattributes-perl/META.yml Tue May 26 06:12:13 2009
@@ -1,13 +1,16 @@
---
-abstract: code attribute introspection
+abstract: 'code attribute introspection'
author:
-- Florian Ragwitz <rafl at debian.org>
-- Tomas Doran <bobtfish at bobtfish.net>
-generated_by: Dist::Zilla::Plugin::MetaYaml version 1.091260
+ - 'Florian Ragwitz <rafl at debian.org>'
+ - 'Tomas Doran <bobtfish at bobtfish.net>'
+generated_by: 'Dist::Zilla::Plugin::MetaYAML version 1.091440'
license: perl
+meta-spec:
+ url: http://module-build.sourceforge.net/META-spec-v1.4.html
+ version: 1.4
name: MooseX-MethodAttributes
requires:
- Moose: '0.79'
- MooseX::Types: '0.06'
- namespace::clean: '0'
-version: '0.11'
+ Moose: 0.79
+ MooseX::Types: 0.06
+ namespace::clean: 0
+version: 0.12
Modified: trunk/libmoosex-methodattributes-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/Makefile.PL?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/Makefile.PL (original)
+++ trunk/libmoosex-methodattributes-perl/Makefile.PL Tue May 26 06:12:13 2009
@@ -8,8 +8,8 @@
DISTNAME => 'MooseX-MethodAttributes',
NAME => 'MooseX::MethodAttributes',
AUTHOR => 'Florian\ Ragwitz\ \<rafl\@debian\.org\>\,\ Tomas\ Doran\ \<bobtfish\@bobtfish\.net\>',
- ABSTRACT => 'code attribute introspection',
- VERSION => '0.11',
+ ABSTRACT => 'code\ attribute\ introspection',
+ VERSION => '0.12',
EXE_FILES => [ qw() ],
(eval { ExtUtils::MakeMaker->VERSION(6.21) } ? (LICENSE => 'perl') : ()),
PREREQ_PM => {
Modified: trunk/libmoosex-methodattributes-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/README?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/README (original)
+++ trunk/libmoosex-methodattributes-perl/README Tue May 26 06:12:13 2009
@@ -1,7 +1,7 @@
This archive contains the distribution MooseX-MethodAttributes, version
-0.11:
+0.12:
code attribute introspection
Modified: trunk/libmoosex-methodattributes-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/debian/changelog?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/debian/changelog (original)
+++ trunk/libmoosex-methodattributes-perl/debian/changelog Tue May 26 06:12:13 2009
@@ -1,3 +1,10 @@
+libmoosex-methodattributes-perl (0.12-1) UNRELEASED; urgency=low
+
+ * New upstream release
+ * Add myself to Uploaders
+
+ -- Ryan Niebur <ryanryan52 at gmail.com> Mon, 25 May 2009 23:11:54 -0700
+
libmoosex-methodattributes-perl (0.11-1) unstable; urgency=low
* New upstream release.
Modified: trunk/libmoosex-methodattributes-perl/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/debian/control?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/debian/control (original)
+++ trunk/libmoosex-methodattributes-perl/debian/control Tue May 26 06:12:13 2009
@@ -7,7 +7,7 @@
Maintainer: Debian Perl Group <pkg-perl-maintainers at lists.alioth.debian.org>
Uploaders: Ansgar Burchardt <ansgar at 43-1.org>,
Krzysztof Krzyżaniak (eloy) <eloy at debian.org>,
- Brian Cassidy <brian.cassidy at gmail.com>
+ Brian Cassidy <brian.cassidy at gmail.com>, Ryan Niebur <ryanryan52 at gmail.com>
Standards-Version: 3.8.1
Homepage: http://search.cpan.org/dist/MooseX-MethodAttributes/
Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libmoosex-methodattributes-perl/
Modified: trunk/libmoosex-methodattributes-perl/dist.ini
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/dist.ini?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/dist.ini (original)
+++ trunk/libmoosex-methodattributes-perl/dist.ini Tue May 26 06:12:13 2009
@@ -1,5 +1,5 @@
name = MooseX-MethodAttributes
-version = 0.11
+version = 0.12
author = Florian Ragwitz <rafl at debian.org>
author = Tomas Doran <bobtfish at bobtfish.net>
license = Perl_5
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes.pm Tue May 26 06:12:13 2009
@@ -2,13 +2,15 @@
use warnings;
package MooseX::MethodAttributes;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
# ABSTRACT: code attribute introspection
use Moose ();
use Moose::Exporter;
use Moose::Util::MetaRole;
+# Ensure trait is registered
+use MooseX::MethodAttributes::Role::Meta::Role ();
Moose::Exporter->setup_import_methods;
@@ -38,7 +40,7 @@
=head1 VERSION
-version 0.11
+version 0.12
=head1 SYNOPSIS
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Inheritable.pm Tue May 26 06:12:13 2009
@@ -1,8 +1,11 @@
package MooseX::MethodAttributes::Inheritable;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
# ABSTRACT: inheritable code attribute introspection
+
+# Ensure trait is registered
+use MooseX::MethodAttributes::Role::Meta::Role ();
use Moose;
@@ -12,7 +15,6 @@
__PACKAGE__->meta->make_immutable;
-1;
__END__
=head1 NAME
@@ -21,7 +23,7 @@
=head1 VERSION
-version 0.11
+version 0.12
=head1 SYNOPSIS
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer.pm Tue May 26 06:12:13 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::AttrContainer;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
# ABSTRACT: capture code attributes in the class' metaclass
@@ -24,7 +24,7 @@
=head1 VERSION
-version 0.11
+version 0.12
=head1 METHODS
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/AttrContainer/Inheritable.pm Tue May 26 06:12:13 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::AttrContainer::Inheritable;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
# ABSTRACT: capture code attributes in the automatically initialized metaclass instance
@@ -14,7 +14,8 @@
with 'MooseX::MethodAttributes::Role::AttrContainer';
before MODIFY_CODE_ATTRIBUTES => sub {
- my ($class) = @_;
+ my ($class, $code, @attrs) = @_;
+ return unless @attrs;
my $meta = find_meta($class);
return if $meta
@@ -42,7 +43,7 @@
=head1 VERSION
-version 0.11
+version 0.12
=head1 DESCRIPTION
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Class.pm Tue May 26 06:12:13 2009
@@ -1,41 +1,16 @@
package MooseX::MethodAttributes::Role::Meta::Class;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
# ABSTRACT: metaclass role for storing code attributes
use Moose::Role;
use Moose::Util qw/find_meta does_role/;
-use MooseX::Types::Moose qw/HashRef ArrayRef Str Int/;
use namespace::clean -except => 'meta';
-has _method_attribute_map => (
- is => 'ro',
- isa => HashRef[ArrayRef[Str]],
- lazy => 1,
- default => sub { +{} },
-);
-
-has _method_attribute_list => (
- is => 'ro',
- isa => ArrayRef[Int],
- lazy => 1,
- default => sub { [] },
-);
-
-
-sub register_method_attributes {
- my ($self, $code, $attrs) = @_;
- push @{ $self->_method_attribute_list }, 0 + $code;
- $self->_method_attribute_map->{ 0 + $code } = $attrs;
- return;
-}
-
-
-sub get_method_attributes {
- my ($self, $code) = @_;
- return $self->_method_attribute_map->{ 0 + $code } || [];
-}
+with qw/
+ MooseX::MethodAttributes::Role::Meta::Map
+/;
sub get_method_with_attributes_list {
@@ -133,21 +108,9 @@
=head1 VERSION
-version 0.11
+version 0.12
=head1 METHODS
-
-=head2 register_method_attributes ($code, $attrs)
-
-Register a list of attributes for a code reference.
-
-
-
-=head2 get_method_attributes ($code)
-
-Get a list of attributes associated with a coderef.
-
-
=head2 get_method_with_attributes_list
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method.pm Tue May 26 06:12:13 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Method;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
# ABSTRACT: metamethod role allowing code attribute introspection
@@ -34,7 +34,7 @@
=head1 VERSION
-version 0.11
+version 0.12
=head1 ATTRIBUTES
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/MaybeWrapped.pm Tue May 26 06:12:13 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Method::MaybeWrapped;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
# ABSTRACT: proxy attributes of wrapped methods if their metaclass supports it
@@ -30,7 +30,7 @@
=head1 VERSION
-version 0.11
+version 0.12
=head1 AUTHORS
Modified: trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm (original)
+++ trunk/libmoosex-methodattributes-perl/lib/MooseX/MethodAttributes/Role/Meta/Method/Wrapped.pm Tue May 26 06:12:13 2009
@@ -1,5 +1,5 @@
package MooseX::MethodAttributes::Role::Meta::Method::Wrapped;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
# ABSTRACT: wrapped metamethod role allowing code attribute introspection
@@ -27,7 +27,7 @@
=head1 VERSION
-version 0.11
+version 0.12
=head1 METHODS
Modified: trunk/libmoosex-methodattributes-perl/t/catalyst.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/catalyst.t?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/catalyst.t (original)
+++ trunk/libmoosex-methodattributes-perl/t/catalyst.t Tue May 26 06:12:13 2009
@@ -1,3 +1,5 @@
+use strict;
+use warnings;
{
package Catalyst::Controller;
use Moose;
@@ -8,19 +10,24 @@
{
package TestApp::Controller::Moose;
use Moose;
- use MooseX::MethodAttributes;
use namespace::clean -except => 'meta';
BEGIN { extends qw/Catalyst::Controller/; }
our $GET_ATTRIBUTE_CALLED = 0;
sub get_attribute : Local { $GET_ATTRIBUTE_CALLED++ }
+ our $GET_FOO_CALLED = 0;
+ our $BEFORE_GET_FOO_CALLED = 0;
+ sub get_foo : Local { $GET_FOO_CALLED++ }
+ # Exactly the same as last test except for modifier here
+ before 'get_foo' => sub { $BEFORE_GET_FOO_CALLED++ };
+
sub other : Local {}
}
{
package TestApp::Controller::Moose::MethodModifiers;
use Moose;
- use MooseX::MethodAttributes;
+ use namespace::clean -except => 'meta';
BEGIN { extends qw/TestApp::Controller::Moose/; }
our $GET_ATTRIBUTE_CALLED = 0;
@@ -30,7 +37,7 @@
after other => sub {}; # Wrapped, wrapped should show up.
}
-use Test::More tests => 9;
+use Test::More tests => 13;
use Test::Exception;
my @methods;
@@ -38,16 +45,21 @@
@methods = TestApp::Controller::Moose::MethodModifiers->meta->get_nearest_methods_with_attributes;
} 'Can get nearest methods';
-is @methods, 2;
+is @methods, 3;
my $method = (grep { $_->name eq 'get_attribute' } @methods)[0];
ok $method;
is $method->body, \&TestApp::Controller::Moose::MethodModifiers::get_attribute;
is $TestApp::Controller::Moose::GET_ATTRIBUTE_CALLED, 0;
is $TestApp::Controller::Moose::MethodModifiers::GET_ATTRIBUTE_CALLED, 0;
+is $TestApp::Controller::Moose::GET_FOO_CALLED, 0;
+is $TestApp::Controller::Moose::BEFORE_GET_FOO_CALLED, 0;
$method->body->();
+(grep { $_->name eq 'get_foo' } @methods)[0]->body->();
is $TestApp::Controller::Moose::GET_ATTRIBUTE_CALLED, 1;
is $TestApp::Controller::Moose::MethodModifiers::GET_ATTRIBUTE_CALLED, 1;
+is $TestApp::Controller::Moose::GET_FOO_CALLED, 1;
+is $TestApp::Controller::Moose::BEFORE_GET_FOO_CALLED, 1;
my $other = (grep { $_->name eq 'other' } @methods)[0];
ok $other;
Modified: trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/BaseClass.pm Tue May 26 06:12:13 2009
@@ -2,12 +2,12 @@
use warnings;
package BaseClass::Meta::Role;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
use Moose::Role;
package BaseClass;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
use Moose;
Modified: trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/OtherSubClass.pm Tue May 26 06:12:13 2009
@@ -2,7 +2,7 @@
use warnings;
package OtherSubClass;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
use base qw/BaseClass/;
Modified: trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/SubClass.pm Tue May 26 06:12:13 2009
@@ -2,7 +2,7 @@
use warnings;
package SubClass;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
use Moose;
Modified: trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/SubClassUseBaseAndUseMoose.pm Tue May 26 06:12:13 2009
@@ -2,7 +2,7 @@
use warnings;
package SubClassUseBaseAndUseMoose;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
use base qw/BaseClass/;
Modified: trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/SubSubClass.pm Tue May 26 06:12:13 2009
@@ -2,7 +2,7 @@
use warnings;
package SubSubClass;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
use base qw/OtherSubClass/;
Modified: trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm?rev=36420&op=diff
==============================================================================
--- trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm (original)
+++ trunk/libmoosex-methodattributes-perl/t/lib/TestClass.pm Tue May 26 06:12:13 2009
@@ -1,5 +1,5 @@
package TestClass;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
use Moose;
@@ -12,7 +12,7 @@
after foo => sub {};
package SubClass;
-our $VERSION = '0.11';
+our $VERSION = '0.12';
use Moose;
More information about the Pkg-perl-cvs-commits
mailing list