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_child(self.ui.widget)
self.ui.setup = fakesetup
self.ui.initialize()
def tearDown(self):
self.ui.destroy()
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()