Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
76f54f4
Revise README for copyright, project details, and authorship
VictoriaRaven Nov 25, 2025
a31d2eb
Add files via upload
VictoriaRaven Nov 25, 2025
9e671a7
Delete tests/test_gui_dictionary.py
VictoriaRaven Nov 25, 2025
d4a7c3b
Delete tests/test_gui_history.py
VictoriaRaven Nov 25, 2025
ee13922
Implement test mode to hide GUI
VictoriaRaven Nov 25, 2025
1803067
Increase window height in admin panel
VictoriaRaven Nov 25, 2025
99f1c30
Update requirements-dev.txt with new packages
VictoriaRaven Nov 25, 2025
c92d723
Add GitHub Actions workflow for Windows tests
VictoriaRaven Nov 25, 2025
45ccb9e
Add GitHub Actions workflow for Mac tests
VictoriaRaven Nov 25, 2025
9e60fb5
Add GitHub Actions workflow for Ubuntu unit tests
VictoriaRaven Nov 25, 2025
9701f52
Update pytest command to specify test directory
VictoriaRaven Nov 25, 2025
60d04bd
Update pytest command to specify test directory
VictoriaRaven Nov 25, 2025
823583c
added tests folder for clarity on autorun pytests
VictoriaRaven Nov 25, 2025
12ec1da
Rename workflow to 'Auto Run Tests For Ubuntu'
VictoriaRaven Nov 25, 2025
508816c
Improve test feedback for PDF export failure
VictoriaRaven Nov 25, 2025
0264c6b
Refactor font registration to use absolute path
VictoriaRaven Nov 25, 2025
8a4ae70
Fix import path for tkinter in app fixture
VictoriaRaven Nov 25, 2025
1b6ef64
Update conftest.py
VictoriaRaven Nov 25, 2025
a182c7d
Add test_mode parameter to TranslatorApp
VictoriaRaven Nov 26, 2025
072bec2
Add SDL2 installation step in CI workflow
VictoriaRaven Nov 26, 2025
e9958a9
Refactor CI workflow to include Windows and Ubuntu tests
VictoriaRaven Nov 26, 2025
3b7fcd6
Update pytest command for Windows workflow
VictoriaRaven Nov 26, 2025
1a878fb
Refactor pytest command in auto-tests-win.yml
VictoriaRaven Nov 26, 2025
82d19cc
Refine Windows test suite and comments
VictoriaRaven Nov 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions .github/workflows/auto-tests-mac.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
name: Auto Run Tests For Mac with all push

on:
push:
branches:
- '*'
pull_request:
branches:
- '*'
workflow_dispatch:
jobs:
test:
runs-on: macos-latest

steps:
# Step 1: Checkout the repository codes
- name: Checkout Repository
uses: actions/checkout@v3

# Step 2: Install SDL2 (for pygame)
- name: Install SDL2 (for pygame)
run: |
brew install sdl2 sdl2_image sdl2_mixer sdl2_ttf

# Step 3: Set up Python environment
- name: Set up Python
uses: actions/setup-python@v3
with:
python-version: '3.x'

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements-dev.txt

- name: Run all pytests suite
run: |
python -m pytest tests/ -vv --maxfail=1 --disable-warnings
37 changes: 37 additions & 0 deletions .github/workflows/auto-tests-ubu.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
name: Auto Run Tests For Ubuntu with all push

on:
push:
branches:
- '*'
pull_request:
branches:
- '*'
workflow_dispatch:
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v3
with:
python-version: '3.x'

- name: Install dependencies
run: |
sudo apt-get update --fix-missing
sudo apt-get install -y libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev libfreetype6-dev libportmidi-dev libjpeg-dev python3-setuptools python3-tk python3-dev pulseaudio xvfb
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements-dev.txt
python -m pip install sphinx numpy>=1.21.0 "Cython>=3.0,<3.1"

- name: Run all pytests suite with Xvfb (auto-detect video driver) and PulseAudio in tests
run: |
export SDL_AUDIODRIVER=disk # Use disk-based audio driver
export PULSE_SERVER=unix:/run/user/1000/pulse/native # Optional, in case PulseAudio is needed
xvfb-run --auto-servernum python -m pytest tests/ -vv --maxfail=1 --disable-warnings
73 changes: 73 additions & 0 deletions .github/workflows/auto-tests-win.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
name: Auto Run Tests For Windows with all push

on:
push:
branches:
- '*'
pull_request:
branches:
- '*'
workflow_dispatch:
jobs:
# 1) WINDOWS JOB (Runs only Windows-safe tests from GitHub Win Runner)
windows-tests:
name: Windows Tests (Algorithms + DB + Export)
runs-on: windows-latest

steps:
- name: Checkout Repository
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v3
with:
python-version: '3.x'

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements-dev.txt

# Prevent pygame/tkinter to open a window & GUI mocks to run in CI
- name: Configure headless SDL / GUI
run: |
echo "SDL_VIDEODRIVER=dummy" >> $GITHUB_ENV
echo "SDL_AUDIODRIVER=dummy" >> $GITHUB_ENV
echo "PYGAME_HIDE_SUPPORT_PROMPT=1" >> $GITHUB_ENV

# Run ONLY Windows tests as gitHub dislikes test_gui, test_system, test_integrations, test_translation, etc.
- name: Run all pytests suite
run: |
$env:SDL_VIDEODRIVER="dummy"
$env:SDL_AUDIODRIVER="dummy"
python -m pytest -vv --maxfail=1 --disable-warnings tests/test_algorithms.py tests/test_database.py tests/test_email.py tests/test_export_json.py tests/test_export_pdf.py tests/test_validation.py

# 2) UBUNTU JOB (Runs ALL tests with missing: test_gui, test_system, test_integration, test_settings, test_translation anything gui/tk/vm tk)
ubuntu-tests:
name: Ubuntu Full Test Suite
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v3
with:
python-version: '3.x'

- name: Install dependencies
run: |
sudo apt-get update --fix-missing
sudo apt-get install -y libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev libfreetype6-dev libportmidi-dev libjpeg-dev python3-setuptools python3-tk python3-dev pulseaudio xvfb
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements-dev.txt
python -m pip install sphinx numpy>=1.21.0 "Cython>=3.0,<3.1"

- name: Run all pytests suite with Xvfb (auto-detect video driver) and PulseAudio in tests
run: |
export SDL_AUDIODRIVER=disk # Use disk-based audio driver
export PULSE_SERVER=unix:/run/user/1000/pulse/native # Optional, in case PulseAudio is needed
xvfb-run --auto-servernum python -m pytest tests/ -vv --maxfail=1 --disable-warnings
Loading
Loading