Skip to content

Commit b81a0a1

Browse files
committed
Convert most remaining string methods to implicit args
Also support out-of-range start/end params for some functions.
1 parent e0e0734 commit b81a0a1

File tree

2 files changed

+341
-387
lines changed

2 files changed

+341
-387
lines changed

tests/snippets/strings.py

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,45 @@
6262
assert c.title() == 'Hallo'
6363
assert c.count('l') == 2
6464

65+
assert 'aaa'.count('a') == 3
66+
assert 'aaa'.count('a', 1) == 2
67+
assert 'aaa'.count('a', 1, 2) == 1
68+
assert 'aaa'.count('a', 2, 2) == 0
69+
assert 'aaa'.count('a', 2, 1) == 0
70+
71+
assert '___a__'.find('a') == 3
72+
assert '___a__'.find('a', -10) == 3
73+
assert '___a__'.find('a', -3) == 3
74+
assert '___a__'.find('a', -2) == -1
75+
assert '___a__'.find('a', -1) == -1
76+
assert '___a__'.find('a', 0) == 3
77+
assert '___a__'.find('a', 3) == 3
78+
assert '___a__'.find('a', 4) == -1
79+
assert '___a__'.find('a', 10) == -1
80+
assert '___a__'.rfind('a', 3) == 3
81+
assert '___a__'.index('a', 3) == 3
82+
83+
assert '___a__'.find('a', 0, -10) == -1
84+
assert '___a__'.find('a', 0, -3) == -1
85+
assert '___a__'.find('a', 0, -2) == 3
86+
assert '___a__'.find('a', 0, -1) == 3
87+
assert '___a__'.find('a', 0, 0) == -1
88+
assert '___a__'.find('a', 0, 3) == -1
89+
assert '___a__'.find('a', 0, 4) == 3
90+
assert '___a__'.find('a', 0, 10) == 3
91+
92+
assert '___a__'.find('a', 3, 3) == -1
93+
assert '___a__'.find('a', 3, 4) == 3
94+
assert '___a__'.find('a', 4, 3) == -1
95+
96+
assert 'abcd'.startswith('b', 1)
97+
assert not 'abcd'.startswith('b', -4)
98+
assert 'abcd'.startswith('b', -3)
99+
100+
assert not 'abcd'.startswith('b', 3, 3)
101+
assert 'abcd'.startswith('', 3, 3)
102+
assert not 'abcd'.startswith('', 4, 3)
103+
65104
assert ' '.isspace()
66105
assert 'hello\nhallo\nHallo'.splitlines() == ['hello', 'hallo', 'Hallo']
67106
assert 'abc\t12345\txyz'.expandtabs() == 'abc 12345 xyz'

0 commit comments

Comments
 (0)