Dist-Starter

 view release on metacpan or  search on metacpan

lib/Dist/Starter.pm  view on Meta::CPAN

  my @files;
  my $wanted = sub {
    my $file = $_;
    push @files, $file;
    if ( -f $file ) {
      # Add write permission to the owner because dircopy() hasn't kept that
      chmod( ( stat( $file ) )[ 2 ] | S_IWUSR, $file );
      # Enable inplace-editing
      # https://stackoverflow.com/questions/31024980/perl-in-place-editing-within-a-script-rather-than-one-liner
      local $^I   = '';
      local @ARGV = ( $file );
      while ( <ARGV> ) {
        # Skip lines that contain any number (even 0) of blank characters after placeholder substitution
        next if s/\{\{ ( [^}]+ ) \}\}/$context->lookup( $1 )/xeg and m/\A[ \t]*\R\z/;
        print;
      }
    }
  };

  # Let $wanted apply in-place edits to the content of each regular file
  find( { wanted => $wanted, no_chdir => 1, bydepth => 1 }, $project );

share/templates/perl-dist-eummcpf/{{distname}}/t/load.t  view on Meta::CPAN

use Test2::Plugin::DieOnFail;

use Config qw( %Config );

plan 5;

my $main_module;
my $main_module_version;
{
  local @INC  = @INC;
  local @ARGV = qw( DISTNAME NAME VERSION );
  ok scalar( ( my $distname, $main_module, $main_module_version ) = @{ require './Makefile.PL' } ), ## no critic ( RequireBarewordIncludes )
    "Load 'Makefile.PL' as a module";
  is $distname, '{{distname}}', 'Check dist name';
  is $main_module, '{{main_module}}', 'Check main module name'
}

ok eval "require $main_module", "Load main module '$main_module'"; ## no critic ( RequireCheckingReturnValueOfEval )
is $main_module_version, $main_module->VERSION, 'Check main module version';
note "Testing $main_module $main_module_version";

t/data/expected/basic/Foo-Bar-Baz/t/load.t  view on Meta::CPAN

use Test2::Plugin::DieOnFail;

use Config qw( %Config );

plan 5;

my $main_module;
my $main_module_version;
{
  local @INC  = @INC;
  local @ARGV = qw( DISTNAME NAME VERSION );
  ok scalar( ( my $distname, $main_module, $main_module_version ) = @{ require './Makefile.PL' } ), ## no critic ( RequireBarewordIncludes )
    "Load 'Makefile.PL' as a module";
  is $distname, 'Foo-Bar-Baz', 'Check dist name';
  is $main_module, 'Foo::Bar::Baz', 'Check main module name'
}

ok eval "require $main_module", "Load main module '$main_module'"; ## no critic ( RequireCheckingReturnValueOfEval )
is $main_module_version, $main_module->VERSION, 'Check main module version';
note "Testing $main_module $main_module_version";

t/data/expected/share/Baz-Bar-Foo/t/load.t  view on Meta::CPAN

use Test2::Plugin::DieOnFail;

use Config qw( %Config );

plan 5;

my $main_module;
my $main_module_version;
{
  local @INC  = @INC;
  local @ARGV = qw( DISTNAME NAME VERSION );
  ok scalar( ( my $distname, $main_module, $main_module_version ) = @{ require './Makefile.PL' } ), ## no critic ( RequireBarewordIncludes )
    "Load 'Makefile.PL' as a module";
  is $distname, 'Baz-Bar-Foo', 'Check dist name';
  is $main_module, 'Baz::Bar::Foo', 'Check main module name'
}

ok eval "require $main_module", "Load main module '$main_module'"; ## no critic ( RequireCheckingReturnValueOfEval )
is $main_module_version, $main_module->VERSION, 'Check main module version';
note "Testing $main_module $main_module_version";

t/load.t  view on Meta::CPAN

use Test2::Plugin::DieOnFail;

use Config qw( %Config );

plan 5;

my $main_module;
my $main_module_version;
{
  local @INC  = @INC;
  local @ARGV = qw( DISTNAME NAME VERSION );
  ok scalar( ( my $distname, $main_module, $main_module_version ) = @{ require './Makefile.PL' } ), ## no critic ( RequireBarewordIncludes )
    "Load 'Makefile.PL' as a module";
  is $distname, 'Dist-Starter', 'Check dist name';
  is $main_module, 'Dist::Starter', 'Check main module name'
}

ok eval "require $main_module", "Load main module '$main_module'"; ## no critic ( RequireCheckingReturnValueOfEval )
is $main_module_version, $main_module->VERSION, 'Check main module version';
note "Testing $main_module $main_module_version";



( run in 1.251 second using v1.01-cache-2.11-cpan-a49fcb8fa48 )