The previous tests never compiled: they used GUT's assert functions, Godot 3 APIs and reassigned autoload functions, so no test ran. - 90 tests: unit tests for the playlist, songs, player scoring, time formatting, search and the server client, plus integration tests that run MainWindow and SyncWindow against a fake server - Keybind tests check that Alt+<number> and Ctrl+Alt+<number> keep following the player rows while players are added and removed - run_tests.sh finds Godot and runs the suite headless (~10 seconds) - CI runs the tests before the build job in gitea-build.yaml; the separate test.yml used a GitHub action that does not exist - GdUnit4 is committed instead of ignored, since the project enables it, and .gitea/ is no longer ignored - Exported builds leave out tests/ and addons/gdUnit4/
22 lines
546 B
GDScript
22 lines
546 B
GDScript
#!/usr/bin/env -S godot -s
|
|
extends SceneTree
|
|
|
|
|
|
var _cli_runner: GdUnitTestCIRunner
|
|
|
|
|
|
func _initialize() -> void:
|
|
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_MINIMIZED)
|
|
_cli_runner = GdUnitTestCIRunner.new()
|
|
root.add_child(_cli_runner)
|
|
|
|
|
|
# do not use print statements on _finalize it results in random crashes
|
|
func _finalize() -> void:
|
|
queue_delete(_cli_runner)
|
|
if OS.is_stdout_verbose():
|
|
prints("Finallize ..")
|
|
prints("-Orphan nodes report-----------------------")
|
|
Window.print_orphan_nodes()
|
|
prints("Finallize .. done")
|