mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 14:53:58 -04:00
selftests: drv-net: replace the rpath helper with Path objects
The single letter + "path" helpers do not have many fans (see Link).
Use a Path object with a better name. test_dir is the replacement
for rpath(), net_lib_dir is a new path of the $ksft/net/lib directory.
The Path() class overloads the "/" operator and can be cast to string
automatically, so to get a path to a file tests can do:
path = env.test_dir / "binary"
Link: https://lore.kernel.org/CA+FuTSemTNVZ5MxXkq8T9P=DYm=nSXcJnL7CJBPZNAT_9UFisQ@mail.gmail.com
Reviewed-by: Willem de Bruijn <willemb@google.com>
Link: https://patch.msgid.link/20250327222315.1098596-2-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
@@ -13,23 +13,18 @@ from .remote import Remote
|
||||
class NetDrvEnvBase:
|
||||
"""
|
||||
Base class for a NIC / host envirnoments
|
||||
|
||||
Attributes:
|
||||
test_dir: Path to the source directory of the test
|
||||
net_lib_dir: Path to the net/lib directory
|
||||
"""
|
||||
def __init__(self, src_path):
|
||||
self.src_path = src_path
|
||||
self.src_path = Path(src_path)
|
||||
self.test_dir = self.src_path.parent.resolve()
|
||||
self.net_lib_dir = (Path(__file__).parent / "../../../../net/lib").resolve()
|
||||
|
||||
self.env = self._load_env_file()
|
||||
|
||||
def rpath(self, path):
|
||||
"""
|
||||
Get an absolute path to a file based on a path relative to the directory
|
||||
containing the test which constructed env.
|
||||
|
||||
For example, if the test.py is in the same directory as
|
||||
a binary (built from helper.c), the test can use env.rpath("helper")
|
||||
to get the absolute path to the binary
|
||||
"""
|
||||
src_dir = Path(self.src_path).parent.resolve()
|
||||
return (src_dir / path).as_posix()
|
||||
|
||||
def _load_env_file(self):
|
||||
env = os.environ.copy()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user