+def test_import_missing_file(temp_db):
+ assert 1 == call_nominatim('import', '--osm-file', 'sfsafegweweggdgw.reh.erh')
+
+
+def test_import_bad_file(temp_db):
+ assert 1 == call_nominatim('import', '--osm-file', '.')
+
+
+def test_import_full(temp_db, mock_func_factory):
+ mocks = [
+ mock_func_factory(nominatim.tools.database_import, 'setup_database_skeleton'),
+ mock_func_factory(nominatim.tools.database_import, 'install_module'),
+ mock_func_factory(nominatim.tools.database_import, 'import_osm_data'),
+ mock_func_factory(nominatim.tools.refresh, 'import_wikipedia_articles'),
+ mock_func_factory(nominatim.tools.database_import, 'truncate_data_tables'),
+ mock_func_factory(nominatim.tools.database_import, 'load_data'),
+ mock_func_factory(nominatim.indexer.indexer.Indexer, 'index_full'),
+ mock_func_factory(nominatim.tools.refresh, 'setup_website'),
+ ]
+
+ cf_mock = mock_func_factory(nominatim.tools.refresh, 'create_functions')
+ mock_func_factory(nominatim.clicmd.setup, 'run_legacy_script')
+
+ assert 0 == call_nominatim('import', '--osm-file', __file__)
+
+ assert cf_mock.called > 1
+
+ for mock in mocks:
+ assert mock.called == 1
+