ci: add frontend test execution, reporting, and coverage in workflow#8815
Conversation
- Updated package.json and package-lock.json to include jest-junit version 16.0.0, enhancing test reporting capabilities in the project.
…eporting - Added coverage collection settings, including coverage thresholds and report formats. - Configured CI-specific options for Jest, including the use of jest-junit for test reporting and adjusted worker settings for better performance in CI environments.
…ronment variable usage - Modified the test command in the Makefile to set CI=true for accurate test execution in CI environments.
…uploads - Replaced the frontend dependency installation step with a command to run unit tests in CI mode. - Added steps to publish test results using junit report and to comment on pull requests with coverage summaries. - Implemented artifact upload for coverage reports to improve visibility and tracking of test coverage over time.
- Introduced a step to install frontend dependencies using npm ci in the GitHub Actions workflow. - This enhancement ensures that all necessary packages are available before running frontend unit tests, improving the reliability of the CI process.
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughThe changes introduce CI-specific frontend test execution and reporting enhancements. The workflow now runs frontend unit tests, publishes JUnit test results, comments on pull requests with coverage summaries, and uploads coverage artifacts. Jest configuration and Makefile targets are updated for CI compatibility, and a new dependency for JUnit reporting is added. Changes
Sequence Diagram(s)sequenceDiagram
participant GitHub Actions
participant Makefile
participant Jest
participant JUnit Reporter
participant Coverage Commenter
participant Artifact Uploader
GitHub Actions->>Makefile: Run test_frontend_ci (CI=true)
Makefile->>Jest: Execute Jest with CI and coverage flags
Jest->>JUnit Reporter: Output test results (junit.xml)
GitHub Actions->>JUnit Reporter: Publish JUnit results
GitHub Actions->>Coverage Commenter: Post coverage summary to PR
GitHub Actions->>Artifact Uploader: Upload coverage artifacts
Possibly related PRs
Suggested labels
Suggested reviewers
✨ Finishing Touches🧪 Generate Unit Tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
src/frontend/jest.config.js (1)
21-33: Well-designed coverage configuration.The conditional coverage collection (
process.env.CI === "true") is excellent - it prevents performance impact during local development while ensuring CI coverage collection. The 50% thresholds provide a balanced starting point.Consider whether 50% coverage thresholds align with your project's quality standards. You may want to gradually increase these thresholds as test coverage improves:
coverageThreshold: { global: { - branches: 50, - functions: 50, - lines: 50, - statements: 50, + branches: 60, + functions: 70, + lines: 60, + statements: 60, }, },
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
src/frontend/package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (4)
.github/workflows/typescript_test.yml(1 hunks)Makefile.frontend(3 hunks)src/frontend/jest.config.js(1 hunks)src/frontend/package.json(1 hunks)
🧰 Additional context used
📓 Path-based instructions (2)
`src/frontend/{package*.json,tsconfig.json,tailwind.config.*,vite.config.*}`: Fr...
src/frontend/{package*.json,tsconfig.json,tailwind.config.*,vite.config.*}: Frontend configuration files such as 'package.json', 'tsconfig.json', 'tailwind.config.', and 'vite.config.' must be present and properly maintained in 'src/frontend/'.
📄 Source: CodeRabbit Inference Engine (.cursor/rules/frontend_development.mdc)
List of files the instruction was applied to:
src/frontend/package.json
`src/frontend/**/*.{ts,tsx,js,jsx,css,scss}`: Use Tailwind CSS for styling all frontend components.
src/frontend/**/*.{ts,tsx,js,jsx,css,scss}: Use Tailwind CSS for styling all frontend components.
📄 Source: CodeRabbit Inference Engine (.cursor/rules/frontend_development.mdc)
List of files the instruction was applied to:
src/frontend/jest.config.js
🧠 Learnings (5)
📓 Common learnings
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-23T12:46:42.048Z
Learning: Frontend code must be formatted using the make format_frontend command and linted with make lint before committing changes.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should validate input/output behavior and component state changes.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should be well-documented with clear descriptions of test purpose and expected behavior.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to {src/backend/tests/**/*.py,src/frontend/**/*.test.{ts,tsx,js,jsx},src/frontend/**/*.spec.{ts,tsx,js,jsx},tests/**/*.py} : Create comprehensive unit tests for all new components.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend test files should be named with '.test.' or '.spec.' before the extension (e.g., 'Component.test.tsx', 'Component.spec.js').
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should cover both sync and async code paths, including error handling and edge cases.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-23T12:46:42.048Z
Learning: Frontend tests should be written using @testing-library/react, with both component and integration tests verifying rendering, user interaction, and data loading.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to {src/backend/tests/**/*.md,tests/**/*.md} : If unit tests are incomplete, create a Markdown file with manual testing steps in the same directory as the unit tests, using the same filename as the component but with a '.md' extension.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should mock external dependencies and APIs appropriately.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: All frontend code must pass linting using the 'make lint' command.
src/frontend/package.json (11)
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should mock external dependencies and APIs appropriately.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/{package*.json,tsconfig.json,tailwind.config.*,vite.config.*} : Frontend configuration files such as 'package.json', 'tsconfig.json', 'tailwind.config.*', and 'vite.config.*' must be present and properly maintained in 'src/frontend/'.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/vite.config.* : Use Vite as the build tool and dev server for the frontend.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/**/*.{ts,tsx} : Use React 18 with TypeScript for all UI components and frontend logic.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should validate input/output behavior and component state changes.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend test files should be named with '.test.' or '.spec.' before the extension (e.g., 'Component.test.tsx', 'Component.spec.js').
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should be well-documented with clear descriptions of test purpose and expected behavior.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/src/**/__tests__/**/*.test.{ts,tsx} : All frontend components must have associated tests using React Testing Library.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to {src/backend/tests/**/*.py,src/frontend/**/*.test.{ts,tsx,js,jsx},src/frontend/**/*.spec.{ts,tsx,js,jsx},tests/**/*.py} : Mock external dependencies appropriately in tests.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/docs_development.mdc:0-0
Timestamp: 2025-06-30T14:40:02.667Z
Learning: Applies to docs/package.json : All dependencies and scripts for the documentation site must be managed in 'docs/package.json'.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/docs_development.mdc:0-0
Timestamp: 2025-06-30T14:40:02.667Z
Learning: Documentation must build successfully with 'yarn build' before deployment.
Makefile.frontend (15)
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-23T12:46:42.048Z
Learning: Frontend code must be formatted using the make format_frontend command and linted with make lint before committing changes.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should be well-documented with clear descriptions of test purpose and expected behavior.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: All frontend code must be formatted using the 'make format_frontend' command.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: All frontend code must pass linting using the 'make lint' command.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/{package*.json,tsconfig.json,tailwind.config.*,vite.config.*} : Frontend configuration files such as 'package.json', 'tsconfig.json', 'tailwind.config.*', and 'vite.config.*' must be present and properly maintained in 'src/frontend/'.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend test files should be named with '.test.' or '.spec.' before the extension (e.g., 'Component.test.tsx', 'Component.spec.js').
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should mock external dependencies and APIs appropriately.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should validate input/output behavior and component state changes.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/backend_development.mdc:0-0
Timestamp: 2025-06-30T14:39:17.428Z
Learning: Applies to Makefile : Use Makefile targets (make backend, make format_backend, make lint, make unit_tests) for backend development workflows
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/vite.config.* : Use Vite as the build tool and dev server for the frontend.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should cover both sync and async code paths, including error handling and edge cases.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-23T12:46:42.048Z
Learning: Frontend tests should be written using @testing-library/react, with both component and integration tests verifying rendering, user interaction, and data loading.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/src/**/__tests__/**/*.test.{ts,tsx} : All frontend components must have associated tests using React Testing Library.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Frontend source code must reside in the 'src/frontend/src/' directory, organized into components, pages, icons, stores, types, utils, hooks, services, and assets subdirectories.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to {src/backend/tests/**/*.py,src/frontend/**/*.test.{ts,tsx,js,jsx},src/frontend/**/*.spec.{ts,tsx,js,jsx},tests/**/*.py} : Test component initialization and configuration.
src/frontend/jest.config.js (5)
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should be well-documented with clear descriptions of test purpose and expected behavior.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should mock external dependencies and APIs appropriately.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to {src/backend/tests/**/*.py,src/frontend/**/*.test.{ts,tsx,js,jsx},src/frontend/**/*.spec.{ts,tsx,js,jsx},tests/**/*.py} : Complex test setups should be commented, and mock usage should be documented within the test code.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/vite.config.* : Use Vite as the build tool and dev server for the frontend.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/{package*.json,tsconfig.json,tailwind.config.*,vite.config.*} : Frontend configuration files such as 'package.json', 'tsconfig.json', 'tailwind.config.*', and 'vite.config.*' must be present and properly maintained in 'src/frontend/'.
.github/workflows/typescript_test.yml (13)
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend test files should be named with '.test.' or '.spec.' before the extension (e.g., 'Component.test.tsx', 'Component.spec.js').
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should be well-documented with clear descriptions of test purpose and expected behavior.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should cover both sync and async code paths, including error handling and edge cases.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should validate input/output behavior and component state changes.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to {src/backend/tests/**/*.py,src/frontend/**/*.test.{ts,tsx,js,jsx},src/frontend/**/*.spec.{ts,tsx,js,jsx},tests/**/*.py} : Create comprehensive unit tests for all new components.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to src/frontend/**/*.@(test|spec).{ts,tsx,js,jsx} : Frontend tests should mock external dependencies and APIs appropriately.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/src/**/__tests__/**/*.test.{ts,tsx} : All frontend components must have associated tests using React Testing Library.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-06-30T14:41:58.837Z
Learning: Applies to {src/backend/tests/**/*.md,tests/**/*.md} : If unit tests are incomplete, create a Markdown file with manual testing steps in the same directory as the unit tests, using the same filename as the component but with a '.md' extension.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/src/**/__tests__/**/*.{test,spec}.{ts,tsx} : Integration tests must be written for page-level components and flows.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/**/*.{ts,tsx} : Use React 18 with TypeScript for all UI components and frontend logic.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-23T12:46:42.048Z
Learning: Frontend tests should be written using @testing-library/react, with both component and integration tests verifying rendering, user interaction, and data loading.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-30T14:40:29.494Z
Learning: Applies to src/frontend/{package*.json,tsconfig.json,tailwind.config.*,vite.config.*} : Frontend configuration files such as 'package.json', 'tsconfig.json', 'tailwind.config.*', and 'vite.config.*' must be present and properly maintained in 'src/frontend/'.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-23T12:46:42.048Z
Learning: Frontend code must be formatted using the make format_frontend command and linted with make lint before committing changes.
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: autofix
🔇 Additional comments (8)
src/frontend/package.json (1)
143-143: jest-junit version verified ✅jest-junit@16.0.0 exists on npm and has no known security advisories. This addition does not introduce new vulnerabilities.
• Note:
npm auditreports moderate issues in existing deps (esbuild, prismjs). These are unrelated to jest-junit and should be addressed separately.Makefile.frontend (2)
107-107: Excellent CI mode configuration.Setting
CI=truebefore running Jest is the correct approach to enable CI-specific behavior defined in the Jest configuration, including coverage collection and JUnit reporting.
189-189: Good housekeeping with whitespace cleanup.Minor formatting improvement that enhances readability.
src/frontend/jest.config.js (1)
35-54: Robust CI-specific configuration.The CI mode configuration is well-designed:
- Jest-junit reporter outputs to the correct path expected by the GitHub workflow
- Worker limitation (
maxWorkers: "50%") prevents resource exhaustion in CI- Verbose output aids debugging in CI environments
.github/workflows/typescript_test.yml (4)
278-280: Excellent integration with Makefile target.Using
make test_frontend_cicorrectly leverages the CI-specific configuration that setsCI=trueand enables coverage collection.
281-288: Robust test result publishing configuration.The JUnit report configuration is well-designed:
- File path matches Jest configuration output (
test-results/junit.xml)fail_on_failure: trueensures test failures cause workflow failurerequire_tests: trueprevents false positives when no tests run
290-303: Comprehensive coverage reporting setup.The coverage comment configuration provides excellent PR feedback:
- Uses both coverage summary and JUnit XML for complete reporting
- Paths align with Jest configuration outputs
- Conservative comment behavior (
create-new-comment: false) prevents spam
304-311: Appropriate artifact retention policy.Coverage report upload with 30-day retention provides good balance between accessibility and storage efficiency.
- Upgraded the junit report action from v5 to v5.5.1 in the GitHub Actions workflow to leverage the latest features and improvements for test result reporting.
- Introduced a new GitHub Actions workflow to run Jest unit tests for the frontend. - The workflow includes steps for checking out the repository, setting up the Node.js environment, running tests, publishing test results, adding coverage comments on pull requests, and uploading coverage reports. - This enhancement improves the CI process by ensuring comprehensive testing and reporting for frontend components.
- Added a new job to the CI workflow to run frontend unit tests using Jest. - Updated the changes filter to include Jest test files, ensuring they are recognized during the CI process. - This enhancement improves the testing coverage and reliability of the frontend components.
…8815) * chore: add jest-junit dependency for improved test reporting - Updated package.json and package-lock.json to include jest-junit version 16.0.0, enhancing test reporting capabilities in the project. * chore: enhance Jest configuration for improved test coverage and CI reporting - Added coverage collection settings, including coverage thresholds and report formats. - Configured CI-specific options for Jest, including the use of jest-junit for test reporting and adjusted worker settings for better performance in CI environments. * chore: update frontend test command for CI mode to ensure proper environment variable usage - Modified the test command in the Makefile to set CI=true for accurate test execution in CI environments. * chore: enhance frontend CI workflow with test reporting and coverage uploads - Replaced the frontend dependency installation step with a command to run unit tests in CI mode. - Added steps to publish test results using junit report and to comment on pull requests with coverage summaries. - Implemented artifact upload for coverage reports to improve visibility and tracking of test coverage over time. * chore: add frontend dependency installation step to CI workflow - Introduced a step to install frontend dependencies using npm ci in the GitHub Actions workflow. - This enhancement ensures that all necessary packages are available before running frontend unit tests, improving the reliability of the CI process. * chore: update junit report action version in CI workflow - Upgraded the junit report action from v5 to v5.5.1 in the GitHub Actions workflow to leverage the latest features and improvements for test result reporting. * chore: add Jest unit test workflow for frontend - Introduced a new GitHub Actions workflow to run Jest unit tests for the frontend. - The workflow includes steps for checking out the repository, setting up the Node.js environment, running tests, publishing test results, adding coverage comments on pull requests, and uploading coverage reports. - This enhancement improves the CI process by ensuring comprehensive testing and reporting for frontend components. * chore: integrate Jest unit tests into CI workflow - Added a new job to the CI workflow to run frontend unit tests using Jest. - Updated the changes filter to include Jest test files, ensuring they are recognized during the CI process. - This enhancement improves the testing coverage and reliability of the frontend components.
…8815) * chore: add jest-junit dependency for improved test reporting - Updated package.json and package-lock.json to include jest-junit version 16.0.0, enhancing test reporting capabilities in the project. * chore: enhance Jest configuration for improved test coverage and CI reporting - Added coverage collection settings, including coverage thresholds and report formats. - Configured CI-specific options for Jest, including the use of jest-junit for test reporting and adjusted worker settings for better performance in CI environments. * chore: update frontend test command for CI mode to ensure proper environment variable usage - Modified the test command in the Makefile to set CI=true for accurate test execution in CI environments. * chore: enhance frontend CI workflow with test reporting and coverage uploads - Replaced the frontend dependency installation step with a command to run unit tests in CI mode. - Added steps to publish test results using junit report and to comment on pull requests with coverage summaries. - Implemented artifact upload for coverage reports to improve visibility and tracking of test coverage over time. * chore: add frontend dependency installation step to CI workflow - Introduced a step to install frontend dependencies using npm ci in the GitHub Actions workflow. - This enhancement ensures that all necessary packages are available before running frontend unit tests, improving the reliability of the CI process. * chore: update junit report action version in CI workflow - Upgraded the junit report action from v5 to v5.5.1 in the GitHub Actions workflow to leverage the latest features and improvements for test result reporting. * chore: add Jest unit test workflow for frontend - Introduced a new GitHub Actions workflow to run Jest unit tests for the frontend. - The workflow includes steps for checking out the repository, setting up the Node.js environment, running tests, publishing test results, adding coverage comments on pull requests, and uploading coverage reports. - This enhancement improves the CI process by ensuring comprehensive testing and reporting for frontend components. * chore: integrate Jest unit tests into CI workflow - Added a new job to the CI workflow to run frontend unit tests using Jest. - Updated the changes filter to include Jest test files, ensuring they are recognized during the CI process. - This enhancement improves the testing coverage and reliability of the frontend components.
…8815) * chore: add jest-junit dependency for improved test reporting - Updated package.json and package-lock.json to include jest-junit version 16.0.0, enhancing test reporting capabilities in the project. * chore: enhance Jest configuration for improved test coverage and CI reporting - Added coverage collection settings, including coverage thresholds and report formats. - Configured CI-specific options for Jest, including the use of jest-junit for test reporting and adjusted worker settings for better performance in CI environments. * chore: update frontend test command for CI mode to ensure proper environment variable usage - Modified the test command in the Makefile to set CI=true for accurate test execution in CI environments. * chore: enhance frontend CI workflow with test reporting and coverage uploads - Replaced the frontend dependency installation step with a command to run unit tests in CI mode. - Added steps to publish test results using junit report and to comment on pull requests with coverage summaries. - Implemented artifact upload for coverage reports to improve visibility and tracking of test coverage over time. * chore: add frontend dependency installation step to CI workflow - Introduced a step to install frontend dependencies using npm ci in the GitHub Actions workflow. - This enhancement ensures that all necessary packages are available before running frontend unit tests, improving the reliability of the CI process. * chore: update junit report action version in CI workflow - Upgraded the junit report action from v5 to v5.5.1 in the GitHub Actions workflow to leverage the latest features and improvements for test result reporting. * chore: add Jest unit test workflow for frontend - Introduced a new GitHub Actions workflow to run Jest unit tests for the frontend. - The workflow includes steps for checking out the repository, setting up the Node.js environment, running tests, publishing test results, adding coverage comments on pull requests, and uploading coverage reports. - This enhancement improves the CI process by ensuring comprehensive testing and reporting for frontend components. * chore: integrate Jest unit tests into CI workflow - Added a new job to the CI workflow to run frontend unit tests using Jest. - Updated the changes filter to include Jest test files, ensuring they are recognized during the CI process. - This enhancement improves the testing coverage and reliability of the frontend components.
Adds Jest tests to CI with PR annotation and reporting.
Summary by CodeRabbit
New Features
Chores