def test_state_logic(self): """ Test that the logic involving button states is correct """ w = QgsMultiEditToolButton() self.assertEqual(w.state(), QgsMultiEditToolButton.Default) # set is changed should update state to changed w.setIsChanged(True) self.assertEqual(w.state(), QgsMultiEditToolButton.Changed) w.setIsChanged(False) self.assertEqual(w.state(), QgsMultiEditToolButton.Default) #resetting changes should fall back to default state w.setIsChanged(True) w.resetChanges() self.assertEqual(w.state(), QgsMultiEditToolButton.Default) #setting changes committed should result in default state w.setIsChanged(True) w.changesCommitted() self.assertEqual(w.state(), QgsMultiEditToolButton.Default) #Test with mixed values w.setIsMixed(True) self.assertEqual(w.state(), QgsMultiEditToolButton.MixedValues) #changed state takes priority over mixed state w.setIsChanged(True) self.assertEqual(w.state(), QgsMultiEditToolButton.Changed) w.setIsChanged(False) #should reset to mixed state self.assertEqual(w.state(), QgsMultiEditToolButton.MixedValues) #resetting changes should fall back to mixed state w.setIsChanged(True) w.resetChanges() self.assertEqual(w.state(), QgsMultiEditToolButton.MixedValues) #setting changes committed should result in default state w.setIsChanged(True) w.changesCommitted() self.assertEqual(w.state(), QgsMultiEditToolButton.Default)
def test_state_logic(self): """ Test that the logic involving button states is correct """ w = QgsMultiEditToolButton() self.assertEqual(w.state(), QgsMultiEditToolButton.Default) # set is changed should update state to changed w.setIsChanged(True) self.assertEqual(w.state(), QgsMultiEditToolButton.Changed) w.setIsChanged(False) self.assertEqual(w.state(), QgsMultiEditToolButton.Default) # resetting changes should fall back to default state w.setIsChanged(True) w.resetChanges() self.assertEqual(w.state(), QgsMultiEditToolButton.Default) # setting changes committed should result in default state w.setIsChanged(True) w.changesCommitted() self.assertEqual(w.state(), QgsMultiEditToolButton.Default) # Test with mixed values w.setIsMixed(True) self.assertEqual(w.state(), QgsMultiEditToolButton.MixedValues) # changed state takes priority over mixed state w.setIsChanged(True) self.assertEqual(w.state(), QgsMultiEditToolButton.Changed) w.setIsChanged(False) # should reset to mixed state self.assertEqual(w.state(), QgsMultiEditToolButton.MixedValues) # resetting changes should fall back to mixed state w.setIsChanged(True) w.resetChanges() self.assertEqual(w.state(), QgsMultiEditToolButton.MixedValues) # setting changes committed should result in default state w.setIsChanged(True) w.changesCommitted() self.assertEqual(w.state(), QgsMultiEditToolButton.Default)