/** When the fullscreen button in the corner of a game shows (#267). */ import { describe, expect, it } from 'vitest'; import { CORNER_BUTTON_IDLE_SECONDS, showsCornerButton } from '../../src/viewport/fullscreen'; describe('showsCornerButton', () => { it('always shows while no game runs, however long the mouse rests', () => { expect(showsCornerButton({ running: false, idleSeconds: 60, overButton: false })).toBe(true); }); it('shows over a running game only while the mouse moved lately', () => { expect(showsCornerButton({ running: true, idleSeconds: 0, overButton: false })).toBe(true); expect( showsCornerButton({ running: true, idleSeconds: CORNER_BUTTON_IDLE_SECONDS - 0.1, overButton: false }), ).toBe(true); expect( showsCornerButton({ running: true, idleSeconds: CORNER_BUTTON_IDLE_SECONDS, overButton: false }), ).toBe(false); }); it('stays while the pointer rests on it', () => { expect(showsCornerButton({ running: true, idleSeconds: 60, overButton: true })).toBe(true); }); });