source: sasview/src/sas/qtgui/Plotting/UnitTesting/WindowTitleTest.py @ b2c8aef

Last change on this file since b2c8aef was 464cd07, checked in by Piotr Rozyczko <rozyczko@…>, 7 years ago

Use singleton QApplication in unit tests to avoid issues on Ubuntu. SASVIEW-485

  • Property mode set to 100644
File size: 1.4 KB
Line 
1import sys
2import unittest
3
4from PyQt4 import QtGui
5
6# set up import paths
7import sas.qtgui.path_prepare
8
9# Local
10from sas.qtgui.Plotting.WindowTitle import WindowTitle
11
12if not QtGui.QApplication.instance():
13    app = QtGui.QApplication(sys.argv)
14
15class WindowTitleTest(unittest.TestCase):
16    '''Test the WindowTitle'''
17    def setUp(self):
18        '''Create the WindowTitle'''
19        self.widget = WindowTitle(None, new_title="some title")
20
21    def tearDown(self):
22        '''Destroy the GUI'''
23        self.widget.close()
24        self.widget = None
25
26    def testDefaults(self):
27        '''Test the GUI in its default state'''
28        self.widget.show()
29        self.assertIsInstance(self.widget, QtGui.QDialog)
30        self.assertEqual(self.widget.windowTitle(), "Modify Window Title")
31       
32    def testTitle(self):
33        '''Modify the title'''
34        self.widget.show()
35        QtGui.qApp.processEvents()
36        # make sure we have the pre-set title
37        self.assertEqual(self.widget.txtTitle.text(), "some title")
38        # Clear the control and set it to something else
39        self.widget.txtTitle.clear()
40        self.widget.txtTitle.setText("5 elephants")
41        QtGui.qApp.processEvents()
42        # Retrieve value
43        new_title = self.widget.title()
44        # Check
45        self.assertEqual(new_title, "5 elephants")
46       
47if __name__ == "__main__":
48    unittest.main()
Note: See TracBrowser for help on using the repository browser.