From fc7d7d3dae02213d0a8d4b3af24f67017ef18770 Mon Sep 17 00:00:00 2001 From: HolonProduction Date: Mon, 8 Jan 2024 22:46:03 +0100 Subject: Add test for `get_node` autocompletion --- modules/gdscript/gdscript_editor.cpp | 16 +++++++++++++++- .../tests/scripts/completion/class_a.notest.gd | 8 ++++++++ .../tests/scripts/completion/get_node/get_node.tscn | 19 +++++++++++++++++++ .../get_node/get_node_member_annotated.cfg | 4 ---- .../completion/get_node/get_node_member_annotated.gd | 6 ------ .../scripts/completion/get_node/literal/dollar.cfg | 7 +++++++ .../scripts/completion/get_node/literal/dollar.gd | 5 +++++ .../scripts/completion/get_node/literal/percent.cfg | 7 +++++++ .../scripts/completion/get_node/literal/percent.gd | 5 +++++ .../get_node/literal_scene/dollar_class_scene.cfg | 14 ++++++++++++++ .../get_node/literal_scene/dollar_class_scene.gd | 5 +++++ .../get_node/literal_scene/dollar_native_scene.cfg | 14 ++++++++++++++ .../get_node/literal_scene/dollar_native_scene.gd | 4 ++++ .../get_node/literal_scene/percent_class_scene.cfg | 14 ++++++++++++++ .../get_node/literal_scene/percent_class_scene.gd | 5 +++++ .../get_node/literal_scene/percent_native_scene.cfg | 14 ++++++++++++++ .../get_node/literal_scene/percent_native_scene.gd | 4 ++++ .../scripts/completion/get_node/local/local.cfg | 7 +++++++ .../tests/scripts/completion/get_node/local/local.gd | 5 +++++ .../get_node/local_interfered/local_interfered.cfg | 7 +++++++ .../get_node/local_interfered/local_interfered.gd | 5 +++++ .../class_local_interfered_scene.cfg | 14 ++++++++++++++ .../class_local_interfered_scene.gd | 5 +++++ .../native_local_interfered_scene.cfg | 14 ++++++++++++++ .../native_local_interfered_scene.gd | 5 +++++ .../get_node/local_scene/class_local_scene.cfg | 14 ++++++++++++++ .../get_node/local_scene/class_local_scene.gd | 5 +++++ .../get_node/local_scene/native_local_scene.cfg | 14 ++++++++++++++ .../get_node/local_scene/native_local_scene.gd | 5 +++++ .../get_node/local_typehint/class_local_typehint.cfg | 12 ++++++++++++ .../get_node/local_typehint/class_local_typehint.gd | 7 +++++++ .../local_typehint/native_local_typehint.cfg | 12 ++++++++++++ .../get_node/local_typehint/native_local_typehint.gd | 5 +++++ .../class_local_typehint_scene.cfg | 14 ++++++++++++++ .../class_local_typehint_scene.gd | 7 +++++++ .../native_local_typehint_scene.cfg | 14 ++++++++++++++ .../native_local_typehint_scene.gd | 5 +++++ .../class_local_typehint_scene_broad.cfg | 14 ++++++++++++++ .../class_local_typehint_scene_broad.notest.gd | 6 ++++++ .../native_local_typehint_scene_broad.cfg | 14 ++++++++++++++ .../native_local_typehint_scene_broad.notest.gd | 6 ++++++ .../class_local_typehint_scene_incompatible.cfg | 20 ++++++++++++++++++++ .../class_local_typehint_scene_incompatible.gd | 5 +++++ .../native_local_typehint_scene_incompatible.cfg | 20 ++++++++++++++++++++ .../native_local_typehint_scene_incompatible.gd | 5 +++++ .../scripts/completion/get_node/member/member.cfg | 7 +++++++ .../scripts/completion/get_node/member/member.gd | 6 ++++++ .../get_node/member_interfered/member_interfered.cfg | 7 +++++++ .../get_node/member_interfered/member_interfered.gd | 6 ++++++ .../class_member_interfered_scene.cfg | 14 ++++++++++++++ .../class_member_interfered_scene.gd | 6 ++++++ .../native_member_interfered_scene.cfg | 14 ++++++++++++++ .../native_member_interfered_scene.gd | 6 ++++++ .../get_node/member_scene/class_member_scene.cfg | 14 ++++++++++++++ .../get_node/member_scene/class_member_scene.gd | 6 ++++++ .../get_node/member_scene/native_member_scene.cfg | 14 ++++++++++++++ .../get_node/member_scene/native_member_scene.gd | 6 ++++++ .../member_typehint/class_member_typehint.cfg | 12 ++++++++++++ .../member_typehint/class_member_typehint.gd | 8 ++++++++ .../member_typehint/native_member_typehint.cfg | 12 ++++++++++++ .../member_typehint/native_member_typehint.gd | 6 ++++++ .../class_member_typehint_scene.cfg | 14 ++++++++++++++ .../class_member_typehint_scene.gd | 8 ++++++++ .../native_member_typehint_scene.cfg | 14 ++++++++++++++ .../native_member_typehint_scene.gd | 6 ++++++ .../class_member_typehint_scene_broad.cfg | 16 ++++++++++++++++ .../class_member_typehint_scene_broad.gd | 6 ++++++ .../native_member_typehint_scene_broad.cfg | 16 ++++++++++++++++ .../native_member_typehint_scene_broad.gd | 6 ++++++ .../class_member_typehint_scene_incompatible.cfg | 20 ++++++++++++++++++++ .../class_member_typehint_scene_incompatible.gd | 6 ++++++ .../native_member_typehint_scene_incompatible.cfg | 20 ++++++++++++++++++++ .../native_member_typehint_scene_incompatible.gd | 6 ++++++ modules/gdscript/tests/test_completion.h | 10 ++++++++++ 74 files changed, 698 insertions(+), 11 deletions(-) create mode 100644 modules/gdscript/tests/scripts/completion/class_a.notest.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/get_node.tscn delete mode 100644 modules/gdscript/tests/scripts/completion/get_node/get_node_member_annotated.cfg delete mode 100644 modules/gdscript/tests/scripts/completion/get_node/get_node_member_annotated.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal/dollar.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal/dollar.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal/percent.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal/percent.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal_scene/dollar_class_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal_scene/dollar_class_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal_scene/dollar_native_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal_scene/dollar_native_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal_scene/percent_class_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal_scene/percent_class_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal_scene/percent_native_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/literal_scene/percent_native_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local/local.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local/local.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_interfered/local_interfered.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_interfered/local_interfered.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_interfered_scene/class_local_interfered_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_interfered_scene/class_local_interfered_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_interfered_scene/native_local_interfered_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_interfered_scene/native_local_interfered_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_scene/class_local_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_scene/class_local_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_scene/native_local_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_scene/native_local_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint/class_local_typehint.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint/class_local_typehint.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint/native_local_typehint.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint/native_local_typehint.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene/class_local_typehint_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene/class_local_typehint_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene/native_local_typehint_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene/native_local_typehint_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene_broad/class_local_typehint_scene_broad.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene_broad/class_local_typehint_scene_broad.notest.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene_broad/native_local_typehint_scene_broad.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene_broad/native_local_typehint_scene_broad.notest.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene_incompatible/class_local_typehint_scene_incompatible.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene_incompatible/class_local_typehint_scene_incompatible.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene_incompatible/native_local_typehint_scene_incompatible.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/local_typehint_scene_incompatible/native_local_typehint_scene_incompatible.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member/member.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member/member.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_interfered/member_interfered.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_interfered/member_interfered.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_interfered_scene/class_member_interfered_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_interfered_scene/class_member_interfered_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_interfered_scene/native_member_interfered_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_interfered_scene/native_member_interfered_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_scene/class_member_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_scene/class_member_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_scene/native_member_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_scene/native_member_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint/class_member_typehint.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint/class_member_typehint.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint/native_member_typehint.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint/native_member_typehint.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene/class_member_typehint_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene/class_member_typehint_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene/native_member_typehint_scene.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene/native_member_typehint_scene.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene_broad/class_member_typehint_scene_broad.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene_broad/class_member_typehint_scene_broad.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene_broad/native_member_typehint_scene_broad.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene_broad/native_member_typehint_scene_broad.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene_incompatible/class_member_typehint_scene_incompatible.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene_incompatible/class_member_typehint_scene_incompatible.gd create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene_incompatible/native_member_typehint_scene_incompatible.cfg create mode 100644 modules/gdscript/tests/scripts/completion/get_node/member_typehint_scene_incompatible/native_member_typehint_scene_incompatible.gd (limited to 'modules/gdscript') diff --git a/modules/gdscript/gdscript_editor.cpp b/modules/gdscript/gdscript_editor.cpp index babd2c1772..bc3d82062d 100644 --- a/modules/gdscript/gdscript_editor.cpp +++ b/modules/gdscript/gdscript_editor.cpp @@ -1125,19 +1125,31 @@ static void _find_identifiers_in_base(const GDScriptCompletionIdentifier &p_base base_type = GDScriptParser::DataType(); } break; case GDScriptParser::DataType::SCRIPT: { + print_line("identifier script"); Ref