From: Leon Timmermans Date: Fri, 7 Dec 2012 17:16:22 +0000 (+0100) Subject: Added diamant-like role compositioning test X-Git-Tag: v1.003000~18 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=1f8e33fef4b8c4481d9651a3baa760f95fe1fc65;p=gitmo%2FRole-Tiny.git Added diamant-like role compositioning test --- diff --git a/t/role-basic-composition.t b/t/role-basic-composition.t index 17c2759..93a3541 100644 --- a/t/role-basic-composition.t +++ b/t/role-basic-composition.t @@ -171,4 +171,34 @@ $ENV{DEBUG} = 1; is $success, 1, 'composed mutually dependent modifiers successfully' or diag "Error: $@"; } +{ + { + package Base::Role; + use Role::Tiny; + requires qw/method1 method2/; + } + + { + package Sub::Role1; + use Role::Tiny; + with 'Base::Role'; + sub method1 {} + } + + { + package Sub::Role2; + use Role::Tiny; + with 'Base::Role'; + sub method2 {} + } + + my $success = eval q{ + package Diamant::Class; + use Role::Tiny::With; + with qw/Sub::Role1 Sub::Role2/; + 1; + }; + is $success, 1, 'composed diamantly dependent roles successfully' or diag "Error: $@"; +} + done_testing;