annotate Lib/test/test_readline.py @ 79675:c0a2294de787 2.7

Issue #16199: Backport 2to3 typo fix from 3.2.
author Chris Jerdonek <chris.jerdonek@gmail.com>
date Thu, 11 Oct 2012 16:15:46 -0700
parents dda08ec9fbd5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
56135
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
1 """
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
2 Very minimal unittests for parts of the readline module.
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
3
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
4 These tests were added to check that the libedit emulation on OSX and
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
5 the "real" readline have the same interface for history manipulation. That's
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
6 why the tests cover only a small subset of the interface.
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
7 """
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
8 import unittest
56747
76c66690d1ee Skip readline tests if readline module is not available.
Mark Dickinson <dickinsm@gmail.com>
parents: 58867
diff changeset
9 from test.test_support import run_unittest, import_module
56135
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
10
56748
8eff759d080f Merged revisions 75711 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 56135
diff changeset
11 # Skip tests if there is no readline module
8eff759d080f Merged revisions 75711 via svnmerge from
Mark Dickinson <dickinsm@gmail.com>
parents: 56135
diff changeset
12 readline = import_module('readline')
56135
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
13
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
14 class TestHistoryManipulation (unittest.TestCase):
68469
a89d654adaa2 #11496: skip history test if clear_history is not available.
R David Murray <rdmurray@bitdance.com>
parents: 56748
diff changeset
15
a89d654adaa2 #11496: skip history test if clear_history is not available.
R David Murray <rdmurray@bitdance.com>
parents: 56748
diff changeset
16 @unittest.skipIf(not hasattr(readline, 'clear_history'),
a89d654adaa2 #11496: skip history test if clear_history is not available.
R David Murray <rdmurray@bitdance.com>
parents: 56748
diff changeset
17 "The history update test cannot be run because the "
a89d654adaa2 #11496: skip history test if clear_history is not available.
R David Murray <rdmurray@bitdance.com>
parents: 56748
diff changeset
18 "clear_history method is not available.")
56135
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
19 def testHistoryUpdates(self):
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
20 readline.clear_history()
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
21
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
22 readline.add_history("first line")
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
23 readline.add_history("second line")
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
24
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
25 self.assertEqual(readline.get_history_item(0), None)
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
26 self.assertEqual(readline.get_history_item(1), "first line")
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
27 self.assertEqual(readline.get_history_item(2), "second line")
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
28
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
29 readline.replace_history_item(0, "replaced line")
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
30 self.assertEqual(readline.get_history_item(0), None)
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
31 self.assertEqual(readline.get_history_item(1), "replaced line")
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
32 self.assertEqual(readline.get_history_item(2), "second line")
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
33
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
34 self.assertEqual(readline.get_current_history_length(), 2)
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
35
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
36 readline.remove_history_item(0)
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
37 self.assertEqual(readline.get_history_item(0), None)
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
38 self.assertEqual(readline.get_history_item(1), "second line")
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
39
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
40 self.assertEqual(readline.get_current_history_length(), 1)
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
41
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
42
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
43 def test_main():
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
44 run_unittest(TestHistoryManipulation)
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
45
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
46 if __name__ == "__main__":
1c50dc213312 Merged revisions 74970 via svnmerge from
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
47 test_main()