|
Packit |
a6a12c |
#!/usr/bin/perl -w
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
BEGIN {
|
|
Packit |
a6a12c |
unshift @INC, 't/lib';
|
|
Packit |
a6a12c |
}
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
use strict;
|
|
Packit |
a6a12c |
use warnings;
|
|
Packit |
a6a12c |
use Test::More;
|
|
Packit |
a6a12c |
use App::Prove::State;
|
|
Packit |
a6a12c |
use App::Prove::State::Result;
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
sub mn {
|
|
Packit |
a6a12c |
my $pfx = '';
|
|
Packit |
a6a12c |
return map {"$pfx$_"} @_;
|
|
Packit |
a6a12c |
}
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
my @schedule = (
|
|
Packit |
a6a12c |
{ options => 'all',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'failed',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'passed',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'last',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'todo',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'hot',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'adrian',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'failed,passed',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => [ 'failed', 'passed' ],
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'slow',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'fast',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'old',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'new',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
't/yamlish-writer.t',
|
|
Packit |
a6a12c |
't/compat/version.t',
|
|
Packit |
a6a12c |
't/compat/inc_taint.t',
|
|
Packit |
a6a12c |
't/source_handler.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
{ options => 'fresh',
|
|
Packit |
a6a12c |
get_tests_args => [],
|
|
Packit |
a6a12c |
expect => [
|
|
Packit |
a6a12c |
't/compat/env.t',
|
|
Packit |
a6a12c |
't/compat/failure.t',
|
|
Packit |
a6a12c |
],
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
);
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
plan tests => @schedule * 2;
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
for my $test (@schedule) {
|
|
Packit |
a6a12c |
my $state = App::Prove::State->new;
|
|
Packit |
a6a12c |
isa_ok $state, 'App::Prove::State';
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
my $desc = $test->{options};
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
# Naughty
|
|
Packit |
a6a12c |
$state->{_} = get_state();
|
|
Packit |
a6a12c |
my $options = $test->{options};
|
|
Packit |
a6a12c |
$options = [$options] unless 'ARRAY' eq ref $options;
|
|
Packit |
a6a12c |
$state->apply_switch(@$options);
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
my @got = $state->get_tests( @{ $test->{get_tests_args} } );
|
|
Packit |
a6a12c |
my @expect = mn( @{ $test->{expect} } );
|
|
Packit |
a6a12c |
unless ( is_deeply \@got, \@expect, "$desc: order OK" ) {
|
|
Packit |
a6a12c |
use Data::Dumper;
|
|
Packit |
a6a12c |
diag( Dumper( { got => \@got, want => \@expect } ) );
|
|
Packit |
a6a12c |
}
|
|
Packit |
a6a12c |
}
|
|
Packit |
a6a12c |
|
|
Packit |
a6a12c |
sub get_state {
|
|
Packit |
a6a12c |
return App::Prove::State::Result->new(
|
|
Packit |
a6a12c |
{ generation => 51,
|
|
Packit |
a6a12c |
last_run_time => 1196285439,
|
|
Packit |
a6a12c |
tests => {
|
|
Packit |
a6a12c |
mn('t/compat/failure.t') => {
|
|
Packit |
a6a12c |
last_result => 0,
|
|
Packit |
a6a12c |
last_run_time => 1196371471.57738,
|
|
Packit |
a6a12c |
last_pass_time => 1196371471.57738,
|
|
Packit |
a6a12c |
total_passes => 48,
|
|
Packit |
a6a12c |
seq => 1549,
|
|
Packit |
a6a12c |
gen => 51,
|
|
Packit |
a6a12c |
elapsed => 0.1230,
|
|
Packit |
a6a12c |
last_todo => 1,
|
|
Packit |
a6a12c |
mtime => 1196285623,
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
mn('t/yamlish-writer.t') => {
|
|
Packit |
a6a12c |
last_result => 0,
|
|
Packit |
a6a12c |
last_run_time => 1196371480.5761,
|
|
Packit |
a6a12c |
last_pass_time => 1196371480.5761,
|
|
Packit |
a6a12c |
last_fail_time => 1196368609,
|
|
Packit |
a6a12c |
total_passes => 41,
|
|
Packit |
a6a12c |
seq => 1578,
|
|
Packit |
a6a12c |
gen => 49,
|
|
Packit |
a6a12c |
elapsed => 12.2983,
|
|
Packit |
a6a12c |
last_todo => 0,
|
|
Packit |
a6a12c |
mtime => 1196285400,
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
mn('t/compat/env.t') => {
|
|
Packit |
a6a12c |
last_result => 0,
|
|
Packit |
a6a12c |
last_run_time => 1196371471.42967,
|
|
Packit |
a6a12c |
last_pass_time => 1196371471.42967,
|
|
Packit |
a6a12c |
last_fail_time => 1196368608,
|
|
Packit |
a6a12c |
total_passes => 48,
|
|
Packit |
a6a12c |
seq => 1548,
|
|
Packit |
a6a12c |
gen => 52,
|
|
Packit |
a6a12c |
elapsed => 3.1290,
|
|
Packit |
a6a12c |
last_todo => 0,
|
|
Packit |
a6a12c |
mtime => 1196285739,
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
mn('t/compat/version.t') => {
|
|
Packit |
a6a12c |
last_result => 2,
|
|
Packit |
a6a12c |
last_run_time => 1196371472.96476,
|
|
Packit |
a6a12c |
last_pass_time => 1196371472.96476,
|
|
Packit |
a6a12c |
last_fail_time => 1196368609,
|
|
Packit |
a6a12c |
total_passes => 47,
|
|
Packit |
a6a12c |
seq => 1555,
|
|
Packit |
a6a12c |
gen => 51,
|
|
Packit |
a6a12c |
elapsed => 0.2363,
|
|
Packit |
a6a12c |
last_todo => 4,
|
|
Packit |
a6a12c |
mtime => 1196285239,
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
mn('t/compat/inc_taint.t') => {
|
|
Packit |
a6a12c |
last_result => 3,
|
|
Packit |
a6a12c |
last_run_time => 1196371471.89682,
|
|
Packit |
a6a12c |
last_pass_time => 1196371471.89682,
|
|
Packit |
a6a12c |
total_passes => 47,
|
|
Packit |
a6a12c |
seq => 1551,
|
|
Packit |
a6a12c |
gen => 51,
|
|
Packit |
a6a12c |
elapsed => 1.6938,
|
|
Packit |
a6a12c |
last_todo => 0,
|
|
Packit |
a6a12c |
mtime => 1196185639,
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
mn('t/source_handler.t') => {
|
|
Packit |
a6a12c |
last_result => 0,
|
|
Packit |
a6a12c |
last_run_time => 1196371479.72508,
|
|
Packit |
a6a12c |
last_pass_time => 1196371479.72508,
|
|
Packit |
a6a12c |
total_passes => 41,
|
|
Packit |
a6a12c |
seq => 1570,
|
|
Packit |
a6a12c |
gen => 51,
|
|
Packit |
a6a12c |
elapsed => 0.0143,
|
|
Packit |
a6a12c |
last_todo => 0,
|
|
Packit |
a6a12c |
mtime => 1186285639,
|
|
Packit |
a6a12c |
},
|
|
Packit |
a6a12c |
}
|
|
Packit |
a6a12c |
}
|
|
Packit |
a6a12c |
);
|
|
Packit |
a6a12c |
}
|