3
3
4
4
"""
5
5
import os
6
+ from pathlib import Path
6
7
7
8
import pytest
8
9
11
12
12
13
13
14
@pytest .mark .network
14
- def test_debian_egg_name_workaround (script : PipTestEnvironment ) -> None :
15
+ def test_debian_egg_name_workaround (
16
+ script : PipTestEnvironment ,
17
+ shared_data : TestData ,
18
+ tmp_path : Path ,
19
+ ) -> None :
15
20
"""
16
21
We can uninstall packages installed with the pyversion removed from the
17
22
egg-info metadata directory name.
@@ -22,10 +27,17 @@ def test_debian_egg_name_workaround(script: PipTestEnvironment) -> None:
22
27
https://bitbucket.org/ianb/pip/issue/104/pip-uninstall-on-ubuntu-linux
23
28
24
29
"""
25
- result = script .pip ("install" , "INITools==0.2" )
30
+ result = script .run (
31
+ "python" ,
32
+ "setup.py" ,
33
+ "install" ,
34
+ "--single-version-externally-managed" ,
35
+ f"--record={ tmp_path / 'record' } " ,
36
+ cwd = shared_data .src / "simplewheel-2.0" ,
37
+ )
26
38
27
39
egg_info = os .path .join (
28
- script .site_packages , f"INITools-0.2 -py{ pyversion } .egg-info"
40
+ script .site_packages , f"simplewheel-2.0 -py{ pyversion } .egg-info"
29
41
)
30
42
31
43
# Debian only removes pyversion for global installs, not inside a venv
@@ -35,7 +47,7 @@ def test_debian_egg_name_workaround(script: PipTestEnvironment) -> None:
35
47
result .did_create (egg_info , message = f"Couldn't find { egg_info } " )
36
48
37
49
# The Debian no-pyversion version of the .egg-info
38
- mangled = os .path .join (script .site_packages , "INITools-0.2 .egg-info" )
50
+ mangled = os .path .join (script .site_packages , "simplewheel-2.0 .egg-info" )
39
51
result .did_not_create (mangled , message = f"Found unexpected { mangled } " )
40
52
41
53
# Simulate a Debian install by copying the .egg-info to their name for it
@@ -46,7 +58,7 @@ def test_debian_egg_name_workaround(script: PipTestEnvironment) -> None:
46
58
assert os .path .isdir (full_mangled )
47
59
48
60
# Try the uninstall and verify that everything is removed.
49
- result2 = script .pip ("uninstall" , "INITools " , "-y" )
61
+ result2 = script .pip ("uninstall" , "simplewheel " , "-y" )
50
62
assert_all_changes (result , result2 , [script .venv / "build" , "cache" ])
51
63
52
64
0 commit comments