perl fix_fonts_test.pl C:\thomasdata\thomasprojects\fixhtml\test\fonts\stripStandard Fixtotext
perl fix_fonts_test.pl C:\thomasdata\thomasprojects\fixhtml\test\fonts\toClassWeiss Fixtoclassweiss
perl fix_fonts_test.pl C:\thomasdata\thomasprojects\fixhtml\test\fonts\toClassRot Fixtoclassrot
perl fix_fonts_test.pl C:\thomasdata\thomasprojects\fixhtml\test\fonts\toClassKlein Fixtoclassklein
perl fix_fonts_test.pl C:\thomasdata\thomasprojects\fixhtml\test\fonts\toClassesKleinNGrau Fixtoclasskleinandgrau
####
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;
use File::Find;
#custom modules
use Modules::Htmlripper::Noreplaceroot::Fixtotext;
use Modules::Htmlripper::Gotreplaceroot::Fixtoclassweiss;
use Modules::Htmlripper::Gotreplaceroot::Fixtoclassrot;
use Modules::Htmlripper::Gotreplaceroot::Fixtoclassklein;
use Modules::Htmlripper::Gotnestedreplaceroot::Fixtoclasskleinandgrau;
use Modules::Filecontrol qw(get_files);
my $test_dir = shift or die "no test directory specified file\n";
opendir (DIR, $test_dir) or die "couldn't open directory: $test_dir";
closedir DIR;
my $ripperClass = shift or die "no HTML ripper class specified";
my @test_dirs = Filecontrol::get_test_dirs($test_dir);
my $ripper = $ripperClass->new();
#keys are directory names.
for ( @test_dirs ) {
print "Testing $ripperClass against directory $_: \n";
$ripper->test_dir($_);
my $result = $ripper->test();
if ($result) {
print "ok\n";
} else {
print "not ok\n";
}
}
####
sub get_test_dirs {
my $dir = shift or die "no directory specified.";
opendir (DIR, $dir) or die "couldn't open directory: $dir";
my @directories_to_search = ("$dir");
my %dirs = ();
find( sub {
if (-d $File::Find::name) { # it's a dir
my $current_dir = $File::Find::name;
if ( (-f "$current_dir" . '/before.html') && (-f "$current_dir" . '/after.html') ) { #before and after files exist
$dirs{$current_dir} = 1;
} #end check if file
} # end check if directory
}, @directories_to_search );
my @dirs = keys %dirs;
return @dirs;
}