MooX-Object-Pluggable

 view release on metacpan or  search on metacpan

t/91-import.t  view on Meta::CPAN

use Modern::Perl;
use Test::More;
package main;

{
  package A::Hello;
  use Moo::Role;
  sub hello { "Hello" }
  1;
}

{
  package A1;
  use Moo;
  use MooX::Object::Pluggable -pluggable_options => { search_path => ["A"] }, -load_plugins => ["Hello"];
  1
}

{
  package B2;
  use Moo;
  use MooX::Object::Pluggable pluggable_options => { search_path => ["A"] }, load_plugins => ["Hello"];
  1;
}

{
  package C3;
  use Moo;

  use MooX 'Object::Pluggable' => { -pluggable_options => { search_path => ["A"] }, -load_plugins => ['Hello'] };

  1;
}

can_ok('A1', "load_plugin", "load_plugins", "loaded_plugins", "plugins");

can_ok('A1'->new, "hello");
can_ok('B2'->new, 'hello');
can_ok('C3'->new, 'hello');

done_testing;



( run in 1.772 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )