@@ -30,49 +30,36 @@ class TestBracketCompletionEnabled(TestCase):
30
30
def setUp (self ):
31
31
self .repl = create_repl (brackets_enabled = True )
32
32
33
+ def process_multiple_events (self , event_list ):
34
+ for event in event_list :
35
+ self .repl .process_event (event )
36
+
33
37
def test_start_line (self ):
34
38
self .repl .process_event ("(" )
35
39
self .assertEqual (self .repl ._current_line , "()" )
36
40
self .assertEqual (self .repl ._cursor_offset , 1 )
37
41
38
42
def test_nested_brackets (self ):
39
- self .repl .process_event ("(" )
40
- self .repl .process_event ("[" )
41
- self .repl .process_event ("{" )
43
+ self .process_multiple_events (["(" , "[" , "{" ])
42
44
self .assertEqual (self .repl ._current_line , """([{}])""" )
43
45
self .assertEqual (self .repl ._cursor_offset , 3 )
44
46
45
47
def test_quotes (self ):
46
- self .repl .process_event ("(" )
47
- self .repl .process_event ("'" )
48
- self .repl .process_event ("x" )
49
- self .repl .process_event ("<TAB>" )
50
- self .repl .process_event ("," )
51
- self .repl .process_event ("[" )
52
- self .repl .process_event ('"' )
53
- self .repl .process_event ("y" )
54
- self .repl .process_event ("<TAB>" )
55
- self .repl .process_event ("<TAB>" )
56
- self .repl .process_event ("<TAB>" )
48
+ self .process_multiple_events (["(" , "'" , "x" , "<TAB>" , "," ])
49
+ self .process_multiple_events (["[" , '"' , "y" , "<TAB>" , "<TAB>" , "<TAB>" ])
57
50
self .assertEqual (self .repl ._current_line , """('x',["y"])""" )
58
51
self .assertEqual (self .repl ._cursor_offset , 11 )
59
52
60
53
def test_bracket_overwrite_closing_char (self ):
61
- self .repl .process_event ("(" )
62
- self .repl .process_event ("[" )
63
- self .repl .process_event ("{" )
54
+ self .process_multiple_events (["(" , "[" , "{" ])
64
55
self .assertEqual (self .repl ._current_line , """([{}])""" )
65
56
self .assertEqual (self .repl ._cursor_offset , 3 )
66
- self .repl .process_event ("}" )
67
- self .repl .process_event ("]" )
68
- self .repl .process_event (")" )
57
+ self .process_multiple_events (["}" , "]" , ")" ])
69
58
self .assertEqual (self .repl ._current_line , """([{}])""" )
70
59
self .assertEqual (self .repl ._cursor_offset , 6 )
71
60
72
61
def test_brackets_move_cursor_on_tab (self ):
73
- self .repl .process_event ("(" )
74
- self .repl .process_event ("[" )
75
- self .repl .process_event ("{" )
62
+ self .process_multiple_events (["(" , "[" , "{" ])
76
63
self .assertEqual (self .repl ._current_line , """([{}])""" )
77
64
self .assertEqual (self .repl ._cursor_offset , 3 )
78
65
self .repl .process_event ("<TAB>" )
@@ -104,9 +91,9 @@ def test_brackets_deletion_on_backspace(self):
104
91
def test_brackets_deletion_on_backspace_nested (self ):
105
92
self .repl .current_line = '([{""}])'
106
93
self .repl .cursor_offset = 4
107
- self .repl . process_event ( "<BACKSPACE>" )
108
- self . repl . process_event ( "<BACKSPACE>" )
109
- self . repl . process_event ( "<BACKSPACE>" )
94
+ self .process_multiple_events (
95
+ [ "<BACKSPACE>" , "<BACKSPACE>" , "<BACKSPACE>" ]
96
+ )
110
97
self .assertEqual (self .repl ._current_line , "()" )
111
98
self .assertEqual (self .repl .cursor_offset , 1 )
112
99
@@ -115,34 +102,30 @@ class TestBracketCompletionDisabled(TestCase):
115
102
def setUp (self ):
116
103
self .repl = create_repl (brackets_enabled = False )
117
104
105
+ def process_multiple_events (self , event_list ):
106
+ for event in event_list :
107
+ self .repl .process_event (event )
108
+
118
109
def test_start_line (self ):
119
110
self .repl .process_event ("(" )
120
111
self .assertEqual (self .repl ._current_line , "(" )
121
112
self .assertEqual (self .repl ._cursor_offset , 1 )
122
113
123
114
def test_nested_brackets (self ):
124
- self .repl .process_event ("(" )
125
- self .repl .process_event ("[" )
126
- self .repl .process_event ("{" )
115
+ self .process_multiple_events (["(" , "[" , "{" ])
127
116
self .assertEqual (self .repl ._current_line , "([{" )
128
117
self .assertEqual (self .repl ._cursor_offset , 3 )
129
118
130
119
def test_bracket_overwrite_closing_char (self ):
131
- self .repl .process_event ("(" )
132
- self .repl .process_event ("[" )
133
- self .repl .process_event ("{" )
120
+ self .process_multiple_events (["(" , "[" , "{" ])
134
121
self .assertEqual (self .repl ._current_line , """([{""" )
135
122
self .assertEqual (self .repl ._cursor_offset , 3 )
136
- self .repl .process_event ("}" )
137
- self .repl .process_event ("]" )
138
- self .repl .process_event (")" )
123
+ self .process_multiple_events (["}" , "]" , ")" ])
139
124
self .assertEqual (self .repl ._current_line , """([{}])""" )
140
125
self .assertEqual (self .repl ._cursor_offset , 6 )
141
126
142
127
def test_brackets_move_cursor_on_tab (self ):
143
- self .repl .process_event ("(" )
144
- self .repl .process_event ("[" )
145
- self .repl .process_event ("{" )
128
+ self .process_multiple_events (["(" , "[" , "{" ])
146
129
self .assertEqual (self .repl ._current_line , """([{""" )
147
130
self .assertEqual (self .repl ._cursor_offset , 3 )
148
131
self .repl .process_event ("<TAB>" )
@@ -159,8 +142,8 @@ def test_brackets_deletion_on_backspace(self):
159
142
def test_brackets_deletion_on_backspace_nested (self ):
160
143
self .repl .current_line = '([{""}])'
161
144
self .repl .cursor_offset = 4
162
- self .repl . process_event ( "<BACKSPACE>" )
163
- self . repl . process_event ( "<BACKSPACE>" )
164
- self . repl . process_event ( "<BACKSPACE>" )
145
+ self .process_multiple_events (
146
+ [ "<BACKSPACE>" , "<BACKSPACE>" , "<BACKSPACE>" ]
147
+ )
165
148
self .assertEqual (self .repl ._current_line , "()" )
166
149
self .assertEqual (self .repl .cursor_offset , 1 )
0 commit comments