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/
84 lines
2.1 KiB
GDScript
84 lines
2.1 KiB
GDScript
extends GdUnitBoolAssert
|
|
|
|
var _base: GdUnitAssertImpl
|
|
|
|
|
|
func _init(current :Variant) -> void:
|
|
_base = GdUnitAssertImpl.new(current)
|
|
# save the actual assert instance on the current thread context
|
|
GdUnitThreadManager.get_current_context().set_assert(self)
|
|
if not GdUnitAssertions.validate_value_type(current, TYPE_BOOL):
|
|
@warning_ignore("return_value_discarded")
|
|
report_error("GdUnitBoolAssert inital error, unexpected type <%s>" % GdObjects.typeof_as_string(current))
|
|
|
|
|
|
func _notification(event :int) -> void:
|
|
if event == NOTIFICATION_PREDELETE:
|
|
if _base != null:
|
|
_base.notification(event)
|
|
_base = null
|
|
|
|
|
|
func current_value() -> Variant:
|
|
return _base.current_value()
|
|
|
|
|
|
func report_success() -> GdUnitBoolAssert:
|
|
@warning_ignore("return_value_discarded")
|
|
_base.report_success()
|
|
return self
|
|
|
|
|
|
func report_error(error :String) -> GdUnitBoolAssert:
|
|
@warning_ignore("return_value_discarded")
|
|
_base.report_error(error)
|
|
return self
|
|
|
|
|
|
func override_failure_message(message: String) -> GdUnitBoolAssert:
|
|
@warning_ignore("return_value_discarded")
|
|
_base.override_failure_message(message)
|
|
return self
|
|
|
|
|
|
func append_failure_message(message: String) -> GdUnitBoolAssert:
|
|
@warning_ignore("return_value_discarded")
|
|
_base.append_failure_message(message)
|
|
return self
|
|
|
|
|
|
func is_null() -> GdUnitBoolAssert:
|
|
@warning_ignore("return_value_discarded")
|
|
_base.is_null()
|
|
return self
|
|
|
|
|
|
func is_not_null() -> GdUnitBoolAssert:
|
|
@warning_ignore("return_value_discarded")
|
|
_base.is_not_null()
|
|
return self
|
|
|
|
|
|
func is_equal(expected: Variant) -> GdUnitBoolAssert:
|
|
@warning_ignore("return_value_discarded")
|
|
_base.is_equal(expected)
|
|
return self
|
|
|
|
|
|
func is_not_equal(expected: Variant) -> GdUnitBoolAssert:
|
|
@warning_ignore("return_value_discarded")
|
|
_base.is_not_equal(expected)
|
|
return self
|
|
|
|
|
|
func is_true() -> GdUnitBoolAssert:
|
|
if current_value() != true:
|
|
return report_error(GdAssertMessages.error_is_true(current_value()))
|
|
return report_success()
|
|
|
|
|
|
func is_false() -> GdUnitBoolAssert:
|
|
if current_value() == true || current_value() == null:
|
|
return report_error(GdAssertMessages.error_is_false(current_value()))
|
|
return report_success()
|