summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/tests
diff options
context:
space:
mode:
authorHolonProduction <holonproduction@gmail.com>2024-01-26 17:28:13 +0100
committerHolonProduction <holonproduction@gmail.com>2024-03-01 11:38:49 +0100
commit1f42455e0a6f4b708b06500f63e2413d2a218a7e (patch)
treefaeb818b6c073912b094bf0f09798630402cbf7c /modules/gdscript/tests
parentfc7d7d3dae02213d0a8d4b3af24f67017ef18770 (diff)
downloadredot-engine-1f42455e0a6f4b708b06500f63e2413d2a218a7e.tar.gz
Debugging additions
Diffstat (limited to 'modules/gdscript/tests')
-rw-r--r--modules/gdscript/tests/scripts/completion/get_node/get_node.tscn2
-rw-r--r--modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene/class_member_typehint_scene.gd5
-rw-r--r--modules/gdscript/tests/test_completion.h28
3 files changed, 29 insertions, 6 deletions
diff --git a/modules/gdscript/tests/scripts/completion/get_node/get_node.tscn b/modules/gdscript/tests/scripts/completion/get_node/get_node.tscn
index 8e5994afab..35ac666941 100644
--- a/modules/gdscript/tests/scripts/completion/get_node/get_node.tscn
+++ b/modules/gdscript/tests/scripts/completion/get_node/get_node.tscn
@@ -12,8 +12,8 @@
unique_name_in_owner = true
[node name="UniqueA" type="Node" parent="UniqueNames"]
-script = ExtResource("1_ldc4g")
unique_name_in_owner = true
+script = ExtResource("1_ldc4g")
[node name="A" type="Node" parent="."]
script = ExtResource("1_ldc4g")
diff --git a/modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene/class_member_typehint_scene.gd b/modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene/class_member_typehint_scene.gd
index e4edc3a4e4..c261d6e754 100644
--- a/modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene/class_member_typehint_scene.gd
+++ b/modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene/class_member_typehint_scene.gd
@@ -1,8 +1,9 @@
+@uid("uid://d04ev0gljq5yp") # Generated automatically, do not modify.
extends Node
const A := preload("res://completion/class_a.notest.gd")
-var test: A = $A
+@onready var test: A = $A
func a():
- test.➡
+ test.➡
diff --git a/modules/gdscript/tests/test_completion.h b/modules/gdscript/tests/test_completion.h
index b127471012..1545245bb7 100644
--- a/modules/gdscript/tests/test_completion.h
+++ b/modules/gdscript/tests/test_completion.h
@@ -31,6 +31,9 @@
#ifndef TEST_COMPLETION_H
#define TEST_COMPLETION_H
+#include "core/io/resource.h"
+#include "core/io/resource_loader.h"
+#include "core/io/resource_uid.h"
#ifdef TOOLS_ENABLED
#include "core/io/config_file.h"
@@ -140,8 +143,20 @@ static void test_directory(const String &p_dir) {
bool forced;
Node *owner = nullptr;
+ print_line("before owner load");
if (conf.has_section_key("input", "scene")) {
- Ref<PackedScene> scene = ResourceLoader::load(conf.get_value("input", "scene"), "PackedScene");
+ /*List<String> deps;
+ ResourceLoader::get_dependencies(conf.get_value("input", "scene"), &deps);
+ for (const String &E : deps) {
+ print_line(E);
+ print_line(ResourceLoader::exists(E));
+ print_line(ResourceLoader::get_resource_type(E));
+ Ref<GDScript> s = ResourceLoader::load(E);
+ if (s->is_valid()) {
+ print_line(s->get_members().size());
+ }
+ }*/
+ Ref<PackedScene> scene = ResourceLoader::load(conf.get_value("input", "scene"), "PackedScene", ResourceFormatLoader::CACHE_MODE_IGNORE_DEEP);
if (scene.is_valid()) {
owner = scene->instantiate();
}
@@ -151,11 +166,16 @@ static void test_directory(const String &p_dir) {
owner = scene->instantiate();
}
}
-
+ print_line("after owner load");
+ if (owner != nullptr) {
+ print_line("owner", owner->to_string());
+ } else {
+ print_line("no owner");
+ }
GDScriptLanguage::get_singleton()->complete_code(code, path.path_join(next), owner, &options, forced, call_hint);
String contains_excluded;
for (ScriptLanguage::CodeCompletionOption &option : options) {
- print_line(option.display);
+ //print_line(option.display);
for (const Dictionary &E : exclude) {
if (match_option(E, option)) {
contains_excluded = option.display;
@@ -199,6 +219,8 @@ static void test_directory(const String &p_dir) {
TEST_SUITE("[Modules][GDScript][Completion]") {
TEST_CASE("[Editor] Check suggestion list") {
+ ResourceUID::initialize_class();
+
// Set all editor settings that code completion relies on.
EditorSettings::get_singleton()->set_setting("text_editor/completion/use_single_quotes", false);
init_language("modules/gdscript/tests/scripts");