X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/1649191ffd8c2daded0c8c34338fd683c75964b3..2e6f5ba7e68d52aff93775ebffcdb5c59f7f65df:/test/php/Nominatim/NearPointTest.php diff --git a/test/php/Nominatim/NearPointTest.php b/test/php/Nominatim/NearPointTest.php index 4d1a5b43..5ad73451 100644 --- a/test/php/Nominatim/NearPointTest.php +++ b/test/php/Nominatim/NearPointTest.php @@ -6,6 +6,8 @@ require '../../lib/NearPoint.php'; class NearPointTest extends \PHPUnit_Framework_TestCase { + + protected function setUp() { } @@ -33,6 +35,10 @@ class NearPointTest extends \PHPUnit_Framework_TestCase $this->assertEquals($aRes['pt']->radius(), 0.1); $this->assertEquals($aRes['query'], ''); + $aRes = NearPoint::extractFromQuery(' -12.456,-78.90 '); + $this->assertEquals($aRes['pt']->lat(), -12.456); + $this->assertEquals($aRes['pt']->lon(), -78.90); + // http://en.wikipedia.org/wiki/Geographic_coordinate_conversion // these all represent the same location $aQueries = array( @@ -65,4 +71,24 @@ class NearPointTest extends \PHPUnit_Framework_TestCase $this->assertEquals(-79.982, $aRes['pt']->lon(), 'degrees decimal ' . $sQuery, 0.01); } } + + public function testWithinSQL() + { + $np = new NearPoint(0.1, 23, 1); + + $this->assertEquals( + 'ST_DWithin(foo, ST_SetSRID(ST_Point(23,0.1),4326), 1.000000)', + $np->withinSQL('foo') + ); + } + + public function testDistanceSQL() + { + $np = new NearPoint(0.1, 23, 1); + + $this->assertEquals( + 'ST_Distance(ST_SetSRID(ST_Point(23,0.1),4326), foo)', + $np->distanceSQL('foo') + ); + } }