setting up GDUnit
Some checks failed
Create tag and build when new code gets to main / Export (push) Failing after 3m40s
Some checks failed
Create tag and build when new code gets to main / Export (push) Failing after 3m40s
This commit is contained in:
66
addons/gdUnit4/src/core/thread/GdUnitThreadContext.gd
Normal file
66
addons/gdUnit4/src/core/thread/GdUnitThreadContext.gd
Normal file
@@ -0,0 +1,66 @@
|
||||
class_name GdUnitThreadContext
|
||||
extends RefCounted
|
||||
|
||||
var _thread :Thread
|
||||
var _thread_name :String
|
||||
var _thread_id :int
|
||||
var _signal_collector :GdUnitSignalCollector
|
||||
var _execution_context :GdUnitExecutionContext
|
||||
var _asserts := []
|
||||
|
||||
|
||||
func _init(thread :Thread = null) -> void:
|
||||
if thread != null:
|
||||
_thread = thread
|
||||
_thread_name = thread.get_meta("name")
|
||||
_thread_id = thread.get_id() as int
|
||||
else:
|
||||
_thread_name = "main"
|
||||
_thread_id = OS.get_main_thread_id()
|
||||
_signal_collector = GdUnitSignalCollector.new()
|
||||
|
||||
|
||||
func dispose() -> void:
|
||||
clear_assert()
|
||||
if is_instance_valid(_signal_collector):
|
||||
_signal_collector.clear()
|
||||
_signal_collector = null
|
||||
_execution_context = null
|
||||
_thread = null
|
||||
|
||||
|
||||
func clear_assert() -> void:
|
||||
_asserts.clear()
|
||||
|
||||
|
||||
func set_assert(value :GdUnitAssert) -> void:
|
||||
if value != null:
|
||||
_asserts.append(value)
|
||||
|
||||
|
||||
func get_assert() -> GdUnitAssert:
|
||||
return null if _asserts.is_empty() else _asserts[-1]
|
||||
|
||||
|
||||
func set_execution_context(context :GdUnitExecutionContext) -> void:
|
||||
_execution_context = context
|
||||
|
||||
|
||||
func get_execution_context() -> GdUnitExecutionContext:
|
||||
return _execution_context
|
||||
|
||||
|
||||
func get_execution_context_id() -> int:
|
||||
return _execution_context.get_instance_id()
|
||||
|
||||
|
||||
func get_signal_collector() -> GdUnitSignalCollector:
|
||||
return _signal_collector
|
||||
|
||||
|
||||
func thread_id() -> int:
|
||||
return _thread_id
|
||||
|
||||
|
||||
func _to_string() -> String:
|
||||
return "ThreadContext <%s>: %s " % [_thread_name, _thread_id]
|
||||
Reference in New Issue
Block a user