def testSetValue(self): parameter = ParameterBoolean('myName', 'myDescription') self.assertEqual(parameter.value, None) parameter.setValue(False) self.assertEqual(parameter.value, False) parameter.setValue(True) self.assertEqual(parameter.value, True)
def testSetValue(self): parameter = ParameterBoolean("myName", "myDescription") self.assertEqual(parameter.value, None) parameter.setValue(False) self.assertEqual(parameter.value, False) parameter.setValue(True) self.assertEqual(parameter.value, True)
def testDefault(self): parameter = ParameterBoolean('myName', 'myDescription', default=False, optional=True) self.assertEqual(parameter.value, False) parameter.setValue(None) self.assertEqual(parameter.value, None)
def testOptional(self): optionalParameter = ParameterBoolean("myName", "myDescription", default=False, optional=True) self.assertEqual(optionalParameter.value, False) optionalParameter.setValue(True) self.assertEqual(optionalParameter.value, True) self.assertTrue(optionalParameter.setValue(None)) self.assertEqual(optionalParameter.value, None) requiredParameter = ParameterBoolean("myName", "myDescription", default=False, optional=False) self.assertEqual(requiredParameter.value, False) requiredParameter.setValue(True) self.assertEqual(requiredParameter.value, True) self.assertFalse(requiredParameter.setValue(None)) self.assertEqual(requiredParameter.value, True)
def testOptional(self): optionalParameter = ParameterBoolean('myName', 'myDescription', default=False, optional=True) self.assertEqual(optionalParameter.value, False) optionalParameter.setValue(True) self.assertEqual(optionalParameter.value, True) self.assertTrue(optionalParameter.setValue(None)) self.assertEqual(optionalParameter.value, None) requiredParameter = ParameterBoolean('myName', 'myDescription', default=False, optional=False) self.assertEqual(requiredParameter.value, False) requiredParameter.setValue(True) self.assertEqual(requiredParameter.value, True) self.assertFalse(requiredParameter.setValue(None)) self.assertEqual(requiredParameter.value, True)
def testDefault(self): parameter = ParameterBoolean("myName", "myDescription", default=False, optional=True) self.assertEqual(parameter.value, False) parameter.setValue(None) self.assertEqual(parameter.value, None)
def defineCharacteristics(self): # WPS Data Inputs for key, value in self.process.getDataInputs().iteritems(): optionalBoolean = value.getMinOccurs() != 1 required = u' (※)' if value.getMinOccurs() == 1 else u'' paramIdentifier = value.getIdentifier() paramTitle = value.getTitle() + required if isinstance(value, WPSLiteralData): # string, double, int, boolean defaultValue = value.getDefaultValue() param = None if value.getType() == LiteralType.BOOLEAN: param = ParameterBoolean(paramIdentifier, paramTitle) elif value.getType() == LiteralType.FLOAT: param = ParameterNumber(paramIdentifier, paramTitle) param.isInteger = False elif value.getType() == LiteralType.INT: param = ParameterNumber(paramIdentifier, paramTitle) param.isInteger = True else: if value.getAllowedValues(): param = ParameterSelection2(paramIdentifier, paramTitle, value.getAllowedValues()) else: param = ParameterString(paramIdentifier, paramTitle, optional=optionalBoolean) if defaultValue: param.setValue(defaultValue) self.addParameter(param) elif isinstance(value, WPSComplexData): # geometry, featurecollection, gridcoverage, xml param = None if value.getType() == ComplexType.VECTOR: # select vector layer param = ParameterVector(paramIdentifier, paramTitle, optional=optionalBoolean) elif value.getType() == ComplexType.RASTER: # select raster layer param = ParameterRaster(paramIdentifier, paramTitle, optional=optionalBoolean) elif value.getType() == ComplexType.GEOMETRY: # use WKT format param = ParameterString(paramIdentifier, paramTitle, multiline=True, optional=optionalBoolean) elif value.getType() == ComplexType.FILTER: # use ECQL expression param = ParameterString(paramIdentifier, paramTitle, multiline=True, optional=optionalBoolean) elif value.getType() == ComplexType.XML: # use XML Expression param = ParameterString(paramIdentifier, paramTitle, multiline=True, optional=optionalBoolean) self.addParameter(param) elif isinstance(value, WPSBoundingBoxData): # default = current map layer's minimum extent & crs param = ParameterExtent(paramIdentifier, paramTitle) # The value is a string in the form "xmin, xmax, ymin, ymax" extent = iface.mapCanvas().extent() default_extent = str(extent.xMinimum()) + ',' + str(extent.xMaximum()) + ',' \ + str(extent.yMinimum()) + ',' + str(extent.yMaximum()) param.setValue(default_extent) self.addParameter(param) # WPS Process Outputs # OutputString --> OutputHTML for key, value in self.process.getProcessOutputs().iteritems(): if isinstance(value, WPSLiteralOutput): # string, float, int, boolean self.addOutput( OutputHTML(value.getIdentifier(), value.getTitle())) elif isinstance(value, WPSComplexOutput): # geometry, featurecollection, gridcoverage, xml if value.getType() == ComplexType.VECTOR: self.addOutput( OutputVector(value.getIdentifier(), value.getTitle())) elif value.getType() == ComplexType.RASTER: self.addOutput( OutputRaster(value.getIdentifier(), value.getTitle())) elif value.getType() == ComplexType.XML: self.addOutput( OutputHTML(value.getIdentifier(), value.getTitle())) elif value.getType() == ComplexType.FILTER: self.addOutput( OutputHTML(value.getIdentifier(), value.getTitle())) elif value.getType() == ComplexType.GEOMETRY: # return WKT and save shapefile self.addOutput( OutputVector(value.getIdentifier(), value.getTitle()))