def test_read_write_project(self): """ Test reading and writing to project document """ # fake project document doc = QDomDocument("test") doc.appendChild(doc.createElement('qgis')) original = PlotSettings('test', properties={ 'marker_width': 2, 'marker_size': 5 }, layout={ 'title': 'my plot', 'legend_orientation': 'v' }) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_FILTER, QgsProperty.fromExpression('"ap">50')) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_MARKER_SIZE, QgsProperty.fromExpression('5+6')) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_COLOR, QgsProperty.fromExpression("'red'")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_STROKE_WIDTH, QgsProperty.fromExpression('12/2')) original.write_to_project(doc) res = PlotSettings('gg') res.read_from_project(doc) self.assertEqual(res.plot_type, original.plot_type) self.assertEqual(res.properties, original.properties) self.assertEqual(res.layout, original.layout) self.assertEqual( res.data_defined_properties.property(PlotSettings.PROPERTY_FILTER), original.data_defined_properties.property( PlotSettings.PROPERTY_FILTER)) self.assertEqual( res.data_defined_properties.property( PlotSettings.PROPERTY_MARKER_SIZE), original.data_defined_properties.property( PlotSettings.PROPERTY_MARKER_SIZE)) self.assertEqual( res.data_defined_properties.property(PlotSettings.PROPERTY_COLOR), original.data_defined_properties.property( PlotSettings.PROPERTY_COLOR)) self.assertEqual( res.data_defined_properties.property( PlotSettings.PROPERTY_STROKE_WIDTH), original.data_defined_properties.property( PlotSettings.PROPERTY_STROKE_WIDTH))
def test_read_write_project(self): """ Test reading and writing to project document """ # fake project document doc = QDomDocument("test") doc.appendChild(doc.createElement('qgis')) original = PlotSettings('test', properties={ 'marker_width': 2, 'marker_size': 5 }, layout={ 'title': 'my plot', 'legend_orientation': 'v' }) original.write_to_project(doc) res = PlotSettings('gg') res.read_from_project(doc) self.assertEqual(res.plot_type, original.plot_type) self.assertEqual(res.properties, original.properties) self.assertEqual(res.layout, original.layout)
def test_read_write_project(self): """ Test reading and writing to project document """ # fake project document doc = QDomDocument("test") doc.appendChild(doc.createElement('qgis')) original = PlotSettings('test', properties={ 'marker_width': 2, 'marker_size': 5 }, layout={ 'title': 'my plot', 'legend_orientation': 'v', 'font_xlabel_color': "#00FFFF" }) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_FILTER, QgsProperty.fromExpression('"ap">50')) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_MARKER_SIZE, QgsProperty.fromExpression('5+6')) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_COLOR, QgsProperty.fromExpression("'red'")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_STROKE_WIDTH, QgsProperty.fromExpression('12/2')) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_TITLE, QgsProperty.fromExpression("concat('my', '_title')")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_LEGEND_TITLE, QgsProperty.fromExpression("concat('my', '_legend')")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_X_TITLE, QgsProperty.fromExpression("concat('my', '_x_axis')")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_Y_TITLE, QgsProperty.fromExpression("concat('my', '_y_axis')")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_Z_TITLE, QgsProperty.fromExpression("concat('my', '_z_axis')")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_X_MIN, QgsProperty.fromExpression("-1*10")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_X_MAX, QgsProperty.fromExpression("+1*10")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_Y_MIN, QgsProperty.fromExpression("-1*10")) original.data_defined_properties.setProperty( PlotSettings.PROPERTY_Y_MAX, QgsProperty.fromExpression("+1*10")) original.write_to_project(doc) res = PlotSettings('gg') res.read_from_project(doc) self.assertEqual(res.plot_type, original.plot_type) self.assertEqual(res.properties, original.properties) self.assertEqual(res.layout, original.layout) self.assertEqual( res.data_defined_properties.property(PlotSettings.PROPERTY_FILTER), original.data_defined_properties.property( PlotSettings.PROPERTY_FILTER)) self.assertEqual( res.data_defined_properties.property( PlotSettings.PROPERTY_MARKER_SIZE), original.data_defined_properties.property( PlotSettings.PROPERTY_MARKER_SIZE)) self.assertEqual( res.data_defined_properties.property(PlotSettings.PROPERTY_COLOR), original.data_defined_properties.property( PlotSettings.PROPERTY_COLOR)) self.assertEqual( res.data_defined_properties.property( PlotSettings.PROPERTY_STROKE_WIDTH), original.data_defined_properties.property( PlotSettings.PROPERTY_STROKE_WIDTH)) self.assertEqual( res.data_defined_properties.property(PlotSettings.PROPERTY_TITLE), original.data_defined_properties.property( PlotSettings.PROPERTY_TITLE)) self.assertEqual( res.data_defined_properties.property( PlotSettings.PROPERTY_LEGEND_TITLE), original.data_defined_properties.property( PlotSettings.PROPERTY_LEGEND_TITLE)) self.assertEqual( res.data_defined_properties.property( PlotSettings.PROPERTY_X_TITLE), original.data_defined_properties.property( PlotSettings.PROPERTY_X_TITLE)) self.assertEqual( res.data_defined_properties.property( PlotSettings.PROPERTY_Y_TITLE), original.data_defined_properties.property( PlotSettings.PROPERTY_Y_TITLE)) self.assertEqual( res.data_defined_properties.property( PlotSettings.PROPERTY_Z_TITLE), original.data_defined_properties.property( PlotSettings.PROPERTY_Z_TITLE)) self.assertEqual( res.data_defined_properties.property(PlotSettings.PROPERTY_X_MIN), original.data_defined_properties.property( PlotSettings.PROPERTY_X_MIN)) self.assertEqual( res.data_defined_properties.property(PlotSettings.PROPERTY_X_MAX), original.data_defined_properties.property( PlotSettings.PROPERTY_X_MAX)) self.assertEqual( res.data_defined_properties.property(PlotSettings.PROPERTY_Y_MIN), original.data_defined_properties.property( PlotSettings.PROPERTY_Y_MIN)) self.assertEqual( res.data_defined_properties.property(PlotSettings.PROPERTY_Y_MAX), original.data_defined_properties.property( PlotSettings.PROPERTY_Y_MAX))