Skip to content

ci(integration): add integration test script + server CI steps#27

Merged
kickthemoon0817 merged 2 commits intomainfrom
feature/integration-tests
Feb 18, 2026
Merged

ci(integration): add integration test script + server CI steps#27
kickthemoon0817 merged 2 commits intomainfrom
feature/integration-tests

Conversation

@kickthemoon0817
Copy link
Copy Markdown
Owner

Summary

Add integration testing infrastructure for the full Pedef stack (server + app).

Changes

1. scripts/integration-test.sh

New integration test script that orchestrates testing across both packages:

  • --server: builds PedefSync server package and runs its unit test suite
  • --app: builds Pedef app and runs xcodebuild test suite
  • --smoke: starts the server binary on a test port, verifies it listens and stays alive, then tears down cleanly
  • No args: runs all three stages
  • Automatic cleanup via trap (kills server, removes temp data dir)
  • Port-readiness polling with configurable timeout
  • Unique test token per run (no secrets committed)

2. .github/workflows/ci.yml

Updated CI pipeline to include PedefSync server in the build/test matrix:

  • Added 'Build PedefSync server' step (swift build)
  • Added 'Test PedefSync server' step (swift test)
  • Server steps run before app steps to catch regressions early
  • Renamed existing steps for clarity

Test Results

All 78 app tests in 24 suites pass.

Checklist

  • Integration test script is executable and handles edge cases
  • No security-sensitive content (tokens are generated at runtime)
  • CI config is valid YAML with correct step ordering
  • Phase 5, Branch 6 of multi-platform sync implementation

Add scripts/integration-test.sh that orchestrates testing across the full
Pedef stack:

- --server: builds PedefSync server package and runs its test suite
- --app: builds Pedef app and runs xcodebuild test suite
- --smoke: starts the server binary on a test port, verifies it listens
  and stays alive, then tears down cleanly
- No args: runs all three stages

Features:
- Colored output with INFO/OK/FAIL markers
- Automatic cleanup via trap (kills server, removes temp data dir)
- Port-readiness polling with configurable timeout
- Unique test token per run (no secrets committed)
Update .github/workflows/ci.yml to build and test the PedefSync gRPC
server package alongside the Pedef app:

- Add 'Build PedefSync server' step (swift build in PedefSync/)
- Add 'Test PedefSync server' step (swift test in PedefSync/)
- Rename existing steps for clarity (Build → Build Pedef app, Test → Test Pedef app)

Server steps run before app steps so server regressions are caught early.
@kickthemoon0817 kickthemoon0817 merged commit 2875959 into main Feb 18, 2026
1 check passed
@kickthemoon0817 kickthemoon0817 deleted the feature/integration-tests branch February 18, 2026 15:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant