diff options
Diffstat (limited to 'silx/app/test/test_view.py')
-rw-r--r-- | silx/app/test/test_view.py | 146 |
1 files changed, 0 insertions, 146 deletions
diff --git a/silx/app/test/test_view.py b/silx/app/test/test_view.py deleted file mode 100644 index aeba0cc..0000000 --- a/silx/app/test/test_view.py +++ /dev/null @@ -1,146 +0,0 @@ -# coding: utf-8 -# /*########################################################################## -# -# Copyright (c) 2016-2017 European Synchrotron Radiation Facility -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -# ###########################################################################*/ -"""Module testing silx.app.view""" - -__authors__ = ["V. Valls"] -__license__ = "MIT" -__date__ = "09/11/2017" - - -import unittest -import sys -from silx.test.utils import test_options - - -if not test_options.WITH_QT_TEST: - view = None - TestCaseQt = unittest.TestCase -else: - from silx.gui.test.utils import TestCaseQt - from .. import view - - -class QApplicationMock(object): - - def __init__(self, args): - pass - - def exec_(self): - return 0 - - def deleteLater(self): - pass - - -class ViewerMock(object): - - def __init__(self): - super(ViewerMock, self).__init__() - self.__class__._instance = self - self.appendFileCalls = [] - - def appendFile(self, filename): - self.appendFileCalls.append(filename) - - def setAttribute(self, attr, value): - pass - - def resize(self, size): - pass - - def show(self): - pass - - -@unittest.skipUnless(test_options.WITH_QT_TEST, test_options.WITH_QT_TEST_REASON) -class TestLauncher(unittest.TestCase): - """Test command line parsing""" - - @classmethod - def setUpClass(cls): - super(TestLauncher, cls).setUpClass() - cls._Viewer = view.Viewer - view.Viewer = ViewerMock - cls._QApplication = view.qt.QApplication - view.qt.QApplication = QApplicationMock - - @classmethod - def tearDownClass(cls): - view.Viewer = cls._Viewer - view.qt.QApplication = cls._QApplication - cls._Viewer = None - super(TestLauncher, cls).tearDownClass() - - def testHelp(self): - # option -h must cause a raise SystemExit or a return 0 - try: - result = view.main(["view", "--help"]) - except SystemExit as e: - result = e.args[0] - self.assertEqual(result, 0) - - def testWrongOption(self): - try: - result = view.main(["view", "--foo"]) - except SystemExit as e: - result = e.args[0] - self.assertNotEqual(result, 0) - - def testWrongFile(self): - try: - result = view.main(["view", "__file.not.found__"]) - except SystemExit as e: - result = e.args[0] - self.assertEqual(result, 0) - - def testFile(self): - # sys.executable is an existing readable file - result = view.main(["view", sys.executable]) - self.assertEqual(result, 0) - viewer = ViewerMock._instance - self.assertEqual(viewer.appendFileCalls, [sys.executable]) - ViewerMock._instance = None - - -class TestViewer(TestCaseQt): - """Test for Viewer class""" - - @unittest.skipUnless(test_options.WITH_QT_TEST, test_options.WITH_QT_TEST_REASON) - def testConstruct(self): - if view is not None: - widget = view.Viewer() - self.qWaitForWindowExposed(widget) - - -def suite(): - test_suite = unittest.TestSuite() - loader = unittest.defaultTestLoader.loadTestsFromTestCase - test_suite.addTest(loader(TestViewer)) - test_suite.addTest(loader(TestLauncher)) - return test_suite - - -if __name__ == '__main__': - unittest.main(defaultTest='suite') |