summaryrefslogtreecommitdiff
path: root/t/test_reqs.t
blob: bd04f8679a88a6925d8bf6e122e30b6414932a08 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/usr/bin/perl -w

use strict;
use lib 't/lib';
use MBTest;
use CPAN::Meta 2.110420;
use CPAN::Meta::YAML;
use Parse::CPAN::Meta 1.4401;
plan tests => 4;

blib_load('Module::Build');

my $tmp = MBTest->tmpdir;

use DistGen;
my $dist = DistGen->new( dir => $tmp );
$dist->change_file('Build.PL', <<"---");
use strict;
use Module::Build;

my \$builder = Module::Build->new(
  module_name => '$dist->{name}',
  license => 'perl',
  requires => {
    'File::Spec' => 0,
  },
  test_requires => {
    'Test::More' => 0,
  }
);

\$builder->create_build_script();
---
$dist->regen;
$dist->chdir_in;
$dist->run_build_pl;
my $output = stdout_stderr_of sub { $dist->run_build('distmeta') };

for my $file ( qw/MYMETA META/ ) {
    my $meta = Parse::CPAN::Meta->load_file($file.".json");
    is_deeply($meta->{prereqs}->{runtime},{
        requires => {
            'File::Spec' => '0',
        }
    }, "runtime prereqs in $file");
    is_deeply($meta->{prereqs}->{test},{
        requires => {
            'Test::More' => '0',
        }
    }, "test prereqs in $file");
}