#!/usr/bin/perl -w
use
5.004;
plan
tests
=> 31;
BEGIN { MyTestHelpers::nowarnings(); }
{
my
$want_version
= 129;
ok (
$Math::PlanePath::QuadricIslands::VERSION
,
$want_version
,
'VERSION variable'
);
ok (Math::PlanePath::QuadricIslands->VERSION,
$want_version
,
'VERSION class method'
);
ok (
eval
{ Math::PlanePath::QuadricIslands->VERSION(
$want_version
); 1 },
1,
"VERSION class check $want_version"
);
my
$check_version
=
$want_version
+ 1000;
ok (!
eval
{ Math::PlanePath::QuadricIslands->VERSION(
$check_version
); 1 },
1,
"VERSION class check $check_version"
);
my
$path
= Math::PlanePath::QuadricIslands->new;
ok (
$path
->VERSION,
$want_version
,
'VERSION object method'
);
ok (
eval
{
$path
->VERSION(
$want_version
); 1 },
1,
"VERSION object check $want_version"
);
ok (!
eval
{
$path
->VERSION(
$check_version
); 1 },
1,
"VERSION object check $check_version"
);
}
{
my
$path
= Math::PlanePath::QuadricIslands->new;
ok (
$path
->n_start, 1,
'n_start()'
);
ok (
$path
->x_negative, 1,
'x_negative()'
);
ok (
$path
->y_negative, 1,
'y_negative()'
);
ok (
$path
->x_minimum,
undef
,
'x_minimum()'
);
ok (
$path
->y_minimum,
undef
,
'y_minimum()'
);
}
{
my
$path
= Math::PlanePath::QuadricIslands->new;
{
my
(
$n_lo
,
$n_hi
) =
$path
->level_to_n_range(0);
ok (
$n_lo
, 1);
ok (
$n_hi
, 4); }
{
my
(
$n_lo
,
$n_hi
) =
$path
->level_to_n_range(1);
ok (
$n_lo
, 5);
ok (
$n_hi
, 36); }
{
my
(
$n_lo
,
$n_hi
) =
$path
->level_to_n_range(2);
ok (
$n_lo
, 37); }
foreach
my
$level
(0 .. 6) {
my
(
$n_lo
,
$n_hi
) =
$path
->level_to_n_range(
$level
);
my
(
$x_lo
,
$y_lo
) =
$path
->n_to_xy(
$n_lo
);
my
(
$x_hi
,
$y_hi
) =
$path
->n_to_xy(
$n_hi
);
my
$dx
=
$x_hi
-
$x_lo
;
my
$dy
=
$y_hi
-
$y_lo
;
ok(
$dx
,0);
ok(
$dy
,1);
}
}
exit
0;