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

   ### Task Summary
   
   `TimeTravelComponent`'s **template** is at ~42% 
(`time-travel.component.html`, 11 uncovered lines of 61); its class file is 
~92%. The execution table's rows and their expanded interaction lists are never 
rendered, so those bindings stay unexecuted. Bring the template to full 
coverage. Vitest/jsdom; see `frontend/TESTING.md`.
   
   ### Behavior to add
   
   Extend `time-travel.component.spec.ts` so the table renders and expands, 
then run the coverage report and cover the remaining red lines. The gap is the 
execution rows (`<tr (click)="toggleRow(execution.eId)">` and their cells), the 
`*ngIf="expandedRows.has(execution.eId)"` detail row, and the `*ngFor` over 
`interactionHistories[execution.eId]` with its per-interaction button.
   
   Approach:
   - Seed a couple of executions (and interaction histories for one of them) 
and `fixture.detectChanges()` so the `*ngFor` expands.
   - Click a row through the DOM — 
`fixture.debugElement.queryAll(By.css("tr"))` + `.triggerEventHandler("click", 
...)` — and assert the detail row appears after a further `detectChanges()` 
(and collapses on a second click).
   - Click an interaction button in the expanded row and assert the injected 
service double (`vi.fn()`) was called.
   
   Determinism constraint: the row renders `{{ execution.startingTime | 
date:'short' }}`. **Render it, but do not assert the formatted string** — a 
fixed epoch renders a different day/hour under a UTC CI runner; assert the cell 
exists, the `eId` cell, or a timezone-stable substring instead. Never assert on 
layout or 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