X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/efafa5271957fb54b356ec1c90e8613f14de40d4..19cbb261b431088f82461749635b86f070b7444f:/test/python/tokenizer/sanitizers/test_strip_brace_terms.py?ds=sidebyside diff --git a/test/python/tokenizer/sanitizers/test_strip_brace_terms.py b/test/python/tokenizer/sanitizers/test_strip_brace_terms.py index c37562dd..7fa0a018 100644 --- a/test/python/tokenizer/sanitizers/test_strip_brace_terms.py +++ b/test/python/tokenizer/sanitizers/test_strip_brace_terms.py @@ -10,41 +10,47 @@ Tests for the sanitizer that handles braced suffixes. import pytest from nominatim.tokenizer.place_sanitizer import PlaceSanitizer -from nominatim.indexer.place_info import PlaceInfo +from nominatim.data.place_info import PlaceInfo -def run_sanitizer_on(**kwargs): - place = PlaceInfo({'name': kwargs}) - name, _ = PlaceSanitizer([{'step': 'strip-brace-terms'}]).process_names(place) +class TestStripBrace: - return sorted([(p.name, p.kind, p.suffix) for p in name]) + @pytest.fixture(autouse=True) + def setup_country(self, def_config): + self.config = def_config + def run_sanitizer_on(self, **kwargs): + place = PlaceInfo({'name': kwargs}) + name, _ = PlaceSanitizer([{'step': 'strip-brace-terms'}], self.config).process_names(place) -def test_no_braces(): - assert run_sanitizer_on(name='foo', ref='23') == [('23', 'ref', None), - ('foo', 'name', None)] + return sorted([(p.name, p.kind, p.suffix) for p in name]) -def test_simple_braces(): - assert run_sanitizer_on(name='Halle (Saale)', ref='3')\ - == [('3', 'ref', None), ('Halle', 'name', None), ('Halle (Saale)', 'name', None)] - assert run_sanitizer_on(name='ack ( bar')\ - == [('ack', 'name', None), ('ack ( bar', 'name', None)] + def test_no_braces(self): + assert self.run_sanitizer_on(name='foo', ref='23') == [('23', 'ref', None), + ('foo', 'name', None)] -def test_only_braces(): - assert run_sanitizer_on(name='(maybe)') == [('(maybe)', 'name', None)] + def test_simple_braces(self): + assert self.run_sanitizer_on(name='Halle (Saale)', ref='3')\ + == [('3', 'ref', None), ('Halle', 'name', None), ('Halle (Saale)', 'name', None)] + assert self.run_sanitizer_on(name='ack ( bar')\ + == [('ack', 'name', None), ('ack ( bar', 'name', None)] -def test_double_braces(): - assert run_sanitizer_on(name='a((b))') == [('a', 'name', None), - ('a((b))', 'name', None)] - assert run_sanitizer_on(name='a (b) (c)') == [('a', 'name', None), - ('a (b) (c)', 'name', None)] + def test_only_braces(self): + assert self.run_sanitizer_on(name='(maybe)') == [('(maybe)', 'name', None)] -def test_no_names(): + def test_double_braces(self): + assert self.run_sanitizer_on(name='a((b))') == [('a', 'name', None), + ('a((b))', 'name', None)] + assert self.run_sanitizer_on(name='a (b) (c)') == [('a', 'name', None), + ('a (b) (c)', 'name', None)] + + +def test_no_names(def_config): place = PlaceInfo({'address': {'housenumber': '3'}}) - name, address = PlaceSanitizer([{'step': 'strip-brace-terms'}]).process_names(place) + name, address = PlaceSanitizer([{'step': 'strip-brace-terms'}], def_config).process_names(place) assert not name assert len(address) == 1