diff options
author | Damien George <damien.p.george@gmail.com> | 2016-05-07 22:02:46 +0100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2016-05-07 22:02:46 +0100 |
commit | 470c429ee126dee1742d0e83480b3187a7ce0170 (patch) | |
tree | 1c9c11edb9a8e9819a289162073ef5a4b1926797 /tests/basics | |
parent | 12dd8df3756d58af2f4d1f54eefd90f1ce1e0dbe (diff) | |
download | micropython-470c429ee126dee1742d0e83480b3187a7ce0170.tar.gz micropython-470c429ee126dee1742d0e83480b3187a7ce0170.zip |
py/runtime: Properly handle passing user mappings to ** keyword args.
Diffstat (limited to 'tests/basics')
-rw-r--r-- | tests/basics/fun_calldblstar3.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/basics/fun_calldblstar3.py b/tests/basics/fun_calldblstar3.py new file mode 100644 index 0000000000..4367e68df7 --- /dev/null +++ b/tests/basics/fun_calldblstar3.py @@ -0,0 +1,16 @@ +# test passing a user-defined mapping as the argument to ** + +def foo(**kw): + print(sorted(kw.items())) + +class Mapping: + def keys(self): + return ['a', 'b', 'c'] + + def __getitem__(self, key): + if key == 'a': + return 1 + else: + return 2 + +foo(**Mapping()) |