View source
<?php
require_once drupal_get_path('module', 'location') . '/earth.inc';
include_once 'location_test_case.php';
class LocationEarthTest extends DrupalTestCase {
function get_info() {
return array(
'name' => t('Location module earth.inc tests'),
'desc' => t('Test calculations.'),
'group' => 'Location Module',
);
}
function setUp() {
}
function testXYZ() {
$expected = array(
5076436.1926031,
3086400.2318368,
2312685.5571307,
);
$result = earth_xyz(31.299, 21.4);
$this
->assert(new ArrayWithinMarginExpectation($expected, 0.01), $result);
$expected = array(
1179389.7524227,
605469.92806515,
6217918.5984722,
);
$result = earth_xyz(27.174858, 78.042383);
$this
->assert(new ArrayWithinMarginExpectation($expected, 0.01), $result, 'Taj Mahal: %s');
$expected = array(
-1667195.89356,
-1256280.4293852,
-6006637.16009,
);
$result = earth_xyz(36.999084, -109.045223);
$this
->assert(new ArrayWithinMarginExpectation($expected, 0.01), $result, 'Four Corners: %s');
$expected = array(
-335727.75631839,
-2620765.1318567,
-5785664.2896111,
);
$result = earth_xyz(82.7, -114.4);
$this
->assert(new ArrayWithinMarginExpectation($expected, 0.01), $result, 'North Magnetic Pole: %s');
$expected = array(
-976074.7749119099,
-942362.77881868,
-6211268.2459008,
);
$result = earth_xyz(43.993266, -102.241794);
$this
->assert(new ArrayWithinMarginExpectation($expected, 0.01), $result, 'Wall Drug: %s');
}
}