Skip to content

Commit 621c70a

Browse files
committed
fix(langserver): completion in templated test cases should not show keywords and such things
1 parent 95f9e66 commit 621c70a

File tree

2 files changed

+13
-5
lines changed
  • packages
    • language_server/src/robotcode/language_server/robotframework/parts
    • robot/src/robotcode/robot/utils

2 files changed

+13
-5
lines changed

packages/language_server/src/robotcode/language_server/robotframework/parts/completion.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1317,6 +1317,13 @@ def check_in_template() -> bool:
13171317
):
13181318
return True
13191319

1320+
if any(
1321+
template
1322+
for template in testcase_node.body
1323+
if isinstance(template, Template) and template.get_value(Token.NAME) == "NONE"
1324+
):
1325+
return False
1326+
13201327
if any(
13211328
file
13221329
for file in nodes_at_position

packages/robot/src/robotcode/robot/utils/ast.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -201,11 +201,12 @@ def get_tokens_at_position(node: Statement, position: Position, include_end: boo
201201

202202

203203
def iter_nodes_at_position(node: ast.AST, position: Position, include_end: bool = False) -> Iterator[ast.AST]:
204-
return (
205-
n
206-
for n in iter_nodes(node)
207-
if position.is_in_range(range := range_from_node(n), include_end) or include_end and range.end == position
208-
)
204+
if position.is_in_range(range_from_node(node), include_end):
205+
yield node
206+
207+
for n in iter_nodes(node):
208+
if position.is_in_range(range := range_from_node(n), include_end) or include_end and range.end == position:
209+
yield n
209210

210211

211212
def get_nodes_at_position(node: ast.AST, position: Position, include_end: bool = False) -> List[ast.AST]:

0 commit comments

Comments
 (0)