mirror of
https://github.com/godotengine/godot.git
synced 2026-01-06 10:11:57 +03:00
Port ClassDB tests to use doctest
Extracted the most minimal core initialization functionality from `setup()` and `setup2()` so that `ClassDB` could be tested properly (input, audio, rendering, physics etc, are excluded). Display and rendering servers/singletons are not initialized at all. Due to the fact that most subsystems are disabled, fixed various crashes in the process (in order): - `AcceptDialog` OK/cancel swap behavior (used `DisplayServer` while `register_scene_types()`); - `make_default_theme` which depends on `RenderingServer`; - `XRServer` singleton access while calling `register_modules_types()`; - hidden bug in a way joypads are cleaned up (MacOS and Linux only). Removed manual `ClassDB` init/cleanup calls from `test_validate_testing.h`. ClassDB tests: Co-authored-by: Ignacio Etcheverry <ignalfonsore@gmail.com>
This commit is contained in:
@@ -35,9 +35,11 @@
|
||||
void register_mobile_vr_types() {
|
||||
ClassDB::register_class<MobileVRInterface>();
|
||||
|
||||
Ref<MobileVRInterface> mobile_vr;
|
||||
mobile_vr.instance();
|
||||
XRServer::get_singleton()->add_interface(mobile_vr);
|
||||
if (XRServer::get_singleton()) {
|
||||
Ref<MobileVRInterface> mobile_vr;
|
||||
mobile_vr.instance();
|
||||
XRServer::get_singleton()->add_interface(mobile_vr);
|
||||
}
|
||||
}
|
||||
|
||||
void unregister_mobile_vr_types() {
|
||||
|
||||
Reference in New Issue
Block a user