-
Notifications
You must be signed in to change notification settings - Fork 0
Jrepp - Taskfile Testing Infrastructure #204
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
User request: "create a new branch to test the taskfile testing infrastructure, if possible we should compose the taskfile from some sub task files - the integration testing should probably live in it's own taskfile in the ./testing directory - I want to have a task that will ensure the docker-compose is up and run through each integration test that runs against this set of services" Created modular testing infrastructure with: - testing/Taskfile.yml with comprehensive test management - Infrastructure lifecycle tasks (infra-up, infra-down, infra-status) - Integration test tasks with auto-managed infrastructure - Acceptance test tasks for all patterns - Backend-specific test tasks - MCP integration test tasks - Comprehensive test suites (test-all, test-all-with-mcp) - Quick smoke test for development Updated root Taskfile.yml to include testing/Taskfile.yml via includes All tasks namespaced as test-infra:* for clarity Benefits: - Separation of concerns (build vs testing infrastructure) - Easier maintenance with focused test Taskfile - Automatic infrastructure management with defer cleanup - Supports both individual and comprehensive test execution - Clear documentation in testing/README.md Co-Authored-By: Claude <[email protected]>
User request: "let's simplify the tasks so it's just test: for the namespace" Changed namespace from test-infra to test for cleaner, more intuitive usage: - Updated root Taskfile.yml includes section - Updated all documentation in testing/README.md - All testing tasks now accessible as task test:* Examples: - task test:infra-up (was test-infra:infra-up) - task test:test-all (was test-infra:test-all) - task test:help (was test-infra:help) Benefits: - Shorter, cleaner namespace - More intuitive for users - Consistent with common task naming patterns Co-Authored-By: Claude <[email protected]>
User request: "do unit tests fit into this new task namespace? yes" Moved ALL test tasks from root Taskfile.yml to testing/Taskfile.yml under unified test: namespace with clear hierarchy: Unit Tests (Fast, No Dependencies): - unit-all, unit-proxy, unit-core, unit-prismctl, unit-operator - unit-drivers (memstore, redis, nats, kafka, postgres) Integration Tests (Requires Infrastructure): - test-integration-all, integration-rust, integration-k8s - test-integration-lifecycle, test-integration-dataplane, etc. Acceptance Tests: - test-acceptance-all (docker-compose based) - acceptance-testcontainers (testcontainers based) - acceptance-parallel Parallel Execution: - parallel, parallel-fast, parallel-fail-fast Comprehensive Suites: - all (unit + integration + acceptance) - all-with-mcp Changes: - Added all unit tests to testing/Taskfile.yml - Added testcontainers-based acceptance tests - Added Rust and K8s integration tests - Added parallel execution tasks - Removed all 250+ lines of test tasks from root Taskfile.yml - Updated comprehensive suites to include unit tests - Updated testing/README.md with new structure and hierarchy - Updated help task with complete test organization Total: 55 test tasks now consolidated under test: namespace Benefits: - Single namespace for ALL tests (unit, integration, acceptance) - Clear hierarchy: Unit -> Integration -> Acceptance -> All - Fast iteration: Unit tests require no infrastructure - Easy discovery: task --list | grep test: - Consistent naming: Predictable patterns throughout - Root Taskfile focused on builds, not tests Co-Authored-By: Claude <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR consolidates and reorganizes Prism's testing infrastructure by creating a dedicated testing Taskfile under the test: namespace, removing duplication and improving test organization.
Key Changes:
- Consolidated all testing tasks into a single
testing/Taskfile.ymlwith proper namespace organization - Removed duplicate test task definitions from the root
Taskfile.yml - Added comprehensive documentation for the new testing infrastructure
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| testing/Taskfile.yml | New comprehensive testing taskfile consolidating unit, integration, acceptance, and infrastructure management tasks |
| testing/README.md | Complete documentation for the new testing infrastructure including usage patterns and task hierarchy |
| Taskfile.yml | Removed duplicate test task definitions and added include statement for testing namespace |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - [ADR-004: Local-First Testing Strategy](/adr/adr-004) | ||
| - [RFC-015: Plugin Acceptance Test Framework](/rfc/rfc-015) |
Copilot
AI
Nov 20, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The referenced documentation links use absolute paths from the root. Consider verifying these paths are correct or using relative paths like ../adr/adr-004 for consistency with the project structure.
| - [ADR-004: Local-First Testing Strategy](/adr/adr-004) | |
| - [RFC-015: Plugin Acceptance Test Framework](/rfc/rfc-015) | |
| - [ADR-004: Local-First Testing Strategy](../adr/adr-004) | |
| - [RFC-015: Plugin Acceptance Test Framework](../rfc/rfc-015) |
|
This PR has merge conflicts with the base branch. Please resolve them. |
|
This PR has been inactive for 14 days. Please update it or close it if it's no longer needed. |
User request: "look at all local branches for unmerged commits, create PRs if they are found by first merging origin/main and submitting the commit data"
This branch contains 3 unmerged commit(s). Conflicts resolved automatically with aggressive strategy.
Co-Authored-By: Claude [email protected]