zhi ed21b73a43 Add monitor API tests (B8)
- test_monitor.py: 12 test cases covering:
  - API key generation (success, 404, admin-only)
  - heartbeat-v2 endpoint (valid key, invalid key, missing key)
  - API key revocation and validation
  - ServerState data persistence (agents_json, cpu_pct, etc.)
  - Disabled server rejection
- conftest.py: import app.models.monitor for test database setup

All tests passing (pytest -v).
2026-03-19 19:39:15 +00:00
2026-03-19 19:39:15 +00:00

HarborForge.Backend.Test

Independent test suite for HarborForge.Backend.

Setup

# Create virtual environment
python3 -m venv venv
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

Run Tests

# Run all tests
pytest

# Run specific test file
pytest tests/test_auth.py

# Run with verbose output
pytest -v

# Run with coverage (requires pytest-cov)
pytest --cov=../HarborForge.Backend/app --cov-report=html

Test Structure

File Tests Coverage
test_auth.py 5 Login, JWT, protected endpoints
test_users.py 8 User CRUD, permissions
test_projects.py 8 Project CRUD, ownership
test_milestones.py 7 Milestone CRUD, filtering
test_tasks.py 8 Task CRUD, filtering
test_comments.py 5 Comment CRUD, permissions
test_roles.py 9 Role/permission management
test_milestone_actions.py 17 Milestone state machine actions
test_task_transitions.py 34 Task state machine transitions
test_propose.py 19 Propose CRUD, accept/reject/reopen
test_misc.py 14 Notifications, activity log, API keys, dashboard

Total: 134 tests

How It Works

Tests import the backend code from ../HarborForge.Backend/ via path manipulation in conftest.py. Uses SQLite in-memory database for fast, isolated tests.

Description
No description provided
Readme 193 KiB
Languages
Python 100%