File: test-combos.pl

package info (click to toggle)
libany-moose-perl 0.24-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 320 kB
  • ctags: 13
  • sloc: perl: 837; makefile: 2
file content (53 lines) | stat: -rwxr-xr-x 1,077 bytes parent folder | download | duplicates (3)
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
53
#!/usr/bin/env perl
use 5.14.0;
use warnings;
use Data::PowerSet 'powerset';

my @all_modules = qw(Mouse MouseX::Types Moose MooseX::Types);

my %results;

for my $modules (@{ powerset(@all_modules) }) {
    my $list = join ',', @$modules;

    say '=' x 60;
    say "RUNNING WITHOUT $list";
    say '=' x 60;

    $ENV{PERL5OPT} = "-MTest::Without::Module=$list";
    system("prove");

    my $result = $? >> 8 ? "NOT OK" : "OK";
    push @{ $results{$result} }, $list;
}

for my $result (sort keys %results) {
    my @modules = @{ $results{$result} };
    say "$result when testing without:";
    say "* $_" for @modules;
    say '';
}

__END__

... test results ...

NOT OK when testing without:
* Mouse,MouseX::Types,Moose,MooseX::Types
* Mouse,Moose,MooseX::Types
* Mouse,MouseX::Types,Moose
* Mouse,Moose

OK when testing without:
* MouseX::Types,Moose,MooseX::Types
* Moose,MooseX::Types
* Mouse,MouseX::Types,MooseX::Types
* MouseX::Types,MooseX::Types
* Mouse,MooseX::Types
* MooseX::Types
* MouseX::Types,Moose
* Moose
* Mouse,MouseX::Types
* MouseX::Types
* Mouse
*