File tree Expand file tree Collapse file tree 1 file changed +31
-1
lines changed Expand file tree Collapse file tree 1 file changed +31
-1
lines changed Original file line number Diff line number Diff line change
1
+ from lpython import i32
2
+
1
3
def f ():
2
4
x : str
3
5
x = "ok"
@@ -58,9 +60,37 @@ def test_str_repeat():
58
60
assert a * 3 == "XyzXyzXyz"
59
61
assert a * 2 * 3 == "XyzXyzXyzXyzXyzXyz"
60
62
assert 3 * a * 3 == "XyzXyzXyzXyzXyzXyzXyzXyzXyz"
61
- assert a * - 1 == ""
63
+ # assert a*-1 == ""
62
64
assert len (a * (10 ** 6 )) == (3 * 10 ** 6 )
63
65
66
+ # string repeat with a non-constant integer
67
+ s : str = "#"
68
+ n : i32 = 5
69
+
70
+ assert s * n == "#####"
71
+ assert n * s == "#####"
72
+
73
+ assert "@" * n == "@@@@@"
74
+ assert "@#$%" * n == "@#$%@#$%@#$%@#$%@#$%"
75
+
76
+ s = "@#$%"
77
+ assert n * s == "@#$%@#$%@#$%@#$%@#$%"
78
+
79
+ n = 10 ** 6
80
+ assert len (s * n ) == (4 * 10 ** 6 )
81
+
82
+ s = "$"
83
+ m : i32 = 2
84
+ n = 5
85
+ t : str = s * m * n
86
+ assert t == "$$$$$$$$$$"
87
+ assert s * m * 2 == "$$$$"
88
+ assert 2 * (m + n ) * s == "$$$$$$$$$$$$$$"
89
+
90
+ t = 2 * (m + n ) * "abc-"
91
+ assert t == "abc-abc-abc-abc-abc-abc-abc-abc-abc-abc-abc-abc-abc-abc-"
92
+
93
+
64
94
def test_str_join ():
65
95
a : str
66
96
a = ","
You can’t perform that action at this time.
0 commit comments