mirror of
https://github.com/osm-search/Nominatim.git
synced 2026-03-10 12:04:06 +00:00
fix syntax errors and update tests
Some of the tests with bad parameters now return a HTTP 400.
This commit is contained in:
@@ -514,7 +514,7 @@
|
|||||||
|
|
||||||
$sSQL .= " order by importance desc";
|
$sSQL .= " order by importance desc";
|
||||||
if (CONST_Debug) { echo "<hr>"; var_dump($sSQL); }
|
if (CONST_Debug) { echo "<hr>"; var_dump($sSQL); }
|
||||||
$aSearchResults = chksql($this->oDB->getAll($sSQL);
|
$aSearchResults = chksql($this->oDB->getAll($sSQL),
|
||||||
"Could not get details for place.");
|
"Could not get details for place.");
|
||||||
|
|
||||||
return $aSearchResults;
|
return $aSearchResults;
|
||||||
@@ -879,7 +879,7 @@
|
|||||||
$sViewboxCentreSQL .= ")'::geometry,4326)";
|
$sViewboxCentreSQL .= ")'::geometry,4326)";
|
||||||
|
|
||||||
$sSQL = "select st_buffer(".$sViewboxCentreSQL.",".(float)($_GET['routewidth']/69).")";
|
$sSQL = "select st_buffer(".$sViewboxCentreSQL.",".(float)($_GET['routewidth']/69).")";
|
||||||
$this->sViewboxSmallSQL = chksql($this->oDB->getOne($sSQL);
|
$this->sViewboxSmallSQL = chksql($this->oDB->getOne($sSQL),
|
||||||
"Could not get small viewbox.");
|
"Could not get small viewbox.");
|
||||||
$this->sViewboxSmallSQL = "'".$this->sViewboxSmallSQL."'::geometry";
|
$this->sViewboxSmallSQL = "'".$this->sViewboxSmallSQL."'::geometry";
|
||||||
|
|
||||||
@@ -1414,9 +1414,8 @@
|
|||||||
$sSQL .= " limit ".$this->iLimit;
|
$sSQL .= " limit ".$this->iLimit;
|
||||||
|
|
||||||
if (CONST_Debug) { var_dump($sSQL); }
|
if (CONST_Debug) { var_dump($sSQL); }
|
||||||
$aViewBoxPlaceIDs = chksql($this->oDB->getAll($sSQL));
|
$aViewBoxPlaceIDs = chksql($this->oDB->getAll($sSQL),
|
||||||
"Could not get places for search terms.");
|
"Could not get places for search terms.");
|
||||||
}
|
|
||||||
//var_dump($aViewBoxPlaceIDs);
|
//var_dump($aViewBoxPlaceIDs);
|
||||||
// Did we have an viewbox matches?
|
// Did we have an viewbox matches?
|
||||||
$aPlaceIDs = array();
|
$aPlaceIDs = array();
|
||||||
@@ -1638,11 +1637,6 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PEAR::IsError($aPlaceIDs))
|
|
||||||
{
|
|
||||||
failInternalError("Could not get place IDs from tokens." ,$sSQL, $aPlaceIDs);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (CONST_Debug) { echo "<br><b>Place IDs:</b> "; var_Dump($aPlaceIDs); }
|
if (CONST_Debug) { echo "<br><b>Place IDs:</b> "; var_Dump($aPlaceIDs); }
|
||||||
|
|
||||||
foreach($aPlaceIDs as $iPlaceID)
|
foreach($aPlaceIDs as $iPlaceID)
|
||||||
|
|||||||
@@ -11,9 +11,6 @@
|
|||||||
|
|
||||||
function osmMapUrl($aFeature)
|
function osmMapUrl($aFeature)
|
||||||
{
|
{
|
||||||
$sLon = $aFeature['error_x'];
|
|
||||||
$sLat = $aFeature['error_y'];
|
|
||||||
|
|
||||||
if (isset($sFeature['error_x']) && isset($sFeature['error_y']))
|
if (isset($sFeature['error_x']) && isset($sFeature['error_y']))
|
||||||
{
|
{
|
||||||
$sBaseUrl = '//www.openstreetmap.org/';
|
$sBaseUrl = '//www.openstreetmap.org/';
|
||||||
@@ -23,8 +20,7 @@
|
|||||||
$sBaseUrl += $sOSMType.'/'.$aFeature['osm_id'];
|
$sBaseUrl += $sOSMType.'/'.$aFeature['osm_id'];
|
||||||
}
|
}
|
||||||
|
|
||||||
return '<a href="'.$sBaseUrl.'?mlat='.$sLat.'&mlon='.$sLon.'">view on osm.org</a>';
|
return '<a href="'.$sBaseUrl.'?mlat='.$aFeature['error_y'].'&mlon='.$aFeature['error_x'].'">view on osm.org</a>';
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ INTERNALFAIL;
|
|||||||
{
|
{
|
||||||
if (!isset($_GET[$sName])) return $bDefault;
|
if (!isset($_GET[$sName])) return $bDefault;
|
||||||
|
|
||||||
if (!preg_match('/^[+-][0-9]+$/', $_GET[$sName]))
|
if (!preg_match('/^[+-]?[0-9]+$/', $_GET[$sName]))
|
||||||
{
|
{
|
||||||
userError("Integer number expected for parameter '$sName'");
|
userError("Integer number expected for parameter '$sName'");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -99,35 +99,35 @@ Feature: Simple Reverse Tests
|
|||||||
| lat
|
| lat
|
||||||
| 51.51
|
| 51.51
|
||||||
When sending an API call reverse
|
When sending an API call reverse
|
||||||
Then exactly 0 results are returned
|
Then a HTTP 400 is returned
|
||||||
|
|
||||||
Scenario: Missing lat parameter
|
Scenario: Missing lat parameter
|
||||||
Given the request parameters
|
Given the request parameters
|
||||||
| lon
|
| lon
|
||||||
| -79.39114
|
| -79.39114
|
||||||
When sending an API call reverse
|
When sending an API call reverse
|
||||||
Then exactly 0 results are returned
|
Then a HTTP 400 is returned
|
||||||
|
|
||||||
Scenario: Missing osm_id parameter
|
Scenario: Missing osm_id parameter
|
||||||
Given the request parameters
|
Given the request parameters
|
||||||
| osm_type
|
| osm_type
|
||||||
| N
|
| N
|
||||||
When sending an API call reverse
|
When sending an API call reverse
|
||||||
Then exactly 0 results are returned
|
Then a HTTP 400 is returned
|
||||||
|
|
||||||
Scenario: Missing osm_type parameter
|
Scenario: Missing osm_type parameter
|
||||||
Given the request parameters
|
Given the request parameters
|
||||||
| osm_id
|
| osm_id
|
||||||
| 3498564
|
| 3498564
|
||||||
When sending an API call reverse
|
When sending an API call reverse
|
||||||
Then exactly 0 results are returned
|
Then a HTTP 400 is returned
|
||||||
|
|
||||||
Scenario Outline: Bad format for lat or lon
|
Scenario Outline: Bad format for lat or lon
|
||||||
Given the request parameters
|
Given the request parameters
|
||||||
| lat | lon |
|
| lat | lon |
|
||||||
| <lat> | <lon> |
|
| <lat> | <lon> |
|
||||||
When sending an API call reverse
|
When sending an API call reverse
|
||||||
Then exactly 0 results are returned
|
Then a HTTP 400 is returned
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
| lat | lon
|
| lat | lon
|
||||||
@@ -137,4 +137,4 @@ Feature: Simple Reverse Tests
|
|||||||
| 48.966.0 | 8.4482
|
| 48.966.0 | 8.4482
|
||||||
| 48.966 | 8.448.2
|
| 48.966 | 8.448.2
|
||||||
| Nan | 8.448
|
| Nan | 8.448
|
||||||
| 48.966 | Nan
|
| 48.966 | Nan
|
||||||
|
|||||||
@@ -187,7 +187,6 @@ Feature: Search queries
|
|||||||
| 0.0
|
| 0.0
|
||||||
| 0.5
|
| 0.5
|
||||||
| 999
|
| 999
|
||||||
| nan
|
|
||||||
|
|
||||||
Scenario Outline: Search with polygon threshold (xml)
|
Scenario Outline: Search with polygon threshold (xml)
|
||||||
Given the request parameters
|
Given the request parameters
|
||||||
@@ -203,7 +202,14 @@ Feature: Search queries
|
|||||||
| 0.0
|
| 0.0
|
||||||
| 0.5
|
| 0.5
|
||||||
| 999
|
| 999
|
||||||
| nan
|
|
||||||
|
Scenario Outline: Search with invalid polygon threshold (xml)
|
||||||
|
Given the request parameters
|
||||||
|
| polygon_geojson | polygon_threshold
|
||||||
|
| 1 | <th>
|
||||||
|
When sending xml search query "switzerland"
|
||||||
|
Then a HTTP 400 is returned
|
||||||
|
|
||||||
|
|
||||||
Scenario Outline: Search with extratags
|
Scenario Outline: Search with extratags
|
||||||
Given the request parameters
|
Given the request parameters
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ Feature: Simple Tests
|
|||||||
| format
|
| format
|
||||||
| fd$#
|
| fd$#
|
||||||
When sending search query "Berlin"
|
When sending search query "Berlin"
|
||||||
Then the result is valid html
|
Then a HTTP 400 is returned
|
||||||
|
|
||||||
Scenario Outline: Simple Searches
|
Scenario Outline: Simple Searches
|
||||||
When sending search query "<query>"
|
When sending search query "<query>"
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
require_once(CONST_BasePath.'/lib/init-website.php');
|
require_once(CONST_BasePath.'/lib/init-website.php');
|
||||||
require_once(CONST_BasePath.'/lib/log.php');
|
require_once(CONST_BasePath.'/lib/log.php');
|
||||||
require_once(CONST_BasePath.'/lib/PlaceLookup.php');
|
require_once(CONST_BasePath.'/lib/PlaceLookup.php');
|
||||||
|
require_once(CONST_BasePath.'/lib/output.php');
|
||||||
|
|
||||||
if (strpos(CONST_BulkUserIPs, ','.$_SERVER["REMOTE_ADDR"].',') !== false)
|
if (strpos(CONST_BulkUserIPs, ','.$_SERVER["REMOTE_ADDR"].',') !== false)
|
||||||
{
|
{
|
||||||
@@ -38,7 +39,7 @@
|
|||||||
$oPlaceLookup->setIncludeExtraTags(getParamBool('extratags', false));
|
$oPlaceLookup->setIncludeExtraTags(getParamBool('extratags', false));
|
||||||
$oPlaceLookup->setIncludeNameDetails(getParamBool('namedetails', false));
|
$oPlaceLookup->setIncludeNameDetails(getParamBool('namedetails', false));
|
||||||
|
|
||||||
$aOsmIds = explode(',', $getParamString('osm_ids', ''));
|
$aOsmIds = explode(',', getParamString('osm_ids', ''));
|
||||||
|
|
||||||
if (count($aOsmIds) > CONST_Places_Max_ID_count)
|
if (count($aOsmIds) > CONST_Places_Max_ID_count)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -56,8 +56,8 @@
|
|||||||
$hLog = logStart($oDB, 'reverse', $_SERVER['QUERY_STRING'], $aLangPrefOrder);
|
$hLog = logStart($oDB, 'reverse', $_SERVER['QUERY_STRING'], $aLangPrefOrder);
|
||||||
|
|
||||||
|
|
||||||
$sOsmType = getParamSet('osmtype', array('N', 'W', 'R'));
|
$sOsmType = getParamSet('osm_type', array('N', 'W', 'R'));
|
||||||
$iOsmId = getParamInt('osmid', -1);
|
$iOsmId = getParamInt('osm_id', -1);
|
||||||
$fLat = getParamFloat('lat');
|
$fLat = getParamFloat('lat');
|
||||||
$fLon = getParamFloat('lon');
|
$fLon = getParamFloat('lon');
|
||||||
if ($sOsmType && $iOsmId > 0)
|
if ($sOsmType && $iOsmId > 0)
|
||||||
|
|||||||
Reference in New Issue
Block a user