|
Packit |
7d6a7d |
################################################################################
|
|
Packit |
7d6a7d |
#
|
|
Packit |
7d6a7d |
# !!!!! Do NOT edit this file directly! !!!!!
|
|
Packit |
7d6a7d |
#
|
|
Packit |
7d6a7d |
# Edit mktests.PL and/or parts/inc/misc instead.
|
|
Packit |
7d6a7d |
#
|
|
Packit |
7d6a7d |
# This file was automatically generated from the definition files in the
|
|
Packit |
7d6a7d |
# parts/inc/ subdirectory by mktests.PL. To learn more about how all this
|
|
Packit |
7d6a7d |
# works, please read the F<HACKERS> file that came with this distribution.
|
|
Packit |
7d6a7d |
#
|
|
Packit |
7d6a7d |
################################################################################
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
BEGIN {
|
|
Packit |
7d6a7d |
if ($ENV{'PERL_CORE'}) {
|
|
Packit |
7d6a7d |
chdir 't' if -d 't';
|
|
Packit |
7d6a7d |
@INC = ('../lib', '../ext/Devel-PPPort/t') if -d '../lib' && -d '../ext';
|
|
Packit |
7d6a7d |
require Config; import Config;
|
|
Packit |
7d6a7d |
use vars '%Config';
|
|
Packit |
7d6a7d |
if (" $Config{'extensions'} " !~ m[ Devel/PPPort ]) {
|
|
Packit |
7d6a7d |
print "1..0 # Skip -- Perl configured without Devel::PPPort module\n";
|
|
Packit |
7d6a7d |
exit 0;
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
else {
|
|
Packit |
7d6a7d |
unshift @INC, 't';
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
sub load {
|
|
Packit |
7d6a7d |
eval "use Test";
|
|
Packit |
7d6a7d |
require 'testutil.pl' if $@;
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
if (48) {
|
|
Packit |
7d6a7d |
load();
|
|
Packit |
7d6a7d |
plan(tests => 48);
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
use Devel::PPPort;
|
|
Packit |
7d6a7d |
use strict;
|
|
Packit |
7d6a7d |
$^W = 1;
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
package Devel::PPPort;
|
|
Packit |
7d6a7d |
use vars '@ISA';
|
|
Packit |
7d6a7d |
require DynaLoader;
|
|
Packit |
7d6a7d |
@ISA = qw(DynaLoader);
|
|
Packit |
7d6a7d |
bootstrap Devel::PPPort;
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
package main;
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
use vars qw($my_sv @my_av %my_hv);
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::boolSV(1));
|
|
Packit |
7d6a7d |
ok(!&Devel::PPPort::boolSV(0));
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
$_ = "Fred";
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::DEFSV(), "Fred");
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::UNDERBAR(), "Fred");
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
if ($] >= 5.009002 && $] < 5.023 && $] < 5.023004) {
|
|
Packit |
7d6a7d |
eval q{
|
|
Packit |
7d6a7d |
no warnings "deprecated";
|
|
Packit |
7d6a7d |
no if $^V > v5.17.9, warnings => "experimental::lexical_topic";
|
|
Packit |
7d6a7d |
my $_ = "Tony";
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::DEFSV(), "Fred");
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::UNDERBAR(), "Tony");
|
|
Packit |
7d6a7d |
};
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
else {
|
|
Packit |
7d6a7d |
ok(1);
|
|
Packit |
7d6a7d |
ok(1);
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
my @r = &Devel::PPPort::DEFSV_modify();
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(@r == 3);
|
|
Packit |
7d6a7d |
ok($r[0], 'Fred');
|
|
Packit |
7d6a7d |
ok($r[1], 'DEFSV');
|
|
Packit |
7d6a7d |
ok($r[2], 'Fred');
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::DEFSV(), "Fred");
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
eval { 1 };
|
|
Packit |
7d6a7d |
ok(!&Devel::PPPort::ERRSV());
|
|
Packit |
7d6a7d |
eval { cannot_call_this_one() };
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::ERRSV());
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::gv_stashpvn('Devel::PPPort', 0));
|
|
Packit |
7d6a7d |
ok(!&Devel::PPPort::gv_stashpvn('does::not::exist', 0));
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::gv_stashpvn('does::not::exist', 1));
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
$my_sv = 1;
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::get_sv('my_sv', 0));
|
|
Packit |
7d6a7d |
ok(!&Devel::PPPort::get_sv('not_my_sv', 0));
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::get_sv('not_my_sv', 1));
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
@my_av = (1);
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::get_av('my_av', 0));
|
|
Packit |
7d6a7d |
ok(!&Devel::PPPort::get_av('not_my_av', 0));
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::get_av('not_my_av', 1));
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
%my_hv = (a=>1);
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::get_hv('my_hv', 0));
|
|
Packit |
7d6a7d |
ok(!&Devel::PPPort::get_hv('not_my_hv', 0));
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::get_hv('not_my_hv', 1));
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
sub my_cv { 1 };
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::get_cv('my_cv', 0));
|
|
Packit |
7d6a7d |
ok(!&Devel::PPPort::get_cv('not_my_cv', 0));
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::get_cv('not_my_cv', 1));
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(Devel::PPPort::dXSTARG(42), 43);
|
|
Packit |
7d6a7d |
ok(Devel::PPPort::dAXMARK(4711), 4710);
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(Devel::PPPort::prepush(), 42);
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(join(':', Devel::PPPort::xsreturn(0)), 'test1');
|
|
Packit |
7d6a7d |
ok(join(':', Devel::PPPort::xsreturn(1)), 'test1:test2');
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(Devel::PPPort::PERL_ABS(42), 42);
|
|
Packit |
7d6a7d |
ok(Devel::PPPort::PERL_ABS(-13), 13);
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(Devel::PPPort::SVf(42), $] >= 5.004 ? '[42]' : '42');
|
|
Packit |
7d6a7d |
ok(Devel::PPPort::SVf('abc'), $] >= 5.004 ? '[abc]' : 'abc');
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::Perl_ppaddr_t("FOO"), "foo");
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::ptrtests(), 63);
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::OpSIBLING_tests(), 0);
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
if ($] >= 5.009000) {
|
|
Packit |
7d6a7d |
eval q{
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::check_HeUTF8("hello"), "norm");
|
|
Packit |
7d6a7d |
ok(&Devel::PPPort::check_HeUTF8("\N{U+263a}"), "utf8");
|
|
Packit |
7d6a7d |
};
|
|
Packit |
7d6a7d |
} else {
|
|
Packit |
7d6a7d |
ok(1, 1);
|
|
Packit |
7d6a7d |
ok(1, 1);
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
@r = &Devel::PPPort::check_c_array();
|
|
Packit |
7d6a7d |
ok($r[0], 4);
|
|
Packit |
7d6a7d |
ok($r[1], "13");
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
ok(!Devel::PPPort::SvRXOK(""));
|
|
Packit |
7d6a7d |
ok(!Devel::PPPort::SvRXOK(bless [], "Regexp"));
|
|
Packit |
7d6a7d |
|
|
Packit |
7d6a7d |
if ($] < 5.005) {
|
|
Packit |
7d6a7d |
skip 'no qr// objects in this perl', 0;
|
|
Packit |
7d6a7d |
skip 'no qr// objects in this perl', 0;
|
|
Packit |
7d6a7d |
} else {
|
|
Packit |
7d6a7d |
my $qr = eval 'qr/./';
|
|
Packit |
7d6a7d |
ok(Devel::PPPort::SvRXOK($qr));
|
|
Packit |
7d6a7d |
ok(Devel::PPPort::SvRXOK(bless $qr, "Surprise"));
|
|
Packit |
7d6a7d |
}
|
|
Packit |
7d6a7d |
|