mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-14 00:07:35 -04:00
Fix python bindings for QgsRelation.fieldPairs()
This commit is contained in:
parent
978642addb
commit
1b205be604
@ -165,7 +165,8 @@ class QgsRelation
|
||||
*/
|
||||
QMap< QString, QString > fieldPairs() const;
|
||||
%MethodCode
|
||||
QList< QgsRelation::FieldPair > pairs = sipCpp->fieldPairs();
|
||||
const QList< QgsRelation::FieldPair >& pairs = sipCpp->fieldPairs();
|
||||
sipRes = new QMap< QString, QString >();
|
||||
Q_FOREACH( const QgsRelation::FieldPair& pair, pairs )
|
||||
{
|
||||
sipRes->insert( pair.first, pair.second );
|
||||
|
@ -119,5 +119,23 @@ class TestQgsRelation( TestCase ):
|
||||
|
||||
QgsMapLayerRegistry.instance().removeAllMapLayers()
|
||||
|
||||
def test_fieldPairs(self):
|
||||
referencedLayer = createReferencedLayer()
|
||||
referencingLayer = createReferencingLayer()
|
||||
QgsMapLayerRegistry.instance().addMapLayers([referencedLayer,referencingLayer])
|
||||
|
||||
rel = QgsRelation()
|
||||
|
||||
rel.setRelationId( 'rel1' )
|
||||
rel.setRelationName( 'Relation Number One' )
|
||||
rel.setReferencingLayer( referencingLayer.id() )
|
||||
rel.setReferencedLayer( referencedLayer.id() )
|
||||
rel.addFieldPair( 'foreignkey', 'y' )
|
||||
|
||||
assert( rel.fieldPairs() == { 'foreignkey': 'y'} )
|
||||
|
||||
QgsMapLayerRegistry.instance().removeAllMapLayers()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
Loading…
x
Reference in New Issue
Block a user