Skip to content

Commit 94b5fed

Browse files
committedFeb 25, 2019
Add test case for backgroundColor serialization
1 parent e63b2ef commit 94b5fed

File tree

1 file changed

+21
-3
lines changed

1 file changed

+21
-3
lines changed
 

‎tests/src/python/test_qgseditformconfig.py

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,14 @@
2020
QgsVectorLayer,
2121
QgsReadWriteContext,
2222
QgsEditFormConfig,
23-
QgsFetchedContent)
23+
QgsFetchedContent,
24+
QgsAttributeEditorContainer,
25+
)
2426
from qgis.gui import QgsGui
2527

2628
from qgis.testing import start_app, unittest
2729
from qgis.PyQt.QtXml import QDomDocument, QDomElement
30+
from qgis.PyQt.QtGui import QColor
2831
from utilities import unitTestDataPath
2932
import socketserver
3033
import threading
@@ -84,14 +87,16 @@ def testFormUi(self):
8487
config.setLayout(QgsEditFormConfig.GeneratedLayout)
8588
self.assertEqual(config.layout(), QgsEditFormConfig.GeneratedLayout)
8689

87-
uiLocal = os.path.join(unitTestDataPath(), '/qgis_local_server/layer_attribute_form.ui')
90+
uiLocal = os.path.join(
91+
unitTestDataPath(), '/qgis_local_server/layer_attribute_form.ui')
8892
config.setUiForm(uiLocal)
8993
self.assertEqual(config.layout(), QgsEditFormConfig.UiFileLayout)
9094

9195
config.setLayout(QgsEditFormConfig.GeneratedLayout)
9296
self.assertEqual(config.layout(), QgsEditFormConfig.GeneratedLayout)
9397

94-
uiUrl = 'http://localhost:' + str(self.port) + '/qgis_local_server/layer_attribute_form.ui'
98+
uiUrl = 'http://localhost:' + \
99+
str(self.port) + '/qgis_local_server/layer_attribute_form.ui'
95100
config.setUiForm(uiUrl)
96101
self.assertEqual(config.layout(), QgsEditFormConfig.UiFileLayout)
97102
content = QgsApplication.networkContentFetcherRegistry().fetch(uiUrl)
@@ -140,6 +145,19 @@ def testLabelOnTop(self):
140145
self.assertFalse(config.labelOnTop(0))
141146
self.assertFalse(config.labelOnTop(1))
142147

148+
def test_backgroundColorSerialize(self):
149+
"""Test backgroundColor serialization"""
150+
151+
layer = self.createLayer()
152+
config = layer.editFormConfig()
153+
color_name = '#ff00ff'
154+
container = QgsAttributeEditorContainer('container name', None, QColor('#ff00ff'))
155+
doc = QDomDocument()
156+
element = container.toDomElement(doc)
157+
config = QgsEditFormConfig()
158+
container2 = config.attributeEditorElementFromDomElement(element, None, self.layer.id())
159+
self.assertEqual(container2.backgroundColor().name(), color_name)
160+
143161

144162
if __name__ == '__main__':
145163
unittest.main()

0 commit comments

Comments
 (0)
Please sign in to comment.