Files
settled-reach/client/addons/gdUnit4/test/core/GdUnitSignalAwaiterTest.gd
T
jpmschweitzerandClaude Opus 4.6 61e0762a84 chore(client): add gdUnit4 test framework addon
Vendor gdUnit4 for Godot 4 client testing (D-030).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 16:52:00 +01:00

47 lines
1.3 KiB
GDScript

# GdUnit generated TestSuite
#warning-ignore-all:unused_argument
#warning-ignore-all:return_value_discarded
class_name GdUnitSignalAwaiterTest
extends GdUnitTestSuite
# TestSuite generated from
const __source = 'res://addons/gdUnit4/src/core/GdUnitSignalAwaiter.gd'
class Monster extends Node:
signal move(value :float)
signal slide(value :float, x :int, z :int)
var _pos :float = 0.0
func _process(_delta :float) -> void:
_pos += 0.2
emit_signal(move.get_name(), _pos)
emit_signal(slide.get_name(), _pos, 1 , 2)
func test_on_signal_with_single_arg() -> void:
var monster :Monster = auto_free(Monster.new())
add_child(monster)
var signal_arg :Variant = await await_signal_on(monster, "move", [1.0])
assert_float(signal_arg).is_equal(1.0)
remove_child(monster)
func test_on_signal_with_many_args() -> void:
var monster :Monster = auto_free(Monster.new())
add_child(monster)
var signal_args :Variant = await await_signal_on(monster, "slide", [1.0, 1, 2])
assert_array(signal_args).is_equal([1.0, 1, 2])
remove_child(monster)
func test_on_signal_fail() -> void:
var monster :Monster = auto_free(Monster.new())
add_child(monster)
(
await assert_failure_await( func x() -> void: await await_signal_on(monster, "move", [4.0]))
).has_message("await_signal_on(move, [$v0]) timed out after 2000ms".replace("$v0", str(4.0)))
remove_child(monster)