mengw15 opened a new issue, #7411:
URL: https://github.com/apache/texera/issues/7411

   ### Task Summary
   
   `UserComputingUnitListItemComponent`'s **template** is at ~64% 
(`user-computing-unit-list-item.component.html`, 31 uncovered lines) while its 
class file is already at **100%** — the handlers are unit-tested, but the row's 
buttons are never clicked, so their bindings stay uncovered. Bring the template 
to full coverage. Vitest/jsdom; see `frontend/TESTING.md`.
   
   ### Behavior to add
   
   Extend `user-computing-unit-list-item.component.spec.ts` to exercise the row 
through the DOM, then run the coverage report and cover the remaining red 
lines. The uncovered constructs are `(click)` handlers (e.g. 
`openComputingUnitMetadataModal(entry)`), the inline-rename key handlers 
(`(keydown.escape)="cancelEditingUnitName()"`), tooltip bindings (e.g. "Share 
computing unit") and `*ngIf` branches.
   
   Approach:
   - Render the row with an `@Input` entry and `fixture.detectChanges()`; 
toggle the states the template switches on (running vs stopped, owned vs 
shared, editing vs display) so each `*ngIf` arm and its tooltip render.
   - Fire the actions through the DOM — `By.css` query + 
`.triggerEventHandler("click", ...)` for the buttons, and 
`.triggerEventHandler("keydown.escape", ...)` for the rename cancel — and 
assert the injected service double (`vi.fn()`) / component state, instead of 
calling the methods directly.
   
   Determinism: the component queues a `setTimeout`; **do not add 
`vi.useFakeTimers()` to suppress it** (a synchronous test body never runs the 
callback; fake timers over zone.js's patched timers are Node-version dependent 
and have caused CI-only failures). Never assert on layout/geometry.
   
   ### Task Type
   
   - [ ] Refactor / Cleanup
   - [ ] DevOps / Deployment / CI
   - [x] Testing / QA
   - [ ] Documentation
   - [ ] Performance
   - [ ] Other
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to