7 Commits
Author SHA1 Message Date
Storm Dragon dfd3e8cb37 Septemberrelease candidate 1. 2026-09-03 14:32:08 -04:00
Storm Dragon 454b0f34c4 Release candidate. 2026-08-15 17:55:05 -04:00
Storm Dragon 14227981cb Release 2026.08.06 2026-08-06 13:51:18 -04:00
Storm Dragon 5cf7a11260 Release candidate after bug fixes. 2026-07-30 04:57:29 -04:00
Storm Dragon 312cb46f22 Release candidate. 2026-07-29 19:12:49 -04:00
Storm Dragon e180fd53fa Release candidate. 2026-07-19 16:02:24 -04:00
Storm Dragon 81f1757357 Release candidate. 2026-07-15 00:20:57 -04:00
5 changed files with 11 additions and 33 deletions
-9
View File
@@ -59,15 +59,6 @@ pytest tests/ --cov=src/fenrirscreenreader --cov-report=html
can run multiple foreground X terminal instances. Ask user to run tests that
need real Fenrir instances or root access.
### Packaging Test Layouts
- Debian `pybuild` runs copied tests from a nested `.pybuild/.../build` tree
and may omit top-level source directories such as `config/`.
- Tests that inspect source resources must locate them by walking upward from
the resolved test path; do not assume a fixed `Path(__file__).parents[N]`.
- Packaging-sensitive test changes should be checked from both the source tree
and a representative nested build directory under `/tmp`.
## Creating Commands
Use `commands/command_template.py` as base. Required methods:
+2 -2
View File
@@ -4,5 +4,5 @@
# Fenrir TTY screen reader
# By Chrys, Storm Dragon, and contributors.
version = "2026.09.12"
code_name = "testing"
version = "2026.09.03"
code_name = "master"
-16
View File
@@ -1,16 +0,0 @@
from configparser import ConfigParser
from pathlib import Path
def load_source_settings():
"""Load settings.conf from a checkout or a nested package build tree."""
for parent in Path(__file__).resolve().parents:
settings_path = parent / "config/settings/settings.conf"
if settings_path.is_file():
config = ConfigParser(interpolation=None)
config.read(settings_path)
return config
raise FileNotFoundError(
"Could not find config/settings/settings.conf above the test directory"
)
+4 -3
View File
@@ -1,3 +1,5 @@
from configparser import ConfigParser
from pathlib import Path
from unittest.mock import Mock
import pytest
@@ -5,8 +7,6 @@ import pytest
from fenrirscreenreader.core.settingsData import settings_data
from fenrirscreenreader.soundDriver import genericDriver
from .config_test_utils import load_source_settings
class SettingsManager:
def __init__(self, settings):
@@ -26,7 +26,8 @@ def _sound_driver(settings):
def _configured_sound_settings():
config = load_source_settings()
config = ConfigParser(interpolation=None)
config.read(Path(__file__).parents[2] / "config/settings/settings.conf")
return {
"generic_play_file_command": config.get(
"sound", "generic_play_file_command"
+5 -3
View File
@@ -1,10 +1,11 @@
from configparser import ConfigParser
from pathlib import Path
import pytest
from fenrirscreenreader.core.settingsData import settings_data
from fenrirscreenreader.speechDriver import genericDriver
from .config_test_utils import load_source_settings
def test_build_speech_command_replaces_snake_case_placeholders():
speech_driver = genericDriver.driver()
@@ -42,7 +43,8 @@ def test_build_speech_command_replaces_snake_case_placeholders():
def _configured_speech_command():
config = load_source_settings()
config = ConfigParser(interpolation=None)
config.read(Path(__file__).parents[2] / "config/settings/settings.conf")
return config.get("speech", "generic_speech_command")