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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
if __name__ == '__main__': from __init__ import init; init()
import unittest
import curses
from ranger.gui import ui
from test import Fake, OK, raise_ok
ui.curses = Fake()
class Test(unittest.TestCase):
def setUp(self):
self.fm = Fake()
self.ui = ui.UI(env=Fake(), fm=self.fm)
def fakesetup():
self.ui.widget = Fake()
self.ui.add_obj(self.ui.widget)
self.ui.setup = fakesetup
self.ui.initialize()
def tearDown(self):
self.ui.destroy()
def test_scrolling(self):
# test whether scrolling works
self.fm.scroll = raise_ok
self.ui.get_focused_obj = lambda: False
ui.curses.getmouse = lambda: (0, 0, 0, 0, curses.BUTTON2_PRESSED)
self.assertRaises(OK, self.ui.handle_mouse)
ui.curses.getmouse = lambda: (0, 0, 0, 0, curses.BUTTON4_PRESSED)
self.assertRaises(OK, self.ui.handle_mouse)
def test_passing(self):
# Test whether certain method calls are passed to widgets
widget = self.ui.widget
widget.draw = raise_ok
self.assertRaises(OK, self.ui.draw)
widget.__clear__()
widget.finalize = raise_ok
self.assertRaises(OK, self.ui.finalize)
widget.__clear__()
widget.press = raise_ok
random_key = 123
self.assertRaises(OK, self.ui.handle_key, random_key)
widget.__clear__()
widget.destroy = raise_ok
self.assertRaises(OK, self.ui.destroy)
widget.__clear__()
if __name__ == '__main__':
unittest.main()
|