mirror of
https://github.com/RustPython/RustPython.git
synced 2026-06-09 22:49:57 +09:00
Add tests for str.__iter__ and str.__next__
This commit is contained in:
@@ -263,3 +263,33 @@ assert "\u0041" == "A"
|
||||
assert "\u00BE" == "¾"
|
||||
assert "\u9487" == "钇"
|
||||
assert "\U0001F609" == "😉"
|
||||
|
||||
# test str iter
|
||||
iterable_str = "123456789"
|
||||
str_iter = iter(iterable_str)
|
||||
|
||||
assert next(str_iter) == "1"
|
||||
assert next(str_iter) == "2"
|
||||
assert next(str_iter) == "3"
|
||||
assert next(str_iter) == "4"
|
||||
assert next(str_iter) == "5"
|
||||
assert next(str_iter) == "6"
|
||||
assert next(str_iter) == "7"
|
||||
assert next(str_iter) == "8"
|
||||
assert next(str_iter) == "9"
|
||||
assert next(str_iter, None) == None
|
||||
assert_raises(StopIteration, lambda: next(str_iter))
|
||||
|
||||
str_iter_reversed = reversed(iterable_str)
|
||||
|
||||
assert next(str_iter_reversed) == "9"
|
||||
assert next(str_iter_reversed) == "8"
|
||||
assert next(str_iter_reversed) == "7"
|
||||
assert next(str_iter_reversed) == "6"
|
||||
assert next(str_iter_reversed) == "5"
|
||||
assert next(str_iter_reversed) == "4"
|
||||
assert next(str_iter_reversed) == "3"
|
||||
assert next(str_iter_reversed) == "2"
|
||||
assert next(str_iter_reversed) == "1"
|
||||
assert next(str_iter_reversed, None) == None
|
||||
assert_raises(StopIteration, lambda: next(str_iter_reversed))
|
||||
|
||||
Reference in New Issue
Block a user