summaryrefslogtreecommitdiff
path: root/tests/functional/missing_kwoa_py3.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/functional/missing_kwoa_py3.py')
-rw-r--r--tests/functional/missing_kwoa_py3.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/functional/missing_kwoa_py3.py b/tests/functional/missing_kwoa_py3.py
new file mode 100644
index 000000000..3b6e1c0d8
--- /dev/null
+++ b/tests/functional/missing_kwoa_py3.py
@@ -0,0 +1,36 @@
+# pylint: disable=missing-docstring,unused-argument
+
+def target(pos, *, keyword):
+ return pos + keyword
+
+
+def forwarding_kwds(pos, **kwds):
+ target(pos, **kwds)
+
+
+def forwarding_args(*args, keyword):
+ target(*args, keyword=keyword)
+
+def forwarding_conversion(*args, **kwargs):
+ target(*args, **dict(kwargs))
+
+
+def not_forwarding_kwargs(*args, **kwargs):
+ target(*args) # [missing-kwoa]
+
+
+target(1, keyword=2)
+
+PARAM = 1
+target(2, PARAM) # [too-many-function-args, missing-kwoa]
+
+
+def some_function(*, param):
+ return param + 2
+
+
+def other_function(**kwargs):
+ return some_function(**kwargs) # Does not trigger missing-kwoa
+
+
+other_function(param=2)