Skip to content

Commit 962ec47

Browse files
committed
Atest for keyword only arguments
1 parent 1fca155 commit 962ec47

File tree

3 files changed

+9
-5
lines changed

3 files changed

+9
-5
lines changed

atest/DynamicTypesAnnotationsLibrary.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@ def keyword_exception_annotations(self, arg: 'NotHere'):
7575
return arg
7676

7777
@keyword
78-
def keyword_only_arguments(self, *varargs, some='value'):
79-
return f'{some}: {type(some)}, {varargs}: {type(varargs)}'
78+
def keyword_only_arguments(self, *varargs, some=111):
79+
return f'{varargs}: {type(varargs)}, {some}: {type(some)}'
8080

8181
@keyword
8282
def keyword_only_arguments_many(self, *varargs, some='value', other=None):

atest/tests_types.robot

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,16 @@ Keyword Annonations And Robot Types Disbales Argument Conversion
4747
${return} = DynamicTypesAnnotationsLibrary.Keyword Robot Types Disabled And Annotations 111
4848
Should Match Regexp ${return} 111: <(class|type) 'str'>
4949

50-
5150
Keyword Annonations And Robot Types Defined
5251
[Tags] py3
5352
${return} = DynamicTypesAnnotationsLibrary.Keyword Robot Types And Bool Defaults tidii 111
5453
Should Match Regexp ${return} tidii: <(class|type) 'str'>, 111: <(class|type) 'str'>
5554

55+
Keyword Annonations And Keyword Only Arguments
56+
[Tags] py3
57+
${return} = DynamicTypesAnnotationsLibrary.Keyword Only Arguments 1 ${1} some=222
58+
Should Match ${return} ('1', 1): <class 'tuple'>, 222: <class 'int'>
59+
5660
*** Keywords ***
5761
Import DynamicTypesAnnotationsLibrary In Python 3 Only
5862
${py3} = DynamicTypesLibrary.Is Python 3

utest/test_robotlibcore.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,15 +138,15 @@ def test_get_keyword_arguments_rf32():
138138
@pytest.mark.skipif(robot__version < '3.2', reason='For RF 3.2 or greater')
139139
def test_keyword_only_arguments_for_get_keyword_arguments_rf32():
140140
args = DynamicTypesAnnotationsLibrary(1).get_keyword_arguments
141-
assert args('keyword_only_arguments') == ['*varargs', ('some', 'value')]
141+
assert args('keyword_only_arguments') == ['*varargs', ('some', 111)]
142142
assert args('keyword_only_arguments_many') == ['*varargs', ('some', 'value'), ('other', None)]
143143

144144

145145
@pytest.mark.skipif(PY2, reason='Only for Python 3')
146146
@pytest.mark.skipif(robot__version > '3.2', reason='For RF 3.1')
147147
def test_keyword_only_arguments_for_get_keyword_arguments_rf31():
148148
args = DynamicTypesAnnotationsLibrary(1).get_keyword_arguments
149-
assert args('keyword_only_arguments') == ['*varargs', 'some=value']
149+
assert args('keyword_only_arguments') == ['*varargs', 'some=111']
150150
assert args('keyword_only_arguments_many') == ['*varargs', 'some=value', 'other=None']
151151

152152

0 commit comments

Comments
 (0)