5
5
import os
6
6
import subprocess
7
7
import pytest
8
- pytestmark = pytest .mark .skipif (
9
- "sys.version_info >= (3,6,0)" ,
10
- reason = "integration with old versions no longer needed on py3.6+" )
8
+ pytestmark = [
9
+ pytest .mark .skipif (
10
+ "sys.version_info >= (3,6,0)" ,
11
+ reason = "integration with old versions no longer needed on py3.6+" ),
12
+ pytest .mark .xfail (
13
+ sys .platform == 'win32' ,
14
+ reason = "path behaves unexpected on windows ci" ),
15
+ ]
11
16
12
17
13
18
@pytest .fixture (scope = 'session' )
@@ -26,35 +31,37 @@ def makeinstall(version):
26
31
27
32
28
33
SCRIPT = """
34
+ from __future__ import print_function
35
+ import sys
29
36
import setuptools
30
- print(setuptools.__version__)
37
+ print(setuptools.__version__, 'expected', sys.argv[1] )
31
38
import setuptools_scm.version
32
39
from setuptools_scm.__main__ import main
33
40
main()
34
41
"""
35
42
36
43
37
- def check (packagedir , ** env ):
44
+ def check (packagedir , expected_version , ** env ):
38
45
subprocess .check_call (
39
- [sys .executable , '-c' , SCRIPT ],
46
+ [sys .executable , '-c' , SCRIPT , expected_version ],
40
47
env = dict (os .environ , PYTHONPATH = ".:" + str (packagedir ), ** env ))
41
48
42
49
43
50
def test_old_setuptools_fails (get_setuptools_packagedir ):
44
51
packagedir = get_setuptools_packagedir ("0.9.8" )
45
52
with pytest .raises (subprocess .CalledProcessError ):
46
- check (packagedir )
53
+ check (packagedir , "0.9.8" )
47
54
48
55
49
56
def test_old_setuptools_allows_with_warnings (get_setuptools_packagedir ):
50
57
51
58
packagedir = get_setuptools_packagedir ("0.9.8" )
52
59
# filter using warning since in the early python startup
53
60
check (
54
- packagedir ,
61
+ packagedir , "0.9.8" ,
55
62
PYTHONWARNINGS = "once::Warning" )
56
63
57
64
58
65
def test_distlib_setuptools_works (get_setuptools_packagedir ):
59
66
packagedir = get_setuptools_packagedir ("12.0.1" )
60
- check (packagedir )
67
+ check (packagedir , "12.0.1" )
0 commit comments