scopedvr-map-editor/tests/probe_update_check.gd
2026-11-01 19:34:05 +01:00

32 lines
1.4 KiB
GDScript

extends SceneTree
## „🔄 Updates prüfen“ per echtem Menü-Signal auslösen und den Statuszeilen-
## Text beobachten — deckt ab: Menü-Pfad, Thread, Statusmeldung.
func _initialize() -> void:
_run.call_deferred()
func _run() -> void:
var scene: PackedScene = load("res://core/scenes/main.tscn")
var main: Control = scene.instantiate()
root.add_child(main)
await process_frame
await process_frame
main._start_with_new_map()
# Echter Menü-Pfad: Datei-Popup id_pressed(7).
var file_menu_btn: MenuButton = null
for n in main.find_children("*", "MenuButton", true, false):
if n is MenuButton and n.text == "Datei":
file_menu_btn = n
(file_menu_btn.get_popup() as PopupMenu).id_pressed.emit(7)
print("PROBE direkt nach Klick: status='", main.status_label.text if "status_label" in main else "?", "' busy=", main._update_check_busy)
for i in 60:
await process_frame
if not main._update_check_busy:
break
print("PROBE nach Thread: busy=", main._update_check_busy, " status='", main.status_label.text, "'")
print("PROBE popup: visible=", main.update_dialog.visible, " text='", main.update_text.text, "'")
# Still-Start-Check (report=false) darf KEIN Popup zeigen.
main.update_dialog.hide()
main._updater_check_done({"status": "up_to_date", "local": "abc", "remote": "abc"}, false)
print("PROBE still-check: popup sichtbar=", main.update_dialog.visible)
quit(0)