## test_dialogs.nim ## ================= ## Test d'intégration de la construction du panneau de réglages : vérifie que la ## fenêtre et ses contrôles sont réellement créés (sans lancer la boucle modale, ## qui bloquerait). Cela rend observable la création de l'interface, au-delà de ## la simple compilation. import std/unittest import winim/lean import ../src/dialogs import ../src/config proc createParent(): HWND = let hInstance = GetModuleHandleW(nil) var wc: WNDCLASSW wc.lpfnWndProc = cast[WNDPROC](DefWindowProcW) wc.hInstance = hInstance wc.lpszClassName = L"TrayTempoDialogTestClass" discard RegisterClass(&wc) result = CreateWindowExW(0, L"TrayTempoDialogTestClass", L"", WS_OVERLAPPED, 0, 0, 0, 0, 0, 0, hInstance, nil) suite "dialogs": test "settings dialog window and controls are built": let parent = createParent() check parent != 0 let hwnd = buildSettingsDialog(parent, defaultConfig()) check hwnd != 0 # La fenêtre doit avoir au moins un contrôle enfant (champ, bouton, etc.). check GetWindow(hwnd, GW_CHILD) != 0 discard DestroyWindow(hwnd) discard DestroyWindow(parent)