feat(server): support running medium tests in devcontainer (#23882)

* Support running medium tests in devcontainer

* Add "pnpm run test:medium" to the devcontainer doc

* Fix indentation for inline comments in the doc

* Fix a couple of words in the doc
This commit is contained in:
Sergey Katsubo 2025-11-19 06:03:21 +03:00 committed by GitHub
parent 76c73549ae
commit 5e482dabc6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 25 additions and 18 deletions

View File

@ -29,6 +29,12 @@
] ]
} }
}, },
"features": {
"ghcr.io/devcontainers/features/docker-in-docker:2": {
// https://github.com/devcontainers/features/issues/1466
"moby": false
}
},
"forwardPorts": [3000, 9231, 9230, 2283], "forwardPorts": [3000, 9231, 9230, 2283],
"portsAttributes": { "portsAttributes": {
"3000": { "3000": {

View File

@ -256,7 +256,7 @@ The Dev Container supports multiple ways to run tests:
```bash ```bash
# Run tests for specific components # Run tests for specific components
make test-server # Server unit tests make test-server # Server unit tests
make test-web # Web unit tests make test-web # Web unit tests
make test-e2e # End-to-end tests make test-e2e # End-to-end tests
make test-cli # CLI tests make test-cli # CLI tests
@ -268,12 +268,13 @@ make test-all # Runs tests for all components
make test-medium-dev # End-to-end tests make test-medium-dev # End-to-end tests
``` ```
#### Using NPM Directly #### Using PNPM Directly
```bash ```bash
# Server tests # Server tests
cd /workspaces/immich/server cd /workspaces/immich/server
pnpm test # Run all tests pnpm test # Run all tests
pnpm run test:medium # Medium tests (integration tests)
pnpm run test:watch # Watch mode pnpm run test:watch # Watch mode
pnpm run test:cov # Coverage report pnpm run test:cov # Coverage report
@ -293,21 +294,21 @@ pnpm run test:web # Run web UI tests
```bash ```bash
# Linting # Linting
make lint-server # Lint server code make lint-server # Lint server code
make lint-web # Lint web code make lint-web # Lint web code
make lint-all # Lint all components make lint-all # Lint all components
# Formatting # Formatting
make format-server # Format server code make format-server # Format server code
make format-web # Format web code make format-web # Format web code
make format-all # Format all code make format-all # Format all code
# Type checking # Type checking
make check-server # Type check server make check-server # Type check server
make check-web # Type check web make check-web # Type check web
make check-all # Check all components make check-all # Check all components
# Complete hygiene check # Complete hygiene check
make hygiene-all # Runs lint, format, check, SQL sync, and audit make hygiene-all # Run lint, format, check, SQL sync, and audit
``` ```
### Additional Make Commands ### Additional Make Commands
@ -315,21 +316,21 @@ make hygiene-all # Runs lint, format, check, SQL sync, and audit
```bash ```bash
# Build commands # Build commands
make build-server # Build server make build-server # Build server
make build-web # Build web app make build-web # Build web app
make build-all # Build everything make build-all # Build everything
# API generation # API generation
make open-api # Generate OpenAPI specs make open-api # Generate OpenAPI specs
make open-api-typescript # Generate TypeScript SDK make open-api-typescript # Generate TypeScript SDK
make open-api-dart # Generate Dart SDK make open-api-dart # Generate Dart SDK
# Database # Database
make sql # Sync database schema make sql # Sync database schema
# Dependencies # Dependencies
make install-server # Install server dependencies make install-server # Install server dependencies
make install-web # Install web dependencies make install-web # Install web dependencies
make install-all # Install all dependencies make install-all # Install all dependencies
``` ```
### Debugging ### Debugging