# Before `make install' is performed this script should be runnable with # `make test'. After `make install' it should work as `perl test.pl' my $final = 0; # Automatically generates an ok/nok msg, incrementing the test number. BEGIN { my($next, @msgs); sub printok { push @msgs, ($_[0] ? '' : 'not ') . "ok @{[++$next]}\n"; return !$_[0]; } END { if ($loaded) { print "\n1..", scalar @msgs, "\n", @msgs; } else { print "not ok 1\n"; } } } use Env::Path; $loaded = 1; $final += printok(1); my $p1 = Env::Path->XXXPATH(qw(aaa bbb ccc)); printok($p1->Name eq 'XXXPATH' && !@XXXPATH::ISA); my $p2 = Env::Path->new('YYYPATH', qw(aaa bbb ccc xxx yyy zzz c123)); $p2->Replace('^c.*', qw(/CC /XX)); printok($p2->Name eq 'YYYPATH'); $p1->Append($p2->List); $p1->Uniqify; $p1->DeleteNonexistent; printok($p1->List eq 0); Env::Path->PATH; PATH->Uniqify; PATH->DeleteNonexistent; printok(@PATH::ISA); Env::Path->ZZZPATH(PATH->List); ZZZPATH->Append('/nosuchdir'); ZZZPATH->Assign(ZZZPATH->List, $ENV{ZZZPATH}); printok(PATH->List eq (ZZZPATH->List - 2)/2); ZZZPATH->Uniqify; printok(PATH->List eq ZZZPATH->List - 1); ZZZPATH->DeleteNonexistent; printok(PATH->List eq ZZZPATH->List);