This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Perl_hv_placeholders_get() actually takes a const HV *hv.
[perl5.git] / lib / h2ph.t
... / ...
CommitLineData
1#!./perl
2
3# quickie tests to see if h2ph actually runs and does more or less what is
4# expected
5
6BEGIN {
7 chdir 't' if -d 't';
8 @INC = '../lib';
9}
10
11my $extracted_program = '../utils/h2ph'; # unix, nt, ...
12if ($^O eq 'VMS') { $extracted_program = '[-.utils]h2ph.com'; }
13if (!(-e $extracted_program)) {
14 print "1..0 # Skip: $extracted_program was not built\n";
15 exit 0;
16}
17
18print "1..2\n";
19
20# quickly compare two text files
21sub txt_compare {
22 local ($/, $A, $B);
23 for (($A,$B) = @_) { open(_,"<$_") ? $_ = <_> : die "$_ : $!"; close _ }
24 $A cmp $B;
25}
26
27# does it run?
28$ok = system("$^X \"-I../lib\" $extracted_program -d. \"-Q\" lib/h2ph.h");
29print(($ok == 0 ? "" : "not "), "ok 1\n");
30
31# does it work? well, does it do what we expect? :-)
32$ok = txt_compare("lib/h2ph.ph", "lib/h2ph.pht");
33print(($ok == 0 ? "" : "not "), "ok 2\n");
34
35# cleanup - should this be in an END block?
36unlink("lib/h2ph.ph");
37unlink("_h2ph_pre.ph");