-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Labels
enhancementNew feature or requestNew feature or request
Description
Context
PR #59 introduces tests/installation-test.sh as a comprehensive standalone test script, but the GitHub Actions workflow duplicates this logic inline (~80 lines of duplication).
Problem
DRY Violation: Test logic exists in two places:
tests/installation-test.sh(363 lines).github/workflows/shell-quality.yml(200+ lines of equivalent logic)
Impact: Changes require updates in two places, increasing maintenance burden.
Recommended Solution
Refactor workflow to invoke the test script instead of duplicating logic:
- name: Run comprehensive installation tests
run: ./tests/installation-test.sh "$TEMP_HOME" "$GITHUB_WORKSPACE"
- name: Upload diagnostic artifacts
if: failure()
uses: actions/upload-artifact@v4
with:
name: installation-test-diagnostics
path: ${{ env.TEMP_HOME }}/diagnostics
retention-days: 7Benefits
- Single source of truth for test logic
- Easier maintenance
- Guaranteed consistency between CI and local tests
Trade-offs
- Loses GitHub Actions step-level visibility in CI logs
- Slightly harder to debug individual test failures (all in one step)
Estimated Effort
30-45 minutes
Priority
Medium - Follow-up to PR #59 after critical issues resolved
References
- Agent: architecture-designer (recommended this refactoring)
- Related: PR feat: enhance installation testing coverage (resolves #52) #59 (introduces the duplication)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request