Handle Debian's purelib setting
authorJulian Gilbey <jdg@debian.org>
Mon, 5 Sep 2022 20:56:24 +0000 (21:56 +0100)
committerJulian Gilbey <jdg@debian.org>
Mon, 5 Sep 2022 20:56:24 +0000 (21:56 +0100)
Forwarded: not-needed
Last-Update: 2022-06-21

 In Python 3.9 (and presumably earlier), sysconfig.get_path('purelib')
 returns a path which does not exist on Debian, breaking a test.  This
 is already reported as a Debian bug (#998739).  As Python 3.9 is being
 retired from Debian, we just skip the problematic parts of this test.

Gbp-Pq: Name test_convert_utilities.patch

tests_python/test_convert_utilities.py

index 54e664d7eb0e142ca36d5bac2d3718bdc0ecedb0..0fc9398fcc19bf091b7867fc4e13054a35d46f10 100644 (file)
@@ -1,6 +1,6 @@
 # coding: utf-8
 import os.path
-from _pydevd_bundle.pydevd_constants import IS_WINDOWS
+from _pydevd_bundle.pydevd_constants import IS_WINDOWS, IS_PY310_OR_GREATER
 import io
 from _pydev_bundle.pydev_log import log_context
 import pytest
@@ -307,7 +307,8 @@ def test_relative_paths(tmpdir):
         pydevd_file_utils.NORM_PATHS_AND_BASE_CONTAINER.clear()
         pydevd_file_utils.NORM_PATHS_CONTAINER.clear()
         abs_path = pydevd_file_utils.get_abs_path_real_path_and_base_from_file('my_dir/my_file.pyx')[0]
-        assert 'site-packages' in abs_path
+        if IS_PY310_OR_GREATER:
+            assert 'site-packages' in abs_path or 'dist-packages' in abs_path
         assert os.path.normcase(str(tmpdir)) not in abs_path
         assert not pydevd_file_utils.exists('my_dir/my_file.pyx')
 
@@ -321,7 +322,8 @@ def test_relative_paths(tmpdir):
         pydevd_file_utils.NORM_PATHS_AND_BASE_CONTAINER.clear()
         pydevd_file_utils.NORM_PATHS_CONTAINER.clear()
         abs_path = pydevd_file_utils.get_abs_path_real_path_and_base_from_file('my_dir/my_file.pyx')[0]
-        assert 'site-packages' not in abs_path
+        if IS_PY310_OR_GREATER:
+            assert 'site-packages' not in abs_path and 'dist-packages' not in abs_path
         assert str(tmpdir) in abs_path
         assert pydevd_file_utils.exists('my_dir/my_file.pyx')
     finally: