]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/python/test_tools_sp_csv_loader.py
US TIGER data 2021 released
[nominatim.git] / test / python / test_tools_sp_csv_loader.py
index aac8593b65ec771d91a6fa5630ca55e0f792115f..80d5989e92a89fba67160acba63dfa46a8d08cf7 100644 (file)
@@ -1,22 +1,19 @@
 """
     Tests for methods of the SPCsvLoader class.
 """
-from nominatim.errors import UsageError
 import pytest
-from pathlib import Path
-from nominatim.tools.special_phrases.sp_csv_loader import SPCsvLoader
 
-TEST_BASE_DIR = Path(__file__) / '..' / '..'
+from nominatim.errors import UsageError
+from nominatim.tools.special_phrases.sp_csv_loader import SPCsvLoader
 
 def test_parse_csv(sp_csv_loader):
     """
         Test method parse_csv()
         Should return the right SpecialPhrase objects.
     """
-    phrases = sp_csv_loader.parse_csv(sp_csv_loader.csv_path)
+    phrases = sp_csv_loader.parse_csv()
     assert check_phrases_content(phrases)
 
-
 def test_next(sp_csv_loader):
     """
         Test objects returned from the next() method.
@@ -33,10 +30,10 @@ def test_check_csv_validity(sp_csv_loader):
         different exception than .csv is given.
     """
     sp_csv_loader.csv_path = 'test.csv'
-    sp_csv_loader.check_csv_validity(sp_csv_loader.csv_path)
+    sp_csv_loader.check_csv_validity()
     sp_csv_loader.csv_path = 'test.wrong'
     with pytest.raises(UsageError):
-        assert sp_csv_loader.check_csv_validity(sp_csv_loader.csv_path)
+        assert sp_csv_loader.check_csv_validity()
 
 def check_phrases_content(phrases):
     """
@@ -44,16 +41,20 @@ def check_phrases_content(phrases):
         the right phrases of the sp_csv_test.csv special phrases.
     """
     return  len(phrases) > 1 \
-            and any(p.p_label == 'Billboard' and p.p_class == 'advertising' and p.p_type == 'billboard'
+            and any(p.p_label == 'Billboard'
+                    and p.p_class == 'advertising'
+                    and p.p_type == 'billboard'
                     and p.p_operator == '-' for p in phrases) \
-            and any(p.p_label == 'Zip Lines' and p.p_class == 'aerialway' and p.p_type == 'zip_line'
+            and any(p.p_label == 'Zip Lines'
+                    and p.p_class == 'aerialway'
+                    and p.p_type == 'zip_line'
                     and p.p_operator == '-' for p in phrases)
 
 @pytest.fixture
-def sp_csv_loader():
+def sp_csv_loader(src_dir):
     """
         Return an instance of SPCsvLoader.
     """
-    csv_path = (TEST_BASE_DIR / 'testdata' / 'sp_csv_test.csv').resolve()
+    csv_path = (src_dir / 'test' / 'testdata' / 'sp_csv_test.csv').resolve()
     loader = SPCsvLoader(csv_path)
     return loader