Skip to content

Commit 46a74a0

Browse files
committed
Add test for enabled state of relation value widget
1 parent 167fbf6 commit 46a74a0

File tree

1 file changed

+30
-10
lines changed

1 file changed

+30
-10
lines changed

tests/src/python/test_qgseditwidgets.py

+30-10
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@
2626

2727
class TestQgsTextEditWidget(unittest.TestCase):
2828

29-
VALUEMAP_NULL_TEXT = "{2839923C-8B7D-419E-B84B-CA2FE9B80EC7}"
30-
3129
@classmethod
3230
def setUpClass(cls):
3331
QgsGui.editorWidgetRegistry().initEditors()
@@ -39,8 +37,8 @@ def createLayerWithOnePoint(self):
3937
f = QgsFeature()
4038
f.setAttributes(["test", 123])
4139
f.setGeometry(QgsGeometry.fromPointXY(QgsPointXY(100, 200)))
42-
assert pr.addFeatures([f])
43-
assert self.layer.pendingFeatureCount() == 1
40+
self.assertTrue(pr.addFeatures([f]))
41+
self.assertEqual(self.layer.pendingFeatureCount(), 1)
4442
return self.layer
4543

4644
def doAttributeTest(self, idx, expected):
@@ -50,16 +48,16 @@ def doAttributeTest(self, idx, expected):
5048
editwidget = reg.create('TextEdit', self.layer, idx, config, None, None)
5149

5250
editwidget.setValue('value')
53-
assert editwidget.value() == expected[0]
51+
self.assertEqual(editwidget.value(), expected[0])
5452

5553
editwidget.setValue(123)
56-
assert editwidget.value() == expected[1]
54+
self.assertEqual(editwidget.value(), expected[1])
5755

5856
editwidget.setValue(None)
59-
assert editwidget.value() == expected[2]
57+
self.assertEqual(editwidget.value(), expected[2])
6058

6159
editwidget.setValue(NULL)
62-
assert editwidget.value() == expected[3]
60+
self.assertEqual(editwidget.value(), expected[3])
6361

6462
def test_SetValue(self):
6563
self.createLayerWithOnePoint()
@@ -70,7 +68,7 @@ def test_SetValue(self):
7068
def testStringWithMaxLen(self):
7169
""" tests that text edit wrappers correctly handle string fields with a maximum length """
7270
layer = QgsVectorLayer("none?field=fldint:integer", "layer", "memory")
73-
assert layer.isValid()
71+
self.assertTrue(layer.isValid())
7472
layer.dataProvider().addAttributes([QgsField('max', QVariant.String, 'string', 10),
7573
QgsField('nomax', QVariant.String, 'string', 0)])
7674
layer.updateFields()
@@ -94,9 +92,29 @@ def testStringWithMaxLen(self):
9492

9593
QgsProject.instance().removeAllMapLayers()
9694

95+
96+
class TestQgsValueRelationWidget(unittest.TestCase):
97+
98+
def test_enableDisable(self):
99+
reg = QgsGui.editorWidgetRegistry()
100+
layer = QgsVectorLayer("none?field=number:integer", "layer", "memory")
101+
wrapper = reg.create('ValueRelation', layer, 0, {}, None, None)
102+
103+
widget = wrapper.widget()
104+
105+
self.assertTrue(widget.isEnabled())
106+
wrapper.setEnabled(False)
107+
self.assertFalse(widget.isEnabled())
108+
wrapper.setEnabled(True)
109+
self.assertTrue(widget.isEnabled())
110+
111+
112+
class TestQgsValueMapEditWidget(unittest.TestCase):
113+
VALUEMAP_NULL_TEXT = "{2839923C-8B7D-419E-B84B-CA2FE9B80EC7}"
114+
97115
def test_ValueMap_set_get(self):
98116
layer = QgsVectorLayer("none?field=number:integer", "layer", "memory")
99-
assert layer.isValid()
117+
self.assertTrue(layer.isValid())
100118
QgsProject.instance().addMapLayer(layer)
101119
reg = QgsGui.editorWidgetRegistry()
102120
configWdg = reg.createConfigWidget('ValueMap', layer, 0, None)
@@ -110,4 +128,6 @@ def test_ValueMap_set_get(self):
110128
self.assertEqual(configWdg.config(), config)
111129

112130
QgsProject.instance().removeAllMapLayers()
131+
132+
if __name__ == "__main__":
113133
unittest.main()

0 commit comments

Comments
 (0)