summaryrefslogtreecommitdiffstatshomepage
path: root/tests/basics
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2014-02-16 00:01:29 +0000
committerDamien George <damien.p.george@gmail.com>2014-02-16 00:01:29 +0000
commit2e482cdb7b1e457053edcb8585414ecd1eba2cdc (patch)
treedd919156b1fb137a4981224ca847c5123c41f0be /tests/basics
parent96056a62721cb4d81856311d9b808460a80b59d4 (diff)
downloadmicropython-2e482cdb7b1e457053edcb8585414ecd1eba2cdc.tar.gz
micropython-2e482cdb7b1e457053edcb8585414ecd1eba2cdc.zip
py: Implement *vargs support.
Addresses issue #295.
Diffstat (limited to 'tests/basics')
-rw-r--r--tests/basics/fun-varargs.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/basics/fun-varargs.py b/tests/basics/fun-varargs.py
new file mode 100644
index 0000000000..ff29c33f7b
--- /dev/null
+++ b/tests/basics/fun-varargs.py
@@ -0,0 +1,41 @@
+# function with just varargs
+def f1(*args):
+ print(args)
+
+f1()
+f1(1)
+f1(1, 2)
+
+# function with 1 arg, then varargs
+def f2(a, *args):
+ print(a, args)
+
+f2(1)
+f2(1, 2)
+f2(1, 2, 3)
+
+# function with 2 args, then varargs
+def f3(a, b, *args):
+ print(a, b, args)
+
+f3(1, 2)
+f3(1, 2, 3)
+f3(1, 2, 3, 4)
+
+# function with 1 default arg, then varargs
+def f4(a=0, *args):
+ print(a, args)
+
+f4()
+f4(1)
+f4(1, 2)
+f4(1, 2, 3)
+
+# function with 1 arg, 1 default arg, then varargs
+def f5(a, b=0, *args):
+ print(a, b, args)
+
+f5(1)
+f5(1, 2)
+f5(1, 2, 3)
+f5(1, 2, 3, 4)