The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
use strict;
use warnings;

use Test::More qw/no_plan/;
use Test::Exception;

BEGIN { $INC{'IPC/Cmd.pm'} = 1 }

our $can_run = 0;
our @run;

package IPC::Cmd;

sub can_run { $can_run }
sub run { ( 0, 1 ) }

package main;

use lib 't/lib';

BEGIN {
    use_ok('Test::Cmd::Perl');
}

isa_ok( my $wrapper = Test::Cmd::Perl->new, 'Test::Cmd::Perl' );
throws_ok { $wrapper->run } qr/couldn't find command 'perl'/;
$can_run = 'perl';
throws_ok { $wrapper->run } qr/error running 'perl': 1/;