mirror of
https://github.com/photoprism/photoprism.git
synced 2026-01-23 02:24:24 +00:00
Develop: Allow to use internal/tmp/ as scratch space for testing
Signed-off-by: Michael Mayer <michael@photoprism.app>
This commit is contained in:
parent
bd3fad6457
commit
3f6c7062bc
4 changed files with 8 additions and 2 deletions
|
|
@ -82,3 +82,4 @@ Thumbs.db
|
|||
.swp
|
||||
.glide
|
||||
/tmp/
|
||||
/internal/tmp/
|
||||
|
|
|
|||
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -35,6 +35,7 @@ venv
|
|||
/pro
|
||||
/plus
|
||||
/tmp/
|
||||
/internal/tmp/
|
||||
/test/
|
||||
*-lock.json
|
||||
/node_modules
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# PhotoPrism® Repository Guidelines
|
||||
|
||||
**Last Updated:** October 12, 2025
|
||||
**Last Updated:** October 14, 2025
|
||||
|
||||
## Purpose
|
||||
|
||||
|
|
@ -272,6 +272,7 @@ Note: Across our public documentation, official images, and in production, the c
|
|||
### Testing & Fixtures
|
||||
|
||||
- Go tests live next to their sources (`path/to/pkg/<file>_test.go`); group related cases as `t.Run(...)` sub-tests to keep table-driven coverage readable, and name each subtest with a PascalCase string.
|
||||
- Keep Go scratch work inside `internal/...`; Go refuses to import `internal/` packages from directories like `/tmp`, so create temporary helpers under a throwaway folder such as `internal/tmp/` instead of using external paths.
|
||||
- Prefer focused `go test` runs for speed (`go test ./internal/<pkg> -run <Name> -count=1`, `go test ./internal/commands -run <Name> -count=1`) and avoid `./...` unless you need the entire suite.
|
||||
- Heavy packages such as `internal/entity` and `internal/photoprism` run migrations and fixtures; expect 30–120s on first run and narrow with `-run` to keep iterations low.
|
||||
- For CLI-driven tests, wrap commands with `RunWithTestContext(cmd, args)` so `urfave/cli` cannot exit the process, and assert CLI output with `assert.Contains`/regex because `show` reports quote strings.
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
PhotoPrism — Backend CODEMAP
|
||||
|
||||
**Last Updated:** October 12, 2025
|
||||
**Last Updated:** October 14, 2025
|
||||
|
||||
Purpose
|
||||
- Give agents and contributors a fast, reliable map of where things live and how they fit together, so you can add features, fix bugs, and write tests without spelunking.
|
||||
|
|
@ -250,6 +250,9 @@ See Also
|
|||
- Developer Guide (Setup/Tests/API) — links in AGENTS.md → Sources of Truth
|
||||
- Specs: `specs/dev/backend-testing.md`, `specs/dev/api-docs-swagger.md`, `specs/portal/README.md`
|
||||
|
||||
Go Internal Import Rule
|
||||
- Keep temporary Go helpers inside `internal/...`; the Go toolchain blocks importing `internal/` packages from directories such as `/tmp`, so use a disposable path like `internal/tmp/` when you need scratch space.
|
||||
|
||||
Fast Test Recipes
|
||||
- Filesystem + archives (fast): `go test ./pkg/fs -run 'Copy|Move|Unzip' -count=1`
|
||||
- Media helpers (fast): `go test ./pkg/media/... -count=1`
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue