1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# Empty line
assert_eq(''.splitlines(), [])
assert_eq('\n'.splitlines(), [''])
# Starts with line break
assert_eq('\ntest'.splitlines(), ['', 'test'])
# Ends with line break
assert_eq('test\n'.splitlines(), ['test'])
# Different line breaks
assert_eq('this\nis\na\ntest'.splitlines(), ['this', 'is', 'a', 'test'])
# Only line breaks
assert_eq('\n\n\n'.splitlines(), ['', '', ''])
assert_eq('\r\r\r'.splitlines(), ['', '', ''])
assert_eq('\n\r\n\r'.splitlines(), ['', '', ''])
assert_eq('\r\n\r\n\r\n'.splitlines(), ['', '', ''])
# Escaped sequences
assert_eq('\n\\n\\\n'.splitlines(), ['', '\\n\\'])
# KeepEnds
assert_eq(''.splitlines(True), [])
assert_eq('\n'.splitlines(True), ['\n'])
assert_eq('this\nis\r\na\rtest'.splitlines(True), ['this\n', 'is\r\n', 'a\r', 'test'])
assert_eq('\ntest'.splitlines(True), ['\n', 'test'])
assert_eq('test\n'.splitlines(True), ['test\n'])
assert_eq('\n\\n\\\n'.splitlines(True), ['\n', '\\n\\\n'])
|