-
Notifications
You must be signed in to change notification settings - Fork 0
Add automated testing infrastructure and CI/CD workflows #2
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
Add automated testing infrastructure and CI/CD workflows #2
Conversation
Co-authored-by: huangyiirene <7665279+huangyiirene@users.noreply.github.com>
Co-authored-by: huangyiirene <7665279+huangyiirene@users.noreply.github.com>
Co-authored-by: huangyiirene <7665279+huangyiirene@users.noreply.github.com>
…ton test Co-authored-by: huangyiirene <7665279+huangyiirene@users.noreply.github.com>
|
@copilot 34.4524084Z ##[group]Run pnpm install --frozen-lockfile |
Co-authored-by: huangyiirene <7665279+huangyiirene@users.noreply.github.com>
Fixed in commit 5803195. The issue was a pnpm version mismatch - the lockfile was generated with pnpm 10.28.0, but the CI workflows were configured to use pnpm 8. Updated all workflows (ci.yml, pr-checks.yml, release.yml) to use pnpm version 10, which is compatible with the lockfile format. |
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 establishes a comprehensive automated testing infrastructure and CI/CD pipeline for the Object UI monorepo project. It introduces Vitest as the testing framework with React Testing Library, adds 36 passing tests across all core packages, and implements GitHub Actions workflows for continuous integration, releases, and pull request validation.
Changes:
- Added Vitest testing framework with configuration and 36 tests across 5 packages (@object-ui/protocol, @object-ui/engine, @object-ui/renderer, @object-ui/ui, @object-ui/designer)
- Implemented three GitHub Actions workflows (CI, Release, PR Checks) with multi-node testing and coverage reporting
- Updated all package configurations with test scripts and TypeScript exclusions for test files
- Added comprehensive documentation (TESTING.md, CONTRIBUTING.md, CHANGELOG.md) and updated README with testing instructions and CI badges
Reviewed changes
Copilot reviewed 25 out of 26 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| vitest.config.ts | Main Vitest configuration with coverage settings and package aliases |
| vitest.setup.ts | Test setup file importing jest-dom matchers |
| packages/*/tsconfig.json | Updated to exclude test files from TypeScript compilation |
| packages//src/tests/.test.tsx | Added comprehensive test suites for all core packages |
| packages/*/package.json | Updated test scripts to use Vitest |
| package.json | Added testing dependencies and updated test scripts |
| .github/workflows/*.yml | Added CI, Release, and PR Checks workflows |
| TESTING.md | Comprehensive testing documentation |
| CONTRIBUTING.md | Contributor guidelines with testing instructions |
| CHANGELOG.md | Project changelog tracking changes |
| README.md | Updated with testing section, CI badges, and pnpm version requirement |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Fix handleExportCSV to guard on gridRef.current?.api (issue #1) - Add dedicated onContextMenuAction callback instead of overloading onCellClicked (issue #2) - Remove icon property from customItems to prevent HTML injection (issue #3) - Remove validation claim from README - only basic AG Grid editing (issue #4) - Add test assertions for all new inputs (editable, exportConfig, etc.) (issue #5) - Fix onExport type to only support 'csv' format (issue #6) - Remove unused ColumnConfig properties (autoSize, groupable) (issue #9) - Type schema props with proper interfaces instead of 'any' (issue #10) - Update export description to only mention CSV (issue #11) - Add AG Grid Community vs Enterprise section to docs (issue #8) - Update README and docs with new callback and clarifications All tests pass (8/8), lint clean (0 errors) Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
Optimization Plan: Automated Testing and Basic Workflows ✅
Phase 1: Testing Infrastructure ✅
Phase 2: Write Tests for Core Packages ✅
Phase 3: GitHub Actions Workflows ✅
Phase 4: Additional Improvements ✅
🎉 Summary
All objectives completed successfully! The project now has:
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.