summaryrefslogtreecommitdiff
path: root/silx/gui/widgets/test/test_hierarchicaltableview.py
diff options
context:
space:
mode:
Diffstat (limited to 'silx/gui/widgets/test/test_hierarchicaltableview.py')
-rw-r--r--silx/gui/widgets/test/test_hierarchicaltableview.py117
1 files changed, 0 insertions, 117 deletions
diff --git a/silx/gui/widgets/test/test_hierarchicaltableview.py b/silx/gui/widgets/test/test_hierarchicaltableview.py
deleted file mode 100644
index 9fad54d..0000000
--- a/silx/gui/widgets/test/test_hierarchicaltableview.py
+++ /dev/null
@@ -1,117 +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.
-#
-# ###########################################################################*/
-__authors__ = ["V. Valls"]
-__license__ = "MIT"
-__date__ = "07/04/2017"
-
-import unittest
-
-from .. import HierarchicalTableView
-from silx.gui.utils.testutils import TestCaseQt
-from silx.gui import qt
-
-
-class TableModel(HierarchicalTableView.HierarchicalTableModel):
-
- def __init__(self, parent):
- HierarchicalTableView.HierarchicalTableModel.__init__(self, parent)
- self.__content = {}
-
- def rowCount(self, parent=qt.QModelIndex()):
- return 3
-
- def columnCount(self, parent=qt.QModelIndex()):
- return 3
-
- def setData1(self):
- if qt.qVersion() > "4.6":
- self.beginResetModel()
- else:
- self.reset()
-
- content = {}
- content[0, 0] = ("title", True, (1, 3))
- content[0, 1] = ("a", True, (2, 1))
- content[1, 1] = ("b", False, (1, 2))
- content[1, 2] = ("c", False, (1, 1))
- content[2, 2] = ("d", False, (1, 1))
- self.__content = content
- if qt.qVersion() > "4.6":
- self.endResetModel()
-
- def data(self, index, role=qt.Qt.DisplayRole):
- if not index.isValid():
- return None
- cell = self.__content.get((index.column(), index.row()), None)
- if cell is None:
- return None
-
- if role == self.SpanRole:
- return cell[2]
- elif role == self.IsHeaderRole:
- return cell[1]
- elif role == qt.Qt.DisplayRole:
- return cell[0]
- return None
-
-
-class TestHierarchicalTableView(TestCaseQt):
- """Test for HierarchicalTableView"""
-
- def testEmpty(self):
- widget = HierarchicalTableView.HierarchicalTableView()
- widget.show()
- self.qWaitForWindowExposed(widget)
-
- def testModel(self):
- widget = HierarchicalTableView.HierarchicalTableView()
- model = TableModel(widget)
- # set the data before using the model into the widget
- model.setData1()
- widget.setModel(model)
- span = widget.rowSpan(0, 0), widget.columnSpan(0, 0)
- self.assertEqual(span, (1, 3))
- widget.show()
- self.qWaitForWindowExposed(widget)
-
- def testModelUpdate(self):
- widget = HierarchicalTableView.HierarchicalTableView()
- model = TableModel(widget)
- widget.setModel(model)
- # set the data after using the model into the widget
- model.setData1()
- span = widget.rowSpan(0, 0), widget.columnSpan(0, 0)
- self.assertEqual(span, (1, 3))
-
-
-def suite():
- loader = unittest.defaultTestLoader.loadTestsFromTestCase
- test_suite = unittest.TestSuite()
- test_suite.addTest(loader(TestHierarchicalTableView))
- return test_suite
-
-
-if __name__ == '__main__':
- unittest.main(defaultTest='suite')