diff options
author | John R. Lenton <jlenton@gmail.com> | 2014-01-11 12:39:33 +0000 |
---|---|---|
committer | John R. Lenton <jlenton@gmail.com> | 2014-01-11 12:39:33 +0000 |
commit | c1bef21920d7fa03484647f2c339f53663fe0180 (patch) | |
tree | 859bd2c4a8c4cc40e53ce2403328a889abe072ac /tests | |
parent | cf11c961b4d602c8b77f7d67aa976cf3fbb026b5 (diff) | |
download | micropython-c1bef21920d7fa03484647f2c339f53663fe0180.tar.gz micropython-c1bef21920d7fa03484647f2c339f53663fe0180.zip |
Implemented support for `in` and `not in` operators.
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/basics/run-tests | 3 | ||||
-rw-r--r-- | tests/basics/tests/containment.py | 23 |
2 files changed, 26 insertions, 0 deletions
diff --git a/tests/basics/run-tests b/tests/basics/run-tests index 0c3995da15..bc2969ae3d 100755 --- a/tests/basics/run-tests +++ b/tests/basics/run-tests @@ -42,4 +42,7 @@ echo "$numpassed tests passed" if [[ $numfailed != 0 ]] then echo "$numfailed tests failed -$namefailed" + exit 1 +else + exit 0 fi diff --git a/tests/basics/tests/containment.py b/tests/basics/tests/containment.py new file mode 100644 index 0000000000..84d40b4e8f --- /dev/null +++ b/tests/basics/tests/containment.py @@ -0,0 +1,23 @@ +for i in 1, 2: + for o in {1:2}, {1}, {1:2}.keys(): + print("{} in {}: {}".format(i, o, i in o)) + print("{} not in {}: {}".format(i, o, i not in o)) + +haystack = "supercalifragilistc" +for needle in (haystack[i:] for i in range(len(haystack))): + print(needle, "in", haystack, "::", needle in haystack) + print(needle, "not in", haystack, "::", needle not in haystack) + print(haystack, "in", needle, "::", haystack in needle) + print(haystack, "not in", needle, "::", haystack not in needle) +for needle in (haystack[:i+1] for i in range(len(haystack))): + print(needle, "in", haystack, "::", needle in haystack) + print(needle, "not in", haystack, "::", needle not in haystack) + print(haystack, "in", needle, "::", haystack in needle) + print(haystack, "not in", needle, "::", haystack not in needle) + +# until here, the tests would work without the 'second attempt' iteration thing. + +for i in 1, 2: + for o in [], [1], [1, 2]: + print("{} in {}: {}".format(i, o, i in o)) + print("{} not in {}: {}".format(i, o, i not in o)) |