summaryrefslogtreecommitdiffstatshomepage
path: root/tests/basics/string-slice.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/basics/string-slice.py')
-rw-r--r--tests/basics/string-slice.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/basics/string-slice.py b/tests/basics/string-slice.py
new file mode 100644
index 0000000000..7538ae5700
--- /dev/null
+++ b/tests/basics/string-slice.py
@@ -0,0 +1,32 @@
+print("123"[0:1])
+
+print("123"[0:2])
+
+print("123"[:1])
+
+print("123"[1:])
+
+# Idiom for copying sequence
+print("123"[:])
+
+print("123"[:-1])
+
+# Weird cases
+print("123"[0:0])
+print("123"[1:0])
+print("123"[1:1])
+print("123"[-1:-1])
+print("123"[-3:])
+print("123"[-3:3])
+print("123"[0:])
+print("123"[:0])
+print("123"[:-3])
+print("123"[:-4])
+# Range check testing, don't segfault, please ;-)
+print("123"[:1000000])
+print("123"[1000000:])
+print("123"[:-1000000])
+print("123"[-1000000:])
+# No IndexError!
+print(""[1:1])
+print(""[-1:-1])