Skip to content

Commit 359d60d

Browse files
committed
fix tests for paths (UNIX/Windows)
- use pathlib for OS-agnostic path comparisons - install pathlib2 in setup.py for Python 2.7
1 parent 3a50dbf commit 359d60d

2 files changed

Lines changed: 16 additions & 4 deletions

File tree

MDAnalysisData/tests/test_base.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@
44

55
from six.moves.urllib.request import urlretrieve
66

7+
try:
8+
import pathlib
9+
except ImportError:
10+
# Python 2.7
11+
import pathlib2 as pathlib
12+
713
import os
814
import os.path
915

@@ -60,11 +66,11 @@ def test_sha256(tmpdir, some_text):
6066
assert checksum == "4446bfb2ec5dedfbd981d059d6005f5144b067b392a00e3bcf98f8302ec8f765"
6167

6268
@pytest.mark.parametrize('data_home,location', [
63-
(None, os.path.expanduser("~/MDAnalysis_data")),
64-
("/tmp/MDAnalysisData", "/tmp/MDAnalysisData"),
69+
(None, pathlib.Path("~/MDAnalysis_data").expanduser()),
70+
(str(pathlib.Path("/tmp/MDAnalysisData")), pathlib.Path("/tmp/MDAnalysisData")),
6571
])
6672
def test_get_data_home(data_home, location):
67-
assert base.get_data_home(data_home=data_home) == location
73+
assert base.get_data_home(data_home=data_home) == str(location)
6874

6975
def test_clear_data_home(tmpdir, some_text):
7076
data_home_path = tmpdir.join("MDAnalysis_data_test")

setup.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import versioneer
2121

2222
import os
23+
import sys
2324
import warnings
2425
import codecs
2526

@@ -129,6 +130,11 @@ def dynamic_author_list():
129130
'Topic :: Software Development :: Libraries :: Python Modules',
130131
]
131132

133+
# Python 2.7 compatibility
134+
test_requirements = ['pytest', 'pytest-mock']
135+
if sys.version_info.major < 3:
136+
test_requirements.append("pathlib2")
137+
132138
setup(name='MDAnalysisData',
133139
version=versioneer.get_version(),
134140
cmdclass=versioneer.get_cmdclass(),
@@ -155,6 +161,6 @@ def dynamic_author_list():
155161
'setuptools',
156162
'tqdm',
157163
],
158-
tests_require=['pytest', 'pytest-mock'],
164+
tests_require=test_requirements,
159165
zip_safe=True,
160166
)

0 commit comments

Comments
 (0)