File tree Expand file tree Collapse file tree 1 file changed +12
-6
lines changed Expand file tree Collapse file tree 1 file changed +12
-6
lines changed Original file line number Diff line number Diff line change
1
+ import atexit
1
2
import os
2
3
import shutil
4
+ from contextlib import ExitStack
5
+ from importlib .resources import as_file , files
3
6
from pathlib import Path
4
7
5
8
import pytest
6
- from pkg_resources import Requirement , ResolutionError , resource_filename
7
9
8
10
9
11
def get_path (filename : str ) -> Path :
12
+ """Get the filepath for a given test file."""
10
13
# normalizing path depending on OS or else it will cause problem when joining path
11
14
filename = os .path .normpath (filename )
12
15
filepath = None
13
16
try :
14
- filepath = resource_filename (Requirement .parse ("cwl-utils" ), filename )
15
- except ResolutionError :
17
+ file_manager = ExitStack ()
18
+ atexit .register (file_manager .close )
19
+ traversable = files ("cwl-utils" ) / filename
20
+ filepath = file_manager .enter_context (as_file (traversable ))
21
+ except ModuleNotFoundError :
16
22
pass
17
- if not filepath or not os . path . isfile ( filepath ):
18
- filepath = os . path . join (os .path .dirname (__file__ ), os .pardir , filename )
19
- return Path ( filepath ) .resolve ()
23
+ if not filepath or not filepath . is_file ( ):
24
+ filepath = Path (os .path .dirname (__file__ ), os .pardir , filename )
25
+ return filepath .resolve ()
20
26
21
27
22
28
def get_data (filename : str ) -> str :
You can’t perform that action at this time.
0 commit comments