Skip to content

Commit 3f72a6a

Browse files
committed
Added from uri test for mem provider. Simplified the vector writer test.
1 parent 5817ad1 commit 3f72a6a

File tree

2 files changed

+25
-9
lines changed

2 files changed

+25
-9
lines changed

tests/src/python/test_qgsmemoryprovider.py

+12
Original file line numberDiff line numberDiff line change
@@ -98,5 +98,17 @@ def testAddFeatures(self):
9898

9999
assert str(geom.exportToWkt()) == "POINT(10.0 10.0)", myMessage
100100

101+
def testFromUri(self):
102+
"""Test we can construct the mem provider from a uri"""
103+
myMemoryLayer = QgsVectorLayer(
104+
('Point?crs=epsg:4326&field=name:string(20)&'
105+
'field=age:integer&field=size:double&index=yes'),
106+
'test',
107+
'memory')
108+
109+
assert myMemoryLayer is not None, 'Provider not initialised'
110+
myProvider = myMemoryLayer.dataProvider()
111+
assert myProvider is not None
112+
101113
if __name__ == '__main__':
102114
unittest.main()

tests/src/python/test_qgsvectorfilewriter.py

+13-9
Original file line numberDiff line numberDiff line change
@@ -38,20 +38,24 @@ class TestQgsVectorLayer(TestCase):
3838
mMemoryLayer = None
3939

4040
def setUp(self):
41-
self.mMemoryLayer = QgsVectorLayer("Point", "test", "memory")
42-
myProvider = self.mMemoryLayer.dataProvider()
41+
self.mMemoryLayer = QgsVectorLayer(
42+
('Point?crs=epsg:4326&field=name:string(20)&'
43+
'field=age:integer&field=size:double&index=yes'),
44+
'test',
45+
'memory')
4346

44-
myProvider.addAttributes([
45-
QgsField("name", QVariant.String),
46-
QgsField("age", QVariant.Int),
47-
QgsField("size", QVariant.Double)])
47+
assert self.mMemoryLayer is not None, 'Provider not initialised'
48+
myProvider = self.mMemoryLayer.dataProvider()
49+
assert myProvider is not None
4850

4951
ft = QgsFeature()
5052
ft.setGeometry(QgsGeometry.fromPoint(QgsPoint(10,10)))
51-
ft.setAttributeMap({0 : QVariant("Johny"),
53+
ft.setAttributeMap({0 : QVariant('Johny'),
5254
1 : QVariant(20),
5355
2 : QVariant(0.3)})
54-
myProvider.addFeatures([ft])
56+
myResult, myFeatures = myProvider.addFeatures([ft])
57+
assert myResult == True
58+
assert len(myFeatures) > 0
5559

5660

5761
def testWrite(self):
@@ -72,7 +76,7 @@ def testWrite(self):
7276
myFileName,
7377
'utf-8',
7478
myGeoCrs,
75-
"ESRI Shapefile",
79+
'ESRI Shapefile',
7680
mySelectedOnlyFlag,
7781
myErrorMessage,
7882
myOptions,

0 commit comments

Comments
 (0)