##// END OF EJS Templates
add a multiline history test with empty cell entries
Julian Taylor -
Show More
@@ -103,3 +103,34 b' class InteractiveShellTestCase(unittest.TestCase):'
103 ip.hlen_before_cell)
103 ip.hlen_before_cell)
104 hist = self.rl_hist_entries(ip.readline, 3)
104 hist = self.rl_hist_entries(ip.readline, 3)
105 self.assertEquals(hist, ['line0', 'l€ne1\nline2', 'l€ne3\nline4'])
105 self.assertEquals(hist, ['line0', 'l€ne1\nline2', 'l€ne3\nline4'])
106
107
108 @skipif(not get_ipython().has_readline, 'no readline')
109 def test_replace_multiline_hist_replaces_empty_line(self):
110 """Test that multiline history skips empty line cells"""
111 ip = get_ipython()
112 ip.multiline_history = True
113
114 ip.readline.add_history(u'line0')
115 #start cell
116 ip.hlen_before_cell = ip.readline.get_current_history_length()
117 ip.readline.add_history('l€ne1')
118 ip.readline.add_history('line2')
119 ip._replace_rlhist_multiline(u'l€ne1\nline2')
120 ip.readline.add_history('')
121 ip._replace_rlhist_multiline(u'')
122 ip.readline.add_history('l€ne3')
123 ip._replace_rlhist_multiline(u'l€ne3')
124 ip.readline.add_history(' ')
125 ip._replace_rlhist_multiline(' ')
126 ip.readline.add_history('\t')
127 ip.readline.add_history('\t ')
128 ip._replace_rlhist_multiline('\t')
129 ip.readline.add_history('line4')
130 ip._replace_rlhist_multiline(u'line4')
131
132 self.assertEquals(ip.readline.get_current_history_length(),
133 ip.hlen_before_cell)
134 hist = self.rl_hist_entries(ip.readline, 4)
135 # expect no empty cells in history
136 self.assertEquals(hist, ['line0', 'l€ne1\nline2', 'l€ne3', 'line4'])
General Comments 0
You need to be logged in to leave comments. Login now