Alien-Build

 view release on metacpan or  search on metacpan

t/alien_build_plugin.t  view on Meta::CPAN

use 5.008004;
use Test2::V0 -no_srand => 1;
use Alien::Build::Plugin ();
use lib 'corpus/lib';

subtest 'basic' => sub {

  my $plugin = Alien::Build::Plugin->new;
  isa_ok $plugin, 'Alien::Build::Plugin';

};

subtest 'properties' => sub {

  require Alien::Build::Plugin::RogerRamjet;

  subtest 'defaults' => sub {

    my $plugin = Alien::Build::Plugin::RogerRamjet->new;
    is $plugin->foo, 22;
    is $plugin->bar, 'something generated';

  };

  subtest 'override' => sub {

    my $plugin = Alien::Build::Plugin::RogerRamjet->new(
      foo => 42,
      bar => 'anything else',
    );

    is $plugin->foo, 42;
    is $plugin->bar, 'anything else';

  };

  subtest 'set' => sub {

    my $plugin = Alien::Build::Plugin::RogerRamjet->new;

    $plugin->foo(92);
    $plugin->bar('string');

    is $plugin->foo, 92;
    is $plugin->bar, 'string';

  };

};

subtest 'instance-id' => sub {

  {
    package
      Alien::Build::Plugin::ABC::XYZ1;
    use Alien::Build::Plugin;

    has foo => undef;
    has bar => undef;
  }

  {
    package
      Alien::Build::Plugin::ABC::XYZ2;



( run in 0.681 second using v1.01-cache-2.11-cpan-140bd7fdf52 )