Newer
Older
# Mantid Repository : https://github.com/mantidproject/mantid
#
# Copyright © 2019 ISIS Rutherford Appleton Laboratory UKRI,
# NScD Oak Ridge National Laboratory, European Spallation Source
# & Institut Laue - Langevin
# SPDX - License - Identifier: GPL - 3.0 +
# This file is part of the mantid workbench.
from __future__ import (absolute_import, division, print_function)
from mantidqt.widgets.matrixworkspacedisplay.table_view_model import MatrixWorkspaceTableViewModelType
class MockQTableHeader(object):
def __init__(self):
self.addAction = Mock()
class MockQSelection:
def __init__(self):
self.mock_item_range = MockQItemRange()
self.first = Mock(return_value=self.mock_item_range)
class MockQItemRange(object):
def __init__(self):
self.top = Mock(return_value=0)
self.bottom = Mock(return_value=2)
self.left = Mock(return_value=0)
self.right = Mock(return_value=2)
def __init__(self, has_selection=True):
self.hasSelection = Mock(return_value=has_selection)
self.selectedRows = None
self.selectedColumns = None
self.currentIndex = None
self.mock_selection = MockQSelection()
self.selection = Mock(return_value=self.mock_selection)
class MockQTableViewModel:
def __init__(self):
self.type = MatrixWorkspaceTableViewModelType.x
class MockQTableView:
def __init__(self):
self.setContextMenuPolicy = Mock()
self.addAction = Mock()
self.mock_horizontalHeader = MockQTableHeader()
self.mock_verticalHeader = MockQTableHeader()
self.horizontalHeader = Mock(return_value=self.mock_horizontalHeader)
self.verticalHeader = Mock(return_value=self.mock_verticalHeader)
self.setModel = Mock()
self.mock_model = MockQTableViewModel()
self.model = Mock(return_value=self.mock_model)
self.mock_selection_model = MockQSelectionModel()
self.selectionModel = Mock(return_value=self.mock_selection_model)
class MockViewport:
def __init__(self):
self.update = Mock()
class MockQTab:
def __init__(self):
self.mock_viewport = MockViewport()
self.viewport = Mock(return_value=self.mock_viewport)
class MockQModelIndexSibling:
TEST_SIBLING_DATA = "MANTID_TEST_SIBLING_DATA"
self.data = Mock(return_value=self.TEST_SIBLING_DATA)
class MockQModelIndex:
def __init__(self, row, column):
self.row = Mock(return_value=row)
self.column = Mock(return_value=column)
self.mock_sibling = MockQModelIndexSibling()
self.sibling = Mock(return_value=self.mock_sibling)
class MockQtEvent:
def __init__(self):
self.accept = Mock()
class MockQtSignal:
self.emit = Mock()