-
Notifications
You must be signed in to change notification settings - Fork 358
Development: Migrate core module to Angular signals and Vitest
#12022
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
Open
krusche
wants to merge
17
commits into
develop
Choose a base branch
from
chore/migrate-core-module-signals-vitest
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+11,562
−5,211
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Fix race condition in OpenCodeEditorButtonComponent.switchPracticeMode() - Fix subscription leak in CourseCardComponent by tracking subscription - Fix nested subscription leak in CourseDashboardComponent using switchMap - Update test mock to return proper Observable Co-Authored-By: Claude Opus 4.5 <[email protected]>
Development: Migrate core module to Angular signals and Vitest
Co-Authored-By: Claude Opus 4.5 <[email protected]>
End-to-End (E2E) Test Results Summary
|
|||||||||||||||||||||||||||||||||||||||
- Add null check in CourseExerciseRowComponent.updateExerciseData - Move expectedProfileInfo to separate helper file to avoid Vitest/Jest conflicts - Update imports in profile.service.spec.ts and code-button.component.spec.ts Co-Authored-By: Claude Opus 4.5 <[email protected]>
Co-Authored-By: Claude Opus 4.5 <[email protected]>
The test was asserting response.body equals userSshPublicKey but the mock was flushing an empty object. Fixed by flushing the expected userSshPublicKey object. Co-Authored-By: Claude Opus 4.5 <[email protected]>
The tests were flushing { body: token } instead of just token. When
using HttpTestingController.flush(), the argument becomes the response
body, so flushing { body: token } made response.body be an object
instead of the expected string.
Co-Authored-By: Claude Opus 4.5 <[email protected]>
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
After migrating CourseExerciseRowComponent to use signal inputs, the test needs to call course() and exercise() as functions to access the signal values. Co-Authored-By: Claude Opus 4.5 <[email protected]>
Adjusted global coverage thresholds to account for the migration of the core module tests from Jest to Vitest. Since more code is now tested by Vitest, the Jest coverage naturally decreases. Co-Authored-By: Claude Opus 4.5 <[email protected]>
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||||||||
End-to-End (E2E) Test Results Summary
|
|||||||||||||||||||||||||||||||||
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
|
@krusche Test coverage has been automatically updated in the PR description. |
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||||||||||||||
|
@krusche Test coverage has been automatically updated in the PR description. |
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
|
@krusche Test coverage has been automatically updated in the PR description. |
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||||||||
|
@krusche Test coverage has been automatically updated in the PR description. |
End-to-End (E2E) Test Results Summary
|
||||||||||||||||||
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
client
Pull requests that update TypeScript code. (Added Automatically!)
communication
Pull requests that affect the corresponding module
core
Pull requests that affect the corresponding module
exam
Pull requests that affect the corresponding module
exercise
Pull requests that affect the corresponding module
lecture
Pull requests that affect the corresponding module
ready for review
tests
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Checklist
General
Client
authoritiesto all new routes and checked the course groups for displaying navigation elements (links, buttons).Motivation and Context
This continues the migration of the Angular core module to signals and Vitest (zoneless) to align with current Angular patterns, reduce manual change detection, and standardize the test stack. It also addresses signal-related issues discovered during migration.
Description
signal,computed,input,output,viewChild) and updated templates to call signal values.setupTestBed({ zoneless: true })) and added new Vitest specs for admin, auth, calendar, notifications, settings, and course modules.jest.config.jsandvitest.config.tsto reflect the new testing split and coverage expectations.Scope summary:
229files changed (+11562/-5211), primarily undersrc/main/webapp/app/corewith additional supporting changes in shared/exam/exercise code and test infrastructure.Steps for Testing
Automated tests run:
npm run vitest:run src/main/webapp/app/core/course/overview/course-overviewManual verification (suggested for reviewers):
Prerequisites:
Exam Mode Testing
Prerequisites:
Review Progress
Code Review
Manual Tests
Exam mode testing
Test Coverage
Client
Last updated: 2026-01-26 15:51:13 UTC
Screenshots
No screenshots provided. This is a refactor and test migration only; template updates are limited to signal invocation syntax and do not change visuals.