1use strict;
2use warnings;
3use Test::More tests => 2;
4
5#use Test::Differences qw(eq_or_diff);
6use File::Temp qw(tempdir);
7use Path::Tiny qw(path);
8
9my $dir = tempdir( CLEANUP => 1 );
10
11subtest usage => sub {
12	plan tests => 1;
13	my $out = qx{$^X script/trac2html};
14	like $out, qr{Usage: script/trac2html};
15
16	#diag $out;
17};
18
19my @cases = qw(
20	padre_download_debian
21	padre_download_fedora
22	padre_download_opensuse
23	padre_download_ubuntu
24	padre_download_netbsd
25	padre_development
26	padre_download_mandriva
27	padre_download_freebsd
28	padre_features
29	padre_download_osx
30	padre_download_windows
31	padre_download_activeperl
32
33	padre_download_cpan
34	padre_download_perlbrew
35	padre_download_repository
36	padre_faq
37	padre_wxformbuilder
38	padre_wxwidgets
39	padre_translationstyle
40	padre_wikistart
41
42);
43
44# Ubuntu generates warnings
45subtest full_html => sub {
46	plan tests => 2 * @cases;
47	foreach my $case (@cases) {
48		my $out = qx{$^X script/trac2html --infile t/corpus/$case.trac --outfile $dir/$case.html};
49		is $out, '', 'out';
50		my $html_generated = path("$dir/$case.html")->slurp_utf8;
51		my $html_expected  = path("t/expected/${case}_noclass_noid_nospan.html")->slurp_utf8;
52
53		#eq_or_diff $html_generated, $html_expected, 'Mandriva';
54		is $html_generated, $html_expected, $case;
55	}
56};
57
58