my
$class
=
"Math::BigInt::Subclass"
;
my
$LIB
=
"Math::BigInt::Calc"
;
isa_ok(
$class
->new(123),
'Math::BigInt'
);
isa_ok(Math::BigInt->new(123),
'Math::BigInt'
);
ok(!Math::BigFloat->new(123)->isa(
'Math::BigInt'
),
"A Math::BigFloat isn't a Math::BigInt"
);
{
my
$x
= Math::BigInt->new(Math::BigFloat->new(123));
is(
ref
(
$x
),
'Math::BigInt'
,
'ref($x) = "Math::BigInt"'
);
isa_ok(
$x
,
'Math::BigInt'
);
}
{
my
$x
= Math::BigInt->new(Math::BigFloat::Subclass->new(123));
is(
ref
(
$x
),
'Math::BigInt'
,
'ref($x) = "Math::BigInt"'
);
isa_ok(
$x
,
'Math::BigInt'
);
}
{
my
$x
= Math::BigFloat->new(Math::BigInt->new(123));
is(
ref
(
$x
),
'Math::BigFloat'
,
'ref($x) = "Math::BigFloat"'
);
isa_ok(
$x
,
'Math::BigFloat'
);
}
{
my
$x
= Math::BigFloat->new(Math::BigInt::Subclass->new(123));
is(
ref
(
$x
),
'Math::BigFloat'
,
'ref($x) = "Math::BigFloat"'
);
isa_ok(
$x
,
'Math::BigFloat'
);
}
{
my
$x
= Math::BigFloat->new(9999.99);
my
$y
= Math::BigFloat::BareSubclass->new(9999.99);
ok(
$x
==
$y
,
"Math::BigFloat parent == subclass"
);
ok(
$y
==
$x
,
"Math::BigFloat subclass == parent"
);
}