from geometry_alias import ALIASES
+
def get_osm2pgsql_options(nominatim_env, fname, append):
return dict(import_file=fname,
- osm2pgsql=str(nominatim_env.build_dir / 'osm2pgsql' / 'osm2pgsql'),
+ osm2pgsql='osm2pgsql',
osm2pgsql_cache=50,
osm2pgsql_style=str(nominatim_env.get_test_config().get_import_style_file()),
- osm2pgsql_style_path=nominatim_env.get_test_config().config_dir,
+ osm2pgsql_style_path=nominatim_env.get_test_config().lib_dir.lua,
threads=1,
dsn=nominatim_env.get_libpq_dsn(),
flatnode_file='',
tablespaces=dict(slim_data='', slim_index='',
main_data='', main_index=''),
- append=append
- )
+ append=append)
def write_opl_file(opl, grid):
if line.startswith('n') and line.find(' x') < 0:
coord = grid.grid_node(int(line[1:].split(' ')[0]))
if coord is None:
- coord = (random.random() * 360 - 180,
- random.random() * 180 - 90)
+ coord = (random.uniform(-180, 180), random.uniform(-90, 90))
line += " x%f y%f" % coord
fd.write(line.encode('utf-8'))
fd.write(b'\n')
return fd.name
+
@given('the lua style file')
def lua_style_file(context):
""" Define a custom style file to use for the import.
@when(u'loading osm data')
def load_osm_file(context):
"""
- Load the given data into a freshly created test data using osm2pgsql.
+ Load the given data into a freshly created test database using osm2pgsql.
No further indexing is done.
The data is expected as attached text in OPL format.
finally:
os.remove(fname)
- ### reintroduce the triggers/indexes we've lost by having osm2pgsql set up place again
+ # reintroduce the triggers/indexes we've lost by having osm2pgsql set up place again
cur = context.db.cursor()
cur.execute("""CREATE TRIGGER place_before_delete BEFORE DELETE ON place
FOR EACH ROW EXECUTE PROCEDURE place_delete()""")
cur.execute("""CREATE TRIGGER place_before_insert BEFORE INSERT ON place
FOR EACH ROW EXECUTE PROCEDURE place_insert()""")
- cur.execute("""CREATE UNIQUE INDEX idx_place_osm_unique on place using btree(osm_id,osm_type,class,type)""")
+ cur.execute("""CREATE UNIQUE INDEX idx_place_osm_unique ON place
+ USING btree(osm_id,osm_type,class,type)""")
context.db.commit()
finally:
os.remove(fname)
+
@when('indexing')
def index_database(context):
"""