/** * BottomTabBar visibility test — verifies the bar is hidden on desktop (≥768px). * * FIX 4: BottomTabBar must be phone-only (≤767px). On desktop it was * position:fixed bottom:0 with no hide rule, overlaying the Settings/avatar * in AppNav's sidebar. * * The test environment's matchMedia polyfill (test-setup.ts) returns * matches:false for all queries, simulating a desktop viewport. * The BottomTabBar should NOT render on desktop. */ import React from 'react'; import { describe, it, expect, vi, beforeEach } from 'vitest'; import { render, screen } from '@testing-library/react'; import { MemoryRouter } from 'react-router'; import { BottomTabBar } from './BottomTabBar.js'; describe('BottomTabBar visibility (FIX 4)', () => { beforeEach(() => { vi.clearAllMocks(); }); it('does NOT render on desktop (matchMedia max-width:767px returns false)', () => { // test-setup.ts matchMedia polyfill returns matches:false for all queries // → (max-width: 767px) matches false → desktop → BottomTabBar should not render render( , ); // The nav element should not be in the document on desktop const nav = screen.queryByRole('navigation', { name: /Main navigation/i }); // BottomTabBar renders a