mirror of
https://github.com/Drop-OSS/drop.git
synced 2026-08-29 04:32:06 -04:00
* ci: add comprehensive CI workflow and SonarCloud configuration
- Add .github/workflows/ci.yml with actionlint validation, typecheck, lint, and test jobs
- Configure for both main and develop branches
- Add sonar-project.properties for SonarCloud analysis
- Set up coverage reporting and file exclusions
* chore: add dev-dependencies for cargo test harness
cli: add tempfile dev-dep
torrential: add tokio-test dev-dep
desktop: no change needed (tempfile already in deps)
* chore: add test dependencies (P1T1, P1T4)
Server: vitest, @nuxt/test-utils, @vue/test-utils, msw, @playwright/test,
@vitest/coverage-v8, happy-dom
Rust: tempfile (cli), tokio-test (torrential)
Part of TDD Wave 1.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* chore: format all Rust crates with cargo fmt (P4T2)
Formatting-only changes across cli, torrential, libraries/native_model,
desktop/src-tauri workspace. No logic changes.
Part of TDD Wave 1.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* chore: add .prettierignore to server/ (P4T1)
Exclude node_modules, .nuxt, .output, dist, .data, pnpm-lock.yaml
from prettier formatting.
Part of TDD Wave 1.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* chore: configure vitest workspace (P1T2)
- Add server/vitest.config.ts with @nuxt/test-utils
- Add server/test/setup.ts with msw lifecycle
- Add vitest.workspace.ts at repo root
- Add test, test:watch, coverage scripts to server/package.json
Part of TDD Wave 2.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* chore: configure Playwright E2E (P1T5)
- Add server/playwright.config.ts with baseURL, retries, webServer
- Add server/test/e2e/.gitkeep placeholder directory
- Add test:e2e script to server/package.json
Part of TDD Wave 2.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* test: add msw mocks for OIDC and metadata (P2T4)
- Add server/test/mocks/oidc.ts with configurable OIDC handlers
- Add server/test/mocks/jwt.ts with test JWT signing/verification
- Add server/test/mocks/metadata.ts with IGDB, Steam, Giantbomb mocks
- Add server/test/mocks/index.ts with setupTestMocks/teardownTestMocks lifecycle
Part of TDD Wave 2.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* ci: add format check to server-ci.yml (P4T3)
- Add format:check step before lint
- Separate format:check from lint:eslint for clarity
Part of TDD Wave 2.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* ci: add stale bot workflow (P5T2)
- Close issues inactive for 90 days
- 14-day warning before closure
- Exempt priority/p0 and priority/p1 labels
Part of TDD Wave 2.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* test: add health endpoint smoke test (P2T1)
- Create GET /api/v1/health endpoint returning { status, timestamp }
- Add smoke test verifying 200 response and shape
- Uses @nuxt/test-utils/e2e for integration testing
Part of TDD Wave 3.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* test: add Rust CLI tests (P2T3)
- Config tests: new, exists, get, get_active, serde roundtrip
- DepotManifest tests: new, append, overwrite, serde roundtrip, variants
- Uses tempfile for test isolation
Note: Tests require libarchive system library to compile.
Part of TDD Wave 3.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* chore: configure vitest coverage (P3T1)
- Provider: v8
- Reporters: text, lcov
- Reports directory: ./coverage
- Include: server/**/*.ts
- Exclude: test files and directories
Part of TDD Wave 3.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
* chore: add pre-commit hooks (P4T4)
- Install husky and lint-staged
- Configure pre-commit hook to run lint-staged
- Lint-staged config: eslint --fix + prettier --write on *.{ts,vue}
- Prettier --write on *.json
Part of TDD Wave 3.
Co-Authored-By: Sisyphus <sisyphus@opencode.ai>
---------
Co-authored-by: John Smith <you@example.com>
Co-authored-by: BillyOutlast <billy@heretek.dev>
Co-authored-by: Sisyphus <sisyphus@opencode.ai>
15 lines
360 B
YAML
15 lines
360 B
YAML
services:
|
|
postgres-test:
|
|
image: postgres:14-alpine
|
|
environment:
|
|
POSTGRES_DB: drop_test
|
|
POSTGRES_USER: drop_test
|
|
POSTGRES_PASSWORD: drop_test
|
|
ports:
|
|
- "5433:5432"
|
|
tmpfs: /var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U drop_test"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 5
|