Exemplo n.º 1
0
 def test_SagaVectorAlgorithmWithSelection(self):
     layer = sextante.getobject(polygons2());
     feature = layer.getFeatures().next()
     selected = [feature.id()]
     layer.setSelectedFeatures(selected)
     outputs=sextante.runalg("saga:polygoncentroids",polygons2(),True,None)
     layer.setSelectedFeatures([])
     output=outputs['CENTROIDS']
     layer=QGisLayers.getObjectFromUri(output, True)
     fields=layer.pendingFields()
     expectednames=['ID','POLY_NUM_B','POLY_ST_B']
     expectedtypes=['Real','Real','String']
     names=[str(f.name()) for f in fields]
     types=[str(f.typeName()) for f in fields]
     self.assertEqual(expectednames, names)
     self.assertEqual(expectedtypes, types)
     features=sextante.getfeatures(layer)
     self.assertEqual(1, len(features))
     feature=features.next()
     attrs=feature.attributes()
     expectedvalues=["2","1","string a"]
     values=[str(attr.toString()) for attr in attrs]
     self.assertEqual(expectedvalues, values)
     wkt='POINT(270806.69221918 4458924.97720492)'
     self.assertEqual(wkt, str(feature.geometry().exportToWkt()))
Exemplo n.º 2
0
 def test_SagaVectorAlgorithWithUnsupportedInputAndOutputFormat(self):
     '''this tests both the exporting to shp and then the format change in the output layer'''
     layer = sextante.getobject(polygonsGeoJson());
     feature = layer.getFeatures().next()
     selected = [feature.id()]
     layer.setSelectedFeatures(selected)
     outputs=sextante.runalg("saga:polygoncentroids",polygonsGeoJson(),True, SextanteUtils.getTempFilename("geojson"))
     layer.setSelectedFeatures([])
     output=outputs['CENTROIDS']
     layer=QGisLayers.getObjectFromUri(output, True)
     fields=layer.pendingFields()
     expectednames=['ID','POLY_NUM_A','POLY_ST_A']
     expectedtypes=['Real','Real','String']
     names=[str(f.name()) for f in fields]
     types=[str(f.typeName()) for f in fields]
     self.assertEqual(expectednames, names)
     self.assertEqual(expectedtypes, types)
     features=sextante.getfeatures(layer)
     self.assertEqual(1, len(features))
     feature=features.next()
     attrs=feature.attributes()
     expectedvalues=["0","1.1","string a"]
     values=[str(attr.toString()) for attr in attrs]
     self.assertEqual(expectedvalues, values)
     wkt='POINT(270787.49991451 4458955.46775295)'
     self.assertEqual(wkt, str(feature.geometry().exportToWkt()))
Exemplo n.º 3
0
 def test_SagaVectorAlgorithmWithSelection(self):
     layer = sextante.getobject(polygons2())
     feature = layer.getFeatures().next()
     selected = [feature.id()]
     layer.setSelectedFeatures(selected)
     outputs = sextante.runalg("saga:polygoncentroids", polygons2(), True,
                               None)
     layer.setSelectedFeatures([])
     output = outputs['CENTROIDS']
     layer = QGisLayers.getObjectFromUri(output, True)
     fields = layer.pendingFields()
     expectednames = ['ID', 'POLY_NUM_B', 'POLY_ST_B']
     expectedtypes = ['Real', 'Real', 'String']
     names = [str(f.name()) for f in fields]
     types = [str(f.typeName()) for f in fields]
     self.assertEqual(expectednames, names)
     self.assertEqual(expectedtypes, types)
     features = sextante.getfeatures(layer)
     self.assertEqual(1, len(features))
     feature = features.next()
     attrs = feature.attributes()
     expectedvalues = ["2", "1", "string a"]
     values = [str(attr.toString()) for attr in attrs]
     self.assertEqual(expectedvalues, values)
     wkt = 'POINT(270806.69221918 4458924.97720492)'
     self.assertEqual(wkt, str(feature.geometry().exportToWkt()))
Exemplo n.º 4
0
 def test_SagaVectorAlgorithWithUnsupportedInputAndOutputFormat(self):
     '''this tests both the exporting to shp and then the format change in the output layer'''
     layer = sextante.getobject(polygonsGeoJson())
     feature = layer.getFeatures().next()
     selected = [feature.id()]
     layer.setSelectedFeatures(selected)
     outputs = sextante.runalg("saga:polygoncentroids",
                               polygonsGeoJson(), True,
                               SextanteUtils.getTempFilename("geojson"))
     layer.setSelectedFeatures([])
     output = outputs['CENTROIDS']
     layer = QGisLayers.getObjectFromUri(output, True)
     fields = layer.pendingFields()
     expectednames = ['ID', 'POLY_NUM_A', 'POLY_ST_A']
     expectedtypes = ['Real', 'Real', 'String']
     names = [str(f.name()) for f in fields]
     types = [str(f.typeName()) for f in fields]
     self.assertEqual(expectednames, names)
     self.assertEqual(expectedtypes, types)
     features = sextante.getfeatures(layer)
     self.assertEqual(1, len(features))
     feature = features.next()
     attrs = feature.attributes()
     expectedvalues = ["0", "1.1", "string a"]
     values = [str(attr.toString()) for attr in attrs]
     self.assertEqual(expectedvalues, values)
     wkt = 'POINT(270787.49991451 4458955.46775295)'
     self.assertEqual(wkt, str(feature.geometry().exportToWkt()))
Exemplo n.º 5
0
 def test_featuresWithSelection(self):
     layer = sextante.getobject(points())
     feature = layer.getFeatures().next()
     selected = [feature.id()]
     layer.setSelectedFeatures(selected)
     features = sextante.getfeatures(layer)
     self.assertEqual(1, len(features))
     layer.setSelectedFeatures([])
Exemplo n.º 6
0
 def test_attributeValues(self):
     layer = sextante.getobject(points())
     attributeValues = values(layer, "ID")
     i = 1
     for value in attributeValues['ID']:
         self.assertEqual(int(i), int(value))
         i+=1
     self.assertEquals(13,i)
Exemplo n.º 7
0
 def test_attributeValues(self):
     layer = sextante.getobject(points())
     attributeValues = values(layer, "ID")
     i = 1
     for value in attributeValues['ID']:
         self.assertEqual(int(i), int(value))
         i += 1
     self.assertEquals(13, i)
Exemplo n.º 8
0
 def test_featuresWithSelection(self):
     layer = sextante.getobject(points())
     feature = layer.getFeatures().next()
     selected = [feature.id()]
     layer.setSelectedFeatures(selected)
     features = sextante.getfeatures(layer)
     self.assertEqual(1, len(features))
     layer.setSelectedFeatures([])
Exemplo n.º 9
0
 def test_SagaVvectorAlgorithmWithSelection(self):
     layer = sextante.getobject(polygons2())
     feature = layer.getFeatures().next()
     selected = [feature.id()]
     layer.setSelectedFeatures(selected)
     outputs = sextante.runalg("saga:polygoncentroids", polygons2(), True, None)
     output = outputs["CENTROIDS"]
     layer = QGisLayers.getObjectFromUri(output, True)
     fields = layer.pendingFields()
     expectednames = ["ID", "POLY_NUM_B", "POLY_ST_B"]
     expectedtypes = ["Real", "Real", "String"]
     names = [str(f.name()) for f in fields]
     types = [str(f.typeName()) for f in fields]
     self.assertEqual(expectednames, names)
     self.assertEqual(expectedtypes, types)
     features = sextante.getfeatures(layer)
     self.assertEqual(1, len(features))
     feature = features.next()
     attrs = feature.attributes()
     expectedvalues = ["2", "1", "string a"]
     values = [str(attr.toString()) for attr in attrs]
     self.assertEqual(expectedvalues, values)
     wkt = "POINT(270820.58189697 4458968.73298999)"
     self.assertEqual(wkt, str(feature.geometry().exportToWkt()))
Exemplo n.º 10
0
 def test_featuresWithoutSelection(self):
     layer = sextante.getobject(points())
     features = sextante.getfeatures(layer)
     self.assertEqual(12, len(features))
Exemplo n.º 11
0
 def test_getobject(self):
     layer = sextante.getobject(points());
     self.assertIsNotNone(layer)
     layer = sextante.getobject("points");
     self.assertIsNotNone(layer)
Exemplo n.º 12
0
 def test_featuresWithoutSelection(self):
     layer = sextante.getobject(points())
     features = sextante.getfeatures(layer)
     self.assertEqual(12, len(features))
Exemplo n.º 13
0
 def test_getobject(self):
     layer = sextante.getobject(points())
     self.assertIsNotNone(layer)
     layer = sextante.getobject("points")
     self.assertIsNotNone(layer)