// Debug/Tests/FT_DebugSystem.ts import { AC_DebugHUD } from '#root/Debug/Components/AC_DebugHUD.ts'; import { AC_InputDevice } from '#root/Input/Components/AC_InputDevice.ts'; import { AC_ToastSystem } from '#root/Toasts/Components/AC_ToastSystem.ts'; import { EFunctionalTestResult } from '#root/UE/EFunctionalTestResult.ts'; import { FunctionalTest } from '#root/UE/FunctionalTest.ts'; import { SystemLibrary } from '#root/UE/SystemLibrary.ts'; /** * Functional Test: Debug System Basic Functionality * Validates initialization, component validity, and data table consistency */ export class FT_DebugSystem extends FunctionalTest { // ════════════════════════════════════════════════════════════════════════════════════════ // GRAPHS // ════════════════════════════════════════════════════════════════════════════════════════ // ──────────────────────────────────────────────────────────────────────────────────────── // EventGraph // ──────────────────────────────────────────────────────────────────────────────────────── /** * Test entry point - validates basic debug system functionality * Uses nested validation to check initialization, page count, and component validity */ EventStartTest(): void { this.DebugHUDComponent.InitializeDebugHUD( this.ToastSystemComponent, this.InputDeviceComponent ); if (this.DebugHUDComponent.GetTestData().IsInitialized) { if (SystemLibrary.IsValid(this.DebugHUDComponent)) { this.FinishTest(EFunctionalTestResult.Succeeded); } else { this.FinishTest( EFunctionalTestResult.Failed, 'DebugHUD component not valid' ); } } else { this.FinishTest( EFunctionalTestResult.Failed, 'Debug HUD failed to initialize' ); } } // ════════════════════════════════════════════════════════════════════════════════════════ // VARIABLES // ════════════════════════════════════════════════════════════════════════════════════════ /** * Debug HUD system - primary component under test * Tests basic system initialization and component validity * @category Components */ DebugHUDComponent = new AC_DebugHUD(); /** * Toast notification system - required for debug HUD initialization * @category Components */ ToastSystemComponent = new AC_ToastSystem(); /** * Input device detection system - used for input device debug page testing * @category Components */ InputDeviceComponent = new AC_InputDevice(); }