diff --git a/mpsd-software-environment.py b/mpsd-software-environment.py index 7f662a75fe8d53d35e160aec0489d35fa1752037..0a04af59330532d2f6c1939d11965cd63587ffa4 100755 --- a/mpsd-software-environment.py +++ b/mpsd-software-environment.py @@ -38,11 +38,11 @@ config_vars = { "cmd_log_file": "install.log", # Placeholder installer log file name, placed at mpsd_microarch/logs "installer_log_template": Template( - "${mpsd_release}_${mpsd_microarch}_${date}_{action}.log" + "${mpsd_release}_${mpsd_microarch}_${date}_${action}.log" ), # Placeholder build log file name, placed at mpsd_microarch/logs "build_log_template": Template( - "${mpsd_release}_${mpsd_microarch}_${date}_${toolchain}_{action}.log" + "${mpsd_release}_${mpsd_microarch}_${date}_${toolchain}_${action}.log" ), "metadata_tag_open": "!<meta>", "metadata_tag_close": "</meta>!", diff --git a/tests.py b/tests.py index d440fd3abf03e76c579502a5d4ededa5a3324460..3a717974025bd6c1816f3de9b064262eb6a4778e 100644 --- a/tests.py +++ b/tests.py @@ -5,6 +5,7 @@ import os import shutil import subprocess from pathlib import Path +import datetime import pytest @@ -331,6 +332,49 @@ def test_metadata_logging(tmp_path): assert read_dict[key] == value +def test_create_log_file_names(): + """Test that the log file names are created correctly.""" + create_log_file_names = mod.create_log_file_names + mpsd_release = "dev-23a" + mpsd_microarch = "sandybridge" + date = datetime.datetime.now().replace(microsecond=0).isoformat() + action = "install" + toolchain = "foss2021a" + # test for correct action and toolchain + installer_log_file, build_log_file = create_log_file_names( + mpsd_microarch=mpsd_microarch, + mpsd_release=mpsd_release, + date=date, + action=action, + toolchain=toolchain, + ) + assert installer_log_file == f"{mpsd_release}_{mpsd_microarch}_{date}_{action}.log" + assert ( + build_log_file + == f"{mpsd_release}_{mpsd_microarch}_{date}_{toolchain}_{action}.log" + ) + # test no build log file for incorrect action + installer_log_file, build_log_file = create_log_file_names( + mpsd_microarch=mpsd_microarch, + mpsd_release=mpsd_release, + date=date, + action="status", + toolchain=toolchain, + ) + assert installer_log_file == f"{mpsd_release}_{mpsd_microarch}_{date}_status.log" + assert build_log_file == None + # test no build log file for incorrect toolchain + installer_log_file, build_log_file = create_log_file_names( + mpsd_microarch=mpsd_microarch, + mpsd_release=mpsd_release, + date=date, + action="reinstall", + toolchain=None, + ) + assert installer_log_file == f"{mpsd_release}_{mpsd_microarch}_{date}_reinstall.log" + assert build_log_file == None + + def test_interface(tmp_path): """Test other things (not implemented yet).""" pass