def test_data(good_states): for data in good_states: table_model = DigitalStateTableModel(allow_is_used=True) table_model.setHalPins(data[0]) table_model.setStates(data[1]) table_model.setIsUsed(data[2]) for i, itm in enumerate(data[1]): assert itm == table_model.data( table_model.index(i, table_model.nameColumn(), QtCore.QModelIndex()), QtCore.Qt.DisplayRole) for i, itm in enumerate(data[2]): assert itm == table_model.data( table_model.index(i, table_model.isUsedColumn(), QtCore.QModelIndex()), QtCore.Qt.DisplayRole)
def test_setData(good_states): for data in good_states: table_model = DigitalStateTableModel(allow_is_used=True) table_model.setHalPins(data[0]) table_model.setStates(data[1]) table_model.setIsUsed(data[2]) is_used_col = table_model.isUsedColumn() name_col = table_model.nameColumn() num_bits = table_model.numberOfBits() num_rows = len(data[1]) #Try setting some of the isUsed column table_model.setData( table_model.index(0, is_used_col, QtCore.QModelIndex()), False, QtCore.Qt.EditRole) val = table_model.data( table_model.index(0, is_used_col, QtCore.QModelIndex()), QtCore.Qt.DisplayRole) assert val == True table_model.setData( table_model.index(num_rows - 1, is_used_col, QtCore.QModelIndex()), False, QtCore.Qt.EditRole) val = table_model.data( table_model.index(num_rows - 1, is_used_col, QtCore.QModelIndex()), QtCore.Qt.DisplayRole) assert val == False table_model.setData( table_model.index(0, is_used_col, QtCore.QModelIndex()), True, QtCore.Qt.EditRole) val = table_model.data( table_model.index(0, is_used_col, QtCore.QModelIndex()), QtCore.Qt.DisplayRole) assert val == True table_model.setData( table_model.index(num_rows - 1, is_used_col, QtCore.QModelIndex()), True, QtCore.Qt.EditRole) val = table_model.data( table_model.index(num_rows - 1, is_used_col, QtCore.QModelIndex()), QtCore.Qt.DisplayRole) assert val == True #Try setting some of the name column table_model.setData( table_model.index(0, name_col, QtCore.QModelIndex()), "Fast Off", QtCore.Qt.EditRole) val = table_model.data( table_model.index(0, name_col, QtCore.QModelIndex()), QtCore.Qt.DisplayRole) assert val == "Fast Off" table_model.setData( table_model.index(num_rows - 1, name_col, QtCore.QModelIndex()), "Start", QtCore.Qt.EditRole) val = table_model.data( table_model.index(num_rows - 1, name_col, QtCore.QModelIndex()), QtCore.Qt.DisplayRole) assert val == "Start" #Try setting 0,0 to True, this should always be false table_model.setData(table_model.index(0, 0, QtCore.QModelIndex()), True, QtCore.Qt.EditRole) val = table_model.data(table_model.index(0, 0, QtCore.QModelIndex()), QtCore.Qt.DisplayRole) assert val == False #Try setting 0,0 to True, this should always be false table_model.setData( table_model.index(0, num_bits - 1, QtCore.QModelIndex()), False, QtCore.Qt.EditRole) val = table_model.data( table_model.index(0, num_bits - 1, QtCore.QModelIndex()), QtCore.Qt.DisplayRole) assert val == False