X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/e14e7c6235a40dbec451146bcb3aaec013d659c9..6d56cbb3e8cfe886d92737087d24e49ff7fd31e0:/test/bdd/steps/steps_db_ops.py?ds=inline diff --git a/test/bdd/steps/steps_db_ops.py b/test/bdd/steps/steps_db_ops.py index 9d443b43..465eed65 100644 --- a/test/bdd/steps/steps_db_ops.py +++ b/test/bdd/steps/steps_db_ops.py @@ -86,10 +86,24 @@ def import_and_index_data_from_place_table(context): """ Import data previously set up in the place table. """ context.nominatim.copy_from_place(context.db) - context.nominatim.run_setup_script('calculate-postcodes') + + # XXX use tool function as soon as it is ported + with context.db.cursor() as cur: + with (context.nominatim.src_dir / 'lib-sql' / 'postcode_tables.sql').open('r') as fd: + cur.execute(fd.read()) + cur.execute(""" + INSERT INTO location_postcode + (place_id, indexed_status, country_code, postcode, geometry) + SELECT nextval('seq_place'), 1, country_code, + upper(trim (both ' ' from address->'postcode')) as pc, + ST_Centroid(ST_Collect(ST_Centroid(geometry))) + FROM placex + WHERE address ? 'postcode' AND address->'postcode' NOT SIMILAR TO '%(,|;)%' + AND geometry IS NOT null + GROUP BY country_code, pc""") # Call directly as the refresh function does not include postcodes. - indexer = Indexer(context.nominatim.test_env['NOMINATIM_DATABASE_DSN'][6:], 1) + indexer = Indexer(context.nominatim.get_libpq_dsn(), 1) indexer.index_full(analyse=False) check_database_integrity(context)