SwitchToMirrorMode.spec.tsx 1009 B

123456789101112131415161718192021222324252627282930313233
  1. import { cleanup, render } from '@testing-library/react';
  2. import { afterEach, describe, expect, it, vi } from 'vitest';
  3. import { hotkeyBindings, SwitchToMirrorMode } from './SwitchToMirrorMode';
  4. afterEach(() => {
  5. cleanup();
  6. document.body.classList.remove('mirror');
  7. });
  8. describe('SwitchToMirrorMode', () => {
  9. describe('hotkeyBindings', () => {
  10. it('defines the Konami-style key sequence as modifier category', () => {
  11. expect(hotkeyBindings).toEqual({
  12. keys: 'x x b b a y a y ArrowDown ArrowLeft',
  13. category: 'modifier',
  14. });
  15. });
  16. });
  17. describe('behavior', () => {
  18. it('adds "mirror" class to document.body and calls onDeleteRender', () => {
  19. const onDeleteRender = vi.fn();
  20. expect(document.body.classList.contains('mirror')).toBe(false);
  21. render(<SwitchToMirrorMode onDeleteRender={onDeleteRender} />);
  22. expect(document.body.classList.contains('mirror')).toBe(true);
  23. expect(onDeleteRender).toHaveBeenCalledOnce();
  24. });
  25. });
  26. });