From storj-llm-dev
Run unit tests that require the Spanner emulator. Use this skill when the user wants to run tests in packages like satellite/metabase, satellite/metainfo, or any other tests that interact with Spanner. Automatically handles checking for and configuring the Spanner emulator environment.
How this skill is triggered — by the user, by Claude, or both
Slash command
/storj-llm-dev:test-with-spannerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are helping run unit tests that require the Spanner emulator.
You are helping run unit tests that require the Spanner emulator.
Follow these steps to run unit tests with Spanner:
Check if the Spanner emulator environment is already configured:
SPANNER_EMULATOR_HOST and STORJ_TEST_SPANNER environment variables are setecho $SPANNER_EMULATOR_HOST and echo $STORJ_TEST_SPANNERIf environment variables are already set:
go test -v ./package/path -run TestNameIf environment variables are NOT set:
spanner_emulator --host_port 127.0.0.1:10008SPANNER_EMULATOR_HOST=localhost:10008 \
STORJ_TEST_SPANNER=spanner://127.0.0.1:10008?emulator \
go test -v ./package/path -run TestName
Report test results:
Some common test paths in the Storj codebase:
./satellite/metabase - Metabase tests./satellite/metainfo - Metainfo API tests./satellite/satellitedb - Database tests127.0.0.1:10007 but flag --host_port 127.0.0.1:10008 can be used to change it.npx claudepluginhub elek/storj-llm-dev --plugin storj-llm-devTests backend APIs with vitest/jest, go test, pytest, cargo test; verifies endpoints, DB changes, errors, collects evidence. Prohibits curl; mandates pre-completion verification.
Guides writing Go integration tests with Testcontainers using Docker containers for databases (PostgreSQL, MySQL, Redis, MongoDB), queues (Kafka, RabbitMQ), and services. Covers modules, networking, cleanup, wait strategies, and CI/CD.
Writes and reviews production-ready Go tests: table-driven tests, testify suites, parallel tests, fuzzing, goroutine leak detection, snapshot testing, and integration tests. Use when writing, reviewing, or debugging Go tests.