Adding log.gd

This commit is contained in:
Dan Baker 2024-05-02 09:36:31 +01:00
parent eb32d6614e
commit 4522259397
547 changed files with 46844 additions and 0 deletions

View file

@ -0,0 +1,123 @@
# GdUnit generated TestSuite
class_name CmdCommandHandlerTest
extends GdUnitTestSuite
# TestSuite generated from
const __source = 'res://addons/gdUnit4/src/cmd/CmdCommandHandler.gd'
var _cmd_options: CmdOptions
var _cmd_instance: TestCommands
# small example of command class
class TestCommands:
func cmd_a() -> String:
return "cmd_a"
func cmd_foo() -> String:
return "cmd_foo"
func cmd_bar(value :String) -> String:
return value
func cmd_bar2(value_a: String, value_b: String) -> Array:
return [value_a, value_b]
func cmd_x() -> String:
return "cmd_x"
func before() -> void:
# setup command options
_cmd_options = CmdOptions.new([
CmdOption.new("-a", "some help text a", "some description a"),
CmdOption.new("-f, --foo", "some help text foo", "some description foo"),
CmdOption.new("-b, --bar", "some help text bar", "some description bar"),
CmdOption.new("-b2, --bar2", "some help text bar", "some description bar"),
],
# advnaced options
[
CmdOption.new("-x", "some help text x", "some description x"),
])
_cmd_instance = TestCommands.new()
func test__validate_no_registerd_commands() -> void:
var cmd_handler := CmdCommandHandler.new(_cmd_options)
assert_result(cmd_handler._validate()).is_success()
func test__validate_registerd_commands() -> void:
var cmd_handler: = CmdCommandHandler.new(_cmd_options)
cmd_handler.register_cb("-a", Callable(_cmd_instance, "cmd_a"))
cmd_handler.register_cb("-f", Callable(_cmd_instance, "cmd_foo"))
cmd_handler.register_cb("-b", Callable(_cmd_instance, "cmd_bar"))
assert_result(cmd_handler._validate()).is_success()
func test__validate_registerd_unknown_commands() -> void:
var cmd_handler: = CmdCommandHandler.new(_cmd_options)
cmd_handler.register_cb("-a", Callable(_cmd_instance, "cmd_a"))
cmd_handler.register_cb("-d", Callable(_cmd_instance, "cmd_foo"))
cmd_handler.register_cb("-b", Callable(_cmd_instance, "cmd_bar"))
cmd_handler.register_cb("-y", Callable(_cmd_instance, "cmd_x"))
assert_result(cmd_handler._validate())\
.is_error()\
.contains_message("The command '-d' is unknown, verify your CmdOptions!\nThe command '-y' is unknown, verify your CmdOptions!")
func test__validate_registerd_invalid_callbacks() -> void:
var cmd_handler := CmdCommandHandler.new(_cmd_options)
cmd_handler.register_cb("-a", Callable(_cmd_instance, "cmd_a"))
cmd_handler.register_cb("-f")
cmd_handler.register_cb("-b", Callable(_cmd_instance, "cmd_not_exists"))
assert_result(cmd_handler._validate())\
.is_error()\
.contains_message("Invalid function reference for command '-b', Check the function reference!")
func test__validate_registerd_register_same_callback_twice() -> void:
var cmd_handler: = CmdCommandHandler.new(_cmd_options)
cmd_handler.register_cb("-a", Callable(_cmd_instance, "cmd_a"))
cmd_handler.register_cb("-b", Callable(_cmd_instance, "cmd_a"))
if cmd_handler._enhanced_fr_test:
assert_result(cmd_handler._validate())\
.is_error()\
.contains_message("The function reference 'cmd_a' already registerd for command '-a'!")
func test_execute_no_commands() -> void:
var cmd_handler: = CmdCommandHandler.new(_cmd_options)
assert_result(cmd_handler.execute([])).is_success()
func test_execute_commands_no_cb_registered() -> void:
var cmd_handler: = CmdCommandHandler.new(_cmd_options)
assert_result(cmd_handler.execute([CmdCommand.new("-a")])).is_success()
func test_execute_commands_with_cb_registered() -> void:
var cmd_handler: = CmdCommandHandler.new(_cmd_options)
var cmd_spy = spy(_cmd_instance)
cmd_handler.register_cb("-a", Callable(cmd_spy, "cmd_a"))
cmd_handler.register_cb("-b", Callable(cmd_spy, "cmd_bar"))
cmd_handler.register_cbv("-b2", Callable(cmd_spy, "cmd_bar2"))
assert_result(cmd_handler.execute([CmdCommand.new("-a")])).is_success()
verify(cmd_spy).cmd_a()
verify_no_more_interactions(cmd_spy)
reset(cmd_spy)
assert_result(cmd_handler.execute([
CmdCommand.new("-a"),
CmdCommand.new("-b", ["some_value"]),
CmdCommand.new("-b2", ["value1", "value2"])])).is_success()
verify(cmd_spy).cmd_a()
verify(cmd_spy).cmd_bar("some_value")
verify(cmd_spy).cmd_bar2("value1", "value2")
verify_no_more_interactions(cmd_spy)