App-Followme
view release on metacpan or search on metacpan
t/FolderData.t view on Meta::CPAN
#!/usr/bin/env perl
use strict;
use Test::More tests => 31;
use File::Path qw(rmtree);
use File::Spec::Functions qw(abs2rel catdir catfile rel2abs splitdir);
#----------------------------------------------------------------------
# Change the modification date of a file
sub age {
my ($filename, $sec) = @_;
return unless -e $filename;
return if $sec <= 0;
my @stats = stat($filename);
my $date = $stats[9];
$date -= $sec;
utime($date, $date, $filename);
return;
}
#----------------------------------------------------------------------
# Load package
my @path = splitdir(rel2abs($0));
pop(@path);
pop(@path);
my $lib = catdir(@path, 'lib');
unshift(@INC, $lib);
$lib = catdir(@path, 't');
unshift(@INC, $lib);
eval "use App::Followme::FIO";
require App::Followme::FolderData;
my $test_dir = catdir(@path, 'test');
rmtree($test_dir, 0, 1) if -e $test_dir;
mkdir($test_dir) unless -e $test_dir;
my $archive = catfile(@path, 'test', 'archive');
mkdir $archive unless -e $archive;
chdir($test_dir) or die $!;
#----------------------------------------------------------------------
# Create object
my $site_url = 'http://www.example.com';
my $remote_url = 'http://www.cloud.com';
my %configuration = (directory => $test_dir,
top_directory => $test_dir,
base_directory => $test_dir,
author => 'Bernie Simon',
site_url => $site_url,
remote_url => $remote_url,
);
my $obj = App::Followme::FolderData->new(%configuration);
isa_ok($obj, "App::Followme::FolderData"); # test 1
can_ok($obj, qw(new build)); # test 2
#----------------------------------------------------------------------
# Test builders
do {
my $obj = App::Followme::FolderData->new(%configuration);
my $filename = catfile($test_dir, 'archive','one.txt');
my $title = $obj->calculate_title($filename);
( run in 2.902 seconds using v1.01-cache-2.11-cpan-98e64b0badf )