diff --git a/tests/integration/online-board/flight-details.test.tsx b/tests/integration/online-board/flight-details.test.tsx index fcd7f904..ef47b223 100644 --- a/tests/integration/online-board/flight-details.test.tsx +++ b/tests/integration/online-board/flight-details.test.tsx @@ -162,6 +162,40 @@ describe("Flight details page integration", () => { expect(screen.getByTestId("flight-leg-1")).toBeTruthy(); }); + it("renders FullRouteTimeline and a TransferBar between legs for multi-leg", () => { + setupWithFlight(MULTI_LEG_FLIGHT); + render( + , + ); + expect(screen.getByTestId("full-route-timeline")).toBeTruthy(); + expect(screen.getAllByTestId("transfer-bar")).toHaveLength(1); + // transfer-bar should include the intermediate-landing label and a computed transfer-time + const bar = screen.getByTestId("transfer-bar"); + expect(bar.textContent).toContain("SHARED.INTERMEDIATE-LANDING"); + expect(bar.querySelector('[data-testid="transfer-time"]')).toBeTruthy(); + }); + + it("does not render FullRouteTimeline or TransferBar for direct flight", () => { + setupWithFlight(DIRECT_FLIGHT); + render( + , + ); + expect(screen.queryByTestId("full-route-timeline")).toBeNull(); + expect(screen.queryByTestId("transfer-bar")).toBeNull(); + }); + it("renders operating carrier info", () => { setupWithFlight(); render(