Commit | Line | Data |
0a7c7f4f |
1 | |
dbda3434 |
2 | use Devel::PPPort::Harness; |
0a7c7f4f |
3 | |
4 | use strict; |
5 | |
6 | print "1..17\n"; |
7 | |
8 | BEGIN { |
9 | chdir 't' if -d 't'; |
10 | @INC = '../lib' if -d '../lib'; |
11 | |
12 | } |
13 | |
14 | my $total = 0; |
15 | my $good = 0; |
16 | |
17 | my $test = 0; |
18 | sub ok { |
19 | my ($name, $test_sub) = @_; |
20 | my $line = (caller)[2]; |
21 | my $value; |
22 | |
23 | eval { $value = &{ $test_sub }() } ; |
24 | |
25 | ++ $test ; |
26 | |
27 | if ($@) { |
28 | printf "not ok $test # Testing '$name', line $line $@\n"; |
29 | } |
30 | elsif ($value != 1){ |
31 | printf "not ok $test # Testing '$name', line $line, value != 1 ($value)\n"; |
32 | } |
33 | else { |
34 | print "ok $test\n"; |
35 | } |
36 | |
37 | } |
38 | |
39 | ok "Static newCONSTSUB()", |
dbda3434 |
40 | sub { Devel::PPPort::Harness::test1(); Devel::PPPort::Harness::test_value_1() == 1} ; |
0a7c7f4f |
41 | |
42 | ok "Global newCONSTSUB()", |
dbda3434 |
43 | sub { Devel::PPPort::Harness::test2(); Devel::PPPort::Harness::test_value_2() == 2} ; |
0a7c7f4f |
44 | |
45 | ok "Extern newCONSTSUB()", |
dbda3434 |
46 | sub { Devel::PPPort::Harness::test3(); Devel::PPPort::Harness::test_value_3() == 3} ; |
0a7c7f4f |
47 | |
dbda3434 |
48 | ok "newRV_inc()", sub { Devel::PPPort::Harness::test4()} ; |
0a7c7f4f |
49 | |
dbda3434 |
50 | ok "newRV_noinc()", sub { Devel::PPPort::Harness::test5()} ; |
0a7c7f4f |
51 | |
dbda3434 |
52 | ok "PL_sv_undef", sub { not defined Devel::PPPort::Harness::test6()} ; |
0a7c7f4f |
53 | |
dbda3434 |
54 | ok "PL_sv_yes", sub { Devel::PPPort::Harness::test7()} ; |
0a7c7f4f |
55 | |
dbda3434 |
56 | ok "PL_sv_no", sub { !Devel::PPPort::Harness::test8()} ; |
0a7c7f4f |
57 | |
dbda3434 |
58 | ok "PL_na", sub { Devel::PPPort::Harness::test9("abcd") == 4} ; |
0a7c7f4f |
59 | |
dbda3434 |
60 | ok "boolSV 1", sub { Devel::PPPort::Harness::test10(1) } ; |
0a7c7f4f |
61 | |
dbda3434 |
62 | ok "boolSV 0", sub { ! Devel::PPPort::Harness::test10(0) } ; |
0a7c7f4f |
63 | |
dbda3434 |
64 | ok "newSVpvn", sub { Devel::PPPort::Harness::test11("abcde", 3) eq "abc" } ; |
0a7c7f4f |
65 | |
dbda3434 |
66 | ok "DEFSV", sub { $_ = "Fred"; Devel::PPPort::Harness::test12() eq "Fred" } ; |
0a7c7f4f |
67 | |
dbda3434 |
68 | ok "ERRSV", sub { eval { 1; }; ! Devel::PPPort::Harness::test13() }; |
0a7c7f4f |
69 | |
dbda3434 |
70 | ok "ERRSV", sub { eval { fred() }; Devel::PPPort::Harness::test13() }; |
0a7c7f4f |
71 | |
dbda3434 |
72 | ok "CXT 1", sub { Devel::PPPort::Harness::test14()} ; |
0a7c7f4f |
73 | |
dbda3434 |
74 | ok "CXT 2", sub { Devel::PPPort::Harness::test15()} ; |
0a7c7f4f |
75 | |
76 | __END__ |
77 | # TODO |
78 | |
79 | PERL_VERSION |
80 | PERL_BCDVERSION |
81 | |
82 | PL_stdingv |
83 | PL_hints |
84 | PL_curcop |
85 | PL_curstash |
86 | PL_copline |
87 | PL_Sv |
88 | PL_compiling |
89 | PL_dirty |
90 | |
91 | PTR2IV |
92 | INT2PTR |
93 | |
94 | dTHR |
95 | gv_stashpvn |
96 | NOOP |
97 | SAVE_DEFSV |
98 | PERL_UNUSED_DECL |
99 | dNOOP |