Before submitting a pull request make sure that the following tests pass:
```
- cd tests
- NOMINATIM_DIR=<builddir> lettuce -t -Fail -t -Tiger features/db features/osm2pgsql
+ cd test/bdd
+ behave -DBUILDDIR=<builddir> db osm2pgsql
```
```
- cd test-php
+ cd test/php
phpunit ./
```
The following instructions explain how to create a Nominatim database
from an OSM planet file and how to keep the database up to date. It
-is assumed that you have already sucessfully installed the Nominatim
+is assumed that you have already successfully installed the Nominatim
software itself, if not return to the [installation page](Installation.md).
Configuration setup in settings/local.php
int expire_tiles_zoom_min; /* Minimum zoom level for tile expiry list */
const char *expire_tiles_filename; /* File name to output expired tiles list to */
int enable_hstore; /* add an additional hstore column with objects key/value pairs */
- int enable_multi; /* Output multi-geometries intead of several simple geometries */
+ int enable_multi; /* Output multi-geometries instead of several simple geometries */
char** hstore_columns; /* list of columns that should be written into their own hstore column */
int n_hstore_columns; /* number of hstore columns */
};
@APIDB
Feature: Parameters for Reverse API
- Testing diferent parameter options for reverse API.
+ Testing different parameter options for reverse API.
Scenario Outline: Reverse-geocoding without address
When sending <format> reverse coordinates 53.603,10.041
@DB
Feature: Parenting of objects
- Tests that the correct parent is choosen
+ Tests that the correct parent is chosen
Scenario: Address inherits postcode from its street unless it has a postcode
Given the scene roads-with-pois
col.db_insert(cur)
context.db.commit()
- context.nominatim.run_update_script('index')
+
+ while True:
+ context.nominatim.run_update_script('index')
+
+ cur = context.db.cursor()
+ cur.execute("SELECT 'a' FROM placex WHERE indexed_status != 0 LIMIT 1")
+ if cur.rowcount == 0:
+ break
@when("marking for delete (?P<oids>.*)")
def delete_places(context, oids):
where, params = NominatimID(oid).table_select()
cur.execute("DELETE FROM place WHERE " + where, params)
context.db.commit()
- context.nominatim.run_update_script('index')
+
+ while True:
+ context.nominatim.run_update_script('index')
+
+ cur = context.db.cursor()
+ cur.execute("SELECT 'a' FROM placex WHERE indexed_status != 0 LIMIT 1")
+ if cur.rowcount == 0:
+ break
@then("placex contains(?P<exact> exactly)?")
def check_placex_contents(context, exact):