+def test_freeze_command(mock_func_factory, temp_db):
+ mock_drop = mock_func_factory(nominatim.tools.freeze, 'drop_update_tables')
+ mock_flatnode = mock_func_factory(nominatim.tools.freeze, 'drop_flatnode_file')
+
+ assert 0 == call_nominatim('freeze')
+
+ assert mock_drop.called == 1
+ assert mock_flatnode.called == 1
+
+
+@pytest.mark.parametrize("params", [('--warm', ),
+ ('--warm', '--reverse-only'),
+ ('--warm', '--search-only')])
+def test_admin_command_legacy(mock_func_factory, params):
+ mock_run_legacy = mock_func_factory(nominatim.clicmd.admin, 'run_legacy_script')
+
+ assert 0 == call_nominatim('admin', *params)
+
+ assert mock_run_legacy.called == 1
+
+
+@pytest.mark.parametrize("func, params", [('analyse_indexing', ('--analyse-indexing', ))])
+def test_admin_command_tool(temp_db, mock_func_factory, func, params):
+ mock = mock_func_factory(nominatim.tools.admin, func)
+
+ assert 0 == call_nominatim('admin', *params)
+ assert mock.called == 1
+
+
+def test_admin_command_check_database(mock_func_factory):
+ mock = mock_func_factory(nominatim.tools.check_database, 'check_database')
+
+ assert 0 == call_nominatim('admin', '--check-database')
+ assert mock.called == 1
+
+