--- /dev/null
+use strict;
+use warnings;
+
+use Test::More tests => 3;
+use Catalyst::Controller::WrapCGI;
+
+my $obj = Catalyst::Controller::WrapCGI->new;
+
+my $want = {%ENV};
+my $have = {%ENV};
+{
+ local $have->{MOD_PERL} = 1;
+ is_deeply(
+ $obj->_filtered_env($have),
+ $want,
+ "default: pass all except MOD_PERL",
+ );
+}
+
+{
+ local $obj->{CGI}{pass_env} = 'MOD_PERL';
+ local $have->{MOD_PERL} = 1;
+ is_deeply(
+ $obj->_filtered_env($have),
+ {},
+ "empty when all passes are killed",
+ );
+}
+
+{
+ local $obj->{CGI}{kill_env} = [];
+ local $have->{MOD_PERL} = 1;
+ local $want->{MOD_PERL} = 1;
+ is_deeply(
+ $obj->_filtered_env($have),
+ $want,
+ "explicit override for default kill",
+ );
+}
+