X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/8d4a86635fe661717a17fe3bb7ff2cde8a784158..228ef1972a915d1f960e021f4496147645e22370:/test/php/Nominatim/SearchContextTest.php diff --git a/test/php/Nominatim/SearchContextTest.php b/test/php/Nominatim/SearchContextTest.php index 2a74dc41..2b575a16 100644 --- a/test/php/Nominatim/SearchContextTest.php +++ b/test/php/Nominatim/SearchContextTest.php @@ -2,16 +2,14 @@ namespace Nominatim; -@define('CONST_BasePath', '../../'); +require_once(CONST_BasePath.'/lib/SearchContext.php'); -require_once '../../lib/SearchContext.php'; - -class SearchContextTest extends \PHPUnit_Framework_TestCase +class SearchContextTest extends \PHPUnit\Framework\TestCase { private $oCtx; - protected function setUp() + protected function setUp(): void { $this->oCtx = new SearchContext(); } @@ -50,4 +48,34 @@ class SearchContextTest extends \PHPUnit_Framework_TestCase $this->oCtx->distanceSQL('foo') ); } + + public function testSetViewboxFromBox() + { + $viewbox = array(30, 20, 40, 50); + $this->oCtx->setViewboxFromBox($viewbox, true); + $this->assertEquals( + 'ST_SetSRID(ST_MakeBox2D(ST_Point(30.000000,20.000000),ST_Point(40.000000,50.000000)),4326)', + $this->oCtx->sqlViewboxSmall + ); + // height: 10 + // width: 30 + $this->assertEquals( + 'ST_SetSRID(ST_MakeBox2D(ST_Point(50.000000,80.000000),ST_Point(20.000000,-10.000000)),4326)', + $this->oCtx->sqlViewboxLarge + ); + + + $viewbox = array(-1.5, -2, 1.5, 2); + $this->oCtx->setViewboxFromBox($viewbox, true); + $this->assertEquals( + 'ST_SetSRID(ST_MakeBox2D(ST_Point(-1.500000,-2.000000),ST_Point(1.500000,2.000000)),4326)', + $this->oCtx->sqlViewboxSmall + ); + // height: 3 + // width: 4 + $this->assertEquals( + 'ST_SetSRID(ST_MakeBox2D(ST_Point(4.500000,6.000000),ST_Point(-4.500000,-6.000000)),4326)', + $this->oCtx->sqlViewboxLarge + ); + } }