The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
package t::MockHomeDir;
use strict;
BEGIN{ if (not $] < 5.006) { require warnings; warnings->import } }
use File::Spec;
use File::Temp qw/tempdir/;

$INC{"File/HomeDir.pm"} = 1; # fake load

# tester might have these set -- we need them unset so we use our
# own temporary dir & config during our tests
delete $ENV{PERL_CPAN_REPORTER_DIR};
delete $ENV{PERL_CPAN_REPORTER_CONFIG};

my $temp_home = tempdir( 
    "CPAN-Reporter-testhome-XXXXXXXX", TMPDIR => 1, CLEANUP => 1 
) or die "Couldn't create a temporary config directory: $!\nIs your temp drive full?";

my $home_dir = File::Spec->rel2abs( $temp_home );

sub home_dir { $home_dir }

package File::HomeDir;
our $VERSION = 999;
sub my_documents { return $home_dir };
sub my_home { return $home_dir };
sub my_data { return $home_dir };

1;