tengri/Content/Input/ManualTestingChecklist.md

3.5 KiB
Raw Permalink Blame History

Input Device System - Manual Testing Checklist

Тестовая среда

  • Персонаж: BP_MainCharacter с ShowDebugInfo = true
  • Клавиши: PageUp/PageDown для навигации в Debug HUD
  • Требования: InputDeviceComponent инициализирован

1. Debug HUD Integration

1.1 Input Device Info Page

  • Page 4 отображается как "Input Device Detection"
  • PageUp/PageDown позволяет перейти на Input Device page
  • Содержимое страницы показывает:
    • Primary Type: [тип устройства UE]
    • Is Initialized: [true/false]

1.2 Real-time Device Detection

  • При использовании мыши/клавиатуры Primary Type показывает "Keyboard & Mouse"
  • При подключении геймпада Primary Type автоматически меняется на "Gamepad"

2. Автоматическая детекция устройств

2.1 Keyboard & Mouse Detection

  • Движение мыши автоматически переключает на Keyboard & Mouse
  • Нажатие клавиш (WASD, пробел, etc.) переключает на Keyboard & Mouse
  • Primary Type показывает "KeyboardAndMouse"

2.2 Gamepad Detection

  • Движение стиков автоматически переключает на Gamepad
  • Нажатие кнопок геймпада переключает на Gamepad
  • Primary Type показывает "Gamepad"

3. API Functions Testing

3.1 Device Type Queries (Binary)

  • IsKeyboard() возвращает true для всех устройств кроме Gamepad
  • IsGamepad() возвращает true только для геймпадов
  • IsKeyboard() и IsGamepad() никогда не возвращают одинаковые значения
  • GetCurrentInputDevice() возвращает корректный EHardwareDevicePrimaryType

4. Error Handling

4.1 Edge Cases

  • Отключение устройств обрабатывается корректно
  • Подключение новых устройств детектируется автоматически
  • System console не содержит ошибок input detection
  • Performance остается стабильной при активном использовании

4.2 Integration Stability

  • Debug HUD стабильно работает с device detection
  • Частые переключения устройств не вызывают проблем
  • AC_InputDevice корректно инициализируется
  • IsGamepad/IsKeyboard всегда возвращают корректные значения

Критерии прохождения

  • All device types correctly detected and displayed
  • Real-time switching works seamlessly through UE subsystem
  • Debug HUD shows complete hardware information
  • No console errors during normal operation
  • API functions return consistent results
  • Native UE InputDeviceSubsystem integration works properly

Примечание: Система использует только встроенную InputDeviceSubsystem от Unreal Engine. Никаких симуляций или искусственных переключений.