test(planner): cover Entfernen hidden when slot.id is null
Adds regression test for the {#if slot.id} guard on the remove button —
QA flagged the missing negative test case for optimistic slots.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -161,6 +161,15 @@ describe('DesktopDayTile — filled slot', () => {
|
|||||||
expect(screen.getByRole('button', { name: /Entfernen/i })).toBeTruthy();
|
expect(screen.getByRole('button', { name: /Entfernen/i })).toBeTruthy();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('hides Entfernen button when slot.id is null (optimistic slot)', () => {
|
||||||
|
const slotWithoutId = { ...filledSlot, id: null };
|
||||||
|
render(DesktopDayTile, { props: { slot: slotWithoutId, isToday: false, activeSlotId: null, isPlanner: true, slotMap: {}, suggestions: [] } });
|
||||||
|
// flip the tile first so back face is visible
|
||||||
|
// activeSlotId must match slot.id to flip — but slot.id is null, so isFlipped = false
|
||||||
|
// The back face is still rendered in the DOM; check button is absent
|
||||||
|
expect(screen.queryByRole('button', { name: /Entfernen/i })).toBeNull();
|
||||||
|
});
|
||||||
|
|
||||||
it('calls onremove when Entfernen clicked', async () => {
|
it('calls onremove when Entfernen clicked', async () => {
|
||||||
const onremove = vi.fn();
|
const onremove = vi.fn();
|
||||||
const user = userEvent.setup();
|
const user = userEvent.setup();
|
||||||
|
|||||||
Reference in New Issue
Block a user