From c02343e68874efd57c2e312cb6b7e4f02222e43a Mon Sep 17 00:00:00 2001 From: xXJSONDeruloXx Date: Tue, 22 Jul 2025 11:11:44 -0400 Subject: add workaround env vars, rm old tests --- tests/test_dll_detection.py | 129 -------------------------------------------- 1 file changed, 129 deletions(-) delete mode 100644 tests/test_dll_detection.py (limited to 'tests/test_dll_detection.py') diff --git a/tests/test_dll_detection.py b/tests/test_dll_detection.py deleted file mode 100644 index e50d733..0000000 --- a/tests/test_dll_detection.py +++ /dev/null @@ -1,129 +0,0 @@ -""" -Tests for the DLL detection service. -""" - -import os -import tempfile -from pathlib import Path -from unittest.mock import Mock, patch - -from lsfg_vk.dll_detection import DllDetectionService -from lsfg_vk.constants import LOSSLESS_DLL_NAME - - -def test_dll_detection_via_env_variable(): - """Test DLL detection via LSFG_DLL_PATH environment variable""" - mock_logger = Mock() - - with tempfile.TemporaryDirectory() as temp_dir: - # Create a fake DLL file - dll_path = Path(temp_dir) / LOSSLESS_DLL_NAME - dll_path.write_text("fake dll content") - - service = DllDetectionService(logger=mock_logger) - - # Test with environment variable set - with patch.dict(os.environ, {"LSFG_DLL_PATH": str(dll_path)}): - result = service.check_lossless_scaling_dll() - - assert result["detected"] is True - assert result["path"] == str(dll_path) - assert "LSFG_DLL_PATH" in result["source"] - assert result["error"] is None - - -def test_dll_detection_via_xdg_data_home(): - """Test DLL detection via XDG_DATA_HOME""" - mock_logger = Mock() - - with tempfile.TemporaryDirectory() as temp_dir: - # Create the expected directory structure - steam_dir = Path(temp_dir) / "Steam" / "steamapps" / "common" / "Lossless Scaling" - steam_dir.mkdir(parents=True) - - dll_path = steam_dir / LOSSLESS_DLL_NAME - dll_path.write_text("fake dll content") - - service = DllDetectionService(logger=mock_logger) - - # Test with XDG_DATA_HOME set, no LSFG_DLL_PATH - with patch.dict(os.environ, {"XDG_DATA_HOME": temp_dir}, clear=True): - result = service.check_lossless_scaling_dll() - - assert result["detected"] is True - assert result["path"] == str(dll_path) - assert "XDG_DATA_HOME" in result["source"] - assert result["error"] is None - - -def test_dll_detection_via_home_local_share(): - """Test DLL detection via HOME/.local/share""" - mock_logger = Mock() - - with tempfile.TemporaryDirectory() as temp_dir: - # Create the expected directory structure - steam_dir = Path(temp_dir) / ".local" / "share" / "Steam" / "steamapps" / "common" / "Lossless Scaling" - steam_dir.mkdir(parents=True) - - dll_path = steam_dir / LOSSLESS_DLL_NAME - dll_path.write_text("fake dll content") - - service = DllDetectionService(logger=mock_logger) - - # Test with HOME set, no other env vars - env = {"HOME": temp_dir} - with patch.dict(os.environ, env, clear=True): - result = service.check_lossless_scaling_dll() - - assert result["detected"] is True - assert result["path"] == str(dll_path) - assert "HOME/.local/share" in result["source"] - assert result["error"] is None - - -def test_dll_detection_not_found(): - """Test DLL detection when DLL is not found""" - mock_logger = Mock() - - service = DllDetectionService(logger=mock_logger) - - # Test with no environment variables set - with patch.dict(os.environ, {}, clear=True): - result = service.check_lossless_scaling_dll() - - assert result["detected"] is False - assert result["path"] is None - assert result["source"] is None - assert "not found" in result["message"] - assert result["error"] is None - - -def test_dll_detection_priority(): - """Test that LSFG_DLL_PATH takes priority over other locations""" - mock_logger = Mock() - - with tempfile.TemporaryDirectory() as temp_dir1, tempfile.TemporaryDirectory() as temp_dir2: - # Create DLL in both locations - dll_path1 = Path(temp_dir1) / LOSSLESS_DLL_NAME - dll_path1.write_text("fake dll content 1") - - steam_dir = Path(temp_dir2) / "Steam" / "steamapps" / "common" / "Lossless Scaling" - steam_dir.mkdir(parents=True) - dll_path2 = steam_dir / LOSSLESS_DLL_NAME - dll_path2.write_text("fake dll content 2") - - service = DllDetectionService(logger=mock_logger) - - # Set both environment variables - env = { - "LSFG_DLL_PATH": str(dll_path1), - "XDG_DATA_HOME": temp_dir2 - } - - with patch.dict(os.environ, env, clear=True): - result = service.check_lossless_scaling_dll() - - # Should prefer LSFG_DLL_PATH - assert result["detected"] is True - assert result["path"] == str(dll_path1) - assert "LSFG_DLL_PATH" in result["source"] -- cgit v1.2.3