Add unit/integration tests for core functionality
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 48/100
Research direction
Start by reading hermeskey-server.py for its socket handling, JSON parsing and error paths, then look at .github/workflows/ci.yml to see where a test step would go. No tests/ directory exists yet, so the framework choice (pytest or bats) is open and needs confirming with maintainers first. Done means a pytest suite covering the server's unit paths runs under python3 -m pytest tests/ and passes in CI.
Written by the indexing model from the issue text.
Description
Issue
The project has no automated tests (unit or integration).
Suggested Test Coverage
Unit Tests
hermeskey-server.py: Socket communication, JSON parsing, error handling- Config parsing and validation
- Model name validation
Integration Tests
- Full transcription flow (mock server)
- Hotkey toggle behavior
- Clipboard operations
Test Framework
Consider:
pytestfor Python testsbashunitorbatsfor shell script tests
CI Integration
Add to .github/workflows/ci.yml:
- name: Run tests
run: |
python3 -m pytest tests/
./tests/shell-test.sh
Benefits
- Catch regressions early
- Enable safer refactoring
- Improve code quality
- Better contributor onboarding
- Dominant language
- Shell
- Stars
- 0
- Forks
- 0
- Avg merge
- 1h 24m
- Merged PRs (30d)
- 5
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from graygarbage/HermesKey
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
graygarbage/HermesKey#21 ·
-
enhancement
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
graygarbage/HermesKey#23 ·
-
enhancement ux
Difficulty 4/5 3-5 days Newbie friendliness 25/100
graygarbage/HermesKey#16 ·
-
enhancement packaging
Difficulty 3/5 Half a day Newbie friendliness 40/100
graygarbage/HermesKey#15 · 1 comment ·
-
enhancement packaging
Difficulty 4/5 3-5 days Newbie friendliness 32/100
graygarbage/HermesKey#14 ·
All issues in graygarbage/HermesKey
Similar issues
-
area: compat area: parsing bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
reubeno/brush#1526 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Micke-K/IntuneManagement#441 ·
-
review-2026-10 Trad En
Difficulty 2/5 Half a day Newbie friendliness 70/100
zigbeefordomoticz/wiki#302 ·
-
help wanted page edit
Difficulty 1/5 1-3 hours Newbie friendliness 62/100
tldr-pages/tldr#24736 · 1 comment ·
Maintainers usually reply within 1 day
-
refactoring
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
UnionInternationalCheminsdeFer/OSDM#1647 ·
Maintainers usually reply within 1 day