3 use Test::More qw(no_plan);
8 if ($ENV{UNCLEAN_TEMP}) {
9 my $dir = File::Temp::tempdir;
13 return File::Temp::tempdir(CLEANUP => 1);
16 BEGIN { use_ok aliased => 'IronMunger::StatsSaver'; }
17 BEGIN { use_ok aliased => 'IronMunger::Monger'; }
20 (my $saver = StatsSaver->new(dir => 'X')),
21 'Constructed object ok'
25 $saver->_image_symlink_target('male','iron'), 'X/badges/male/iron.png',
30 $saver->_image_symlink_from('mst', 'female'), 'X/mybadge/female/mst.png',
34 my $monger = Monger->new(
39 is($monger->level, 'paper', 'mst sucks');
43 $saver = StatsSaver->new(dir => $dir);
45 $saver->_write_symlinks_for($monger);
47 my $bdir = io("${dir}/badges");
49 my $mbdir = io("${dir}/mybadge");
53 my @l = $mbdir->all_links(2);
54 @found_links{@l} = (1) x scalar @l;
57 foreach my $gender (qw(male female)) {
58 my $desc = "${gender} symlink";
59 my $l = io("${mbdir}/${gender}/mst.png");
60 ok($l->is_link, "${desc} exists");
62 $l->readlink, "${bdir}/${gender}/paper.png",
63 "${desc} points to right target",
65 ok(delete $found_links{$l}, "${desc} in link list");
68 ok(!(keys %found_links), 'all links accounted for');