initial upload
This commit is contained in:
41
test/testlagrit/find_lagrit.py
Normal file
41
test/testlagrit/find_lagrit.py
Normal file
@@ -0,0 +1,41 @@
|
||||
import os
|
||||
import sys
|
||||
from distutils.spawn import find_executable
|
||||
from .logger import log
|
||||
|
||||
def find_lagrit(start_dir: str) -> str:
|
||||
"""Attempts to find LaGriT.
|
||||
|
||||
Args:
|
||||
start_dir (str): 'Hint' directory to search from.
|
||||
|
||||
Returns:
|
||||
str: Path to LaGriT.
|
||||
"""
|
||||
|
||||
search_dirs = []
|
||||
exe_candidates = []
|
||||
|
||||
if start_dir.lower().replace('/','').replace('\\','').endswith('test'):
|
||||
for p in ["..", "../src", "../build", "../install"]:
|
||||
search_dirs.append(os.path.join(start_dir, p))
|
||||
|
||||
for p in search_dirs:
|
||||
for exe_name in ["lagrit", "lagrit.exe"]:
|
||||
candidate = find_executable(exe_name, path=p)
|
||||
if candidate is not None:
|
||||
exe_candidates.append(candidate)
|
||||
|
||||
for exe_name in ["lagrit", "lagrit.exe"]:
|
||||
candidate = find_executable(exe_name, path=p)
|
||||
|
||||
if candidate is not None:
|
||||
exe_candidates.append(candidate)
|
||||
|
||||
log.debug("Found LaGriT at: %s" % str(exe_candidates))
|
||||
|
||||
if len(exe_candidates):
|
||||
log.info("Choosing LaGriT at %s" % exe_candidates[0])
|
||||
return exe_candidates[0]
|
||||
|
||||
raise FileNotFoundError("Could not find LaGriT!")
|
||||
Reference in New Issue
Block a user