Overview
We need a comprehensive local integration test suite that validates MeticAI functionality against a real Meticulous machine, real API connections, and real telemetry data. This complements the existing mock test suite which runs in CI.
Background
Currently, our test suite uses mocks for all machine interactions, which is necessary for CI/CD but doesn't verify actual hardware integration. Since we have access to a real Meticulous machine on the local network, we should leverage this for more comprehensive testing.
Requirements
1. Test Infrastructure
2. Connection Tests
3. API Tests (Real Data)
4. Telemetry Tests
5. Command Tests
6. Pour-Over Mode Tests
Implementation Notes
- Integration tests should be clearly separated from unit tests
- Use
@pytest.mark.integration or similar marker
- Add safety guards to prevent tests from affecting production machine state
- Consider test data cleanup/reset procedures
- May need test fixtures that wait for machine readiness
Local Test Execution
# Set environment variables
export METICULOUS_IP=192.168.x.x
export TEST_INTEGRATION=true
# Run integration tests only
cd apps/server && pytest test_integration*.py -v
# Or with marker
cd apps/server && pytest -m integration -v
CI Considerations
- Integration tests should be excluded from GitHub Actions by default
- Consider future option for scheduled integration test runs on self-hosted runner
- Mock tests remain the primary CI validation
Acceptance Criteria
Overview
We need a comprehensive local integration test suite that validates MeticAI functionality against a real Meticulous machine, real API connections, and real telemetry data. This complements the existing mock test suite which runs in CI.
Background
Currently, our test suite uses mocks for all machine interactions, which is necessary for CI/CD but doesn't verify actual hardware integration. Since we have access to a real Meticulous machine on the local network, we should leverage this for more comprehensive testing.
Requirements
1. Test Infrastructure
pytest --integrationor separate test files liketest_integration_*.py)2. Connection Tests
3. API Tests (Real Data)
4. Telemetry Tests
5. Command Tests
6. Pour-Over Mode Tests
Implementation Notes
@pytest.mark.integrationor similar markerLocal Test Execution
CI Considerations
Acceptance Criteria