X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=t%2Ftools.t;h=077185d99944ba06d910baef43ce437ea75cc97d;hb=d68b9d2003fc0e28f9ae52508c16f0d1a0a6560c;hp=45c0e8f994e5543b9a1c20fcf77b7ff8e5020f4e;hpb=096c7331093f3d1c3d820d440d44edb352a31b67;p=gruntmaster-data.git diff --git a/t/tools.t b/t/tools.t index 45c0e8f..077185d 100644 --- a/t/tools.t +++ b/t/tools.t @@ -8,9 +8,11 @@ use App::Cmd::Tester; BEGIN { eval { - Gruntmaster::Data::init 'dbi:Pg:dbname=gmtest'; 1; + dbinit 'dbi:Pg:dbname=gmtest'; 1; } or plan skip_all => 'Cannot connect to test database. Create it by running make_test_db.sh before running this test. '. "Error: $@"; - plan tests => 29; + no warnings 'redefine'; + *Gruntmaster::App::dbinit = sub {}; # Prevent reinit in Gruntmaster::App->run + plan tests => 30; } sub fakein { @@ -78,6 +80,11 @@ EOF ta [qw/-p add pb/]; +{ + my $out = ta([qw/-p show pb/])->output; + like $out, qr/Value \(points\): 250/, 'gm -p show pb contains Value' +} + subtest 'gruntmaster-problem add' => sub { plan tests => 10; my $pb = problem_entry 'pb'; @@ -108,6 +115,10 @@ ta [rerun => $id]; is job_entry($id)->{result}, -2, "gm rerun $id"; ta [qw/rm -j/, $id]; +ta [rerun => 'fca']; +my @fca_jobs = grep { $_->{problem} eq 'fca' } @{job_list()}; +ok ((!grep { $_->{result} != -2 } @fca_jobs), "gm rerun fca"); + sub terr { my ($args, $err) = @_; my $ret = test_app 'Gruntmaster::App' => $args; @@ -121,8 +132,7 @@ terr [qw/-c add/], 'Wrong number of arguments'; terr [qw/get/], 'No table selected'; terr [qw/-c get/], 'Wrong number of arguments'; terr [qw/list/], 'No table selected'; -terr [qw/-p rerun/], 'This command only works on jobs'; -terr [qw/-j rerun/], 'Wrong number of arguments'; +terr [qw/-j rerun/], 'Not enough arguments'; terr [qw/rm/], 'No table selected'; terr [qw/-j rm/], 'Wrong number of arguments'; terr [qw/set/], 'No table selected';