def testGlobWidget(self): w = QgsFieldDomainWidget(Qgis.FieldDomainType.Glob) domain = w.createFieldDomain() self.assertIsInstance(domain, QgsGlobFieldDomain) self.assertEqual(domain.fieldType(), QVariant.String) self.assertEqual(domain.splitPolicy(), Qgis.FieldDomainSplitPolicy.DefaultValue) self.assertEqual(domain.mergePolicy(), Qgis.FieldDomainMergePolicy.DefaultValue) self.assertEqual(domain.glob(), '') # set domain and test round trips domain = QgsGlobFieldDomain('name', 'desc', QVariant.Int, '*a*') domain.setSplitPolicy(Qgis.FieldDomainSplitPolicy.GeometryRatio) domain.setMergePolicy(Qgis.FieldDomainMergePolicy.Sum) w.setFieldDomain(domain) domain2 = w.createFieldDomain() self.assertIsInstance(domain2, QgsGlobFieldDomain) self.assertEqual(domain2.fieldType(), QVariant.Int) self.assertEqual(domain2.splitPolicy(), Qgis.FieldDomainSplitPolicy.GeometryRatio) self.assertEqual(domain2.mergePolicy(), Qgis.FieldDomainMergePolicy.Sum) self.assertEqual(domain2.glob(), '*a*')
def testGlobFieldDomain(self): domain = QgsGlobFieldDomain('name', 'desc', QVariant.String, '*a*') self.assertEqual(str(domain), "<QgsGlobFieldDomain: name '*a*'>") self.assertEqual(domain.type(), Qgis.FieldDomainType.Glob) self.assertEqual(domain.name(), 'name') domain.setName('n') self.assertEqual(domain.name(), 'n') self.assertEqual(domain.description(), 'desc') domain.setDescription('desc 2') self.assertEqual(domain.description(), 'desc 2') self.assertEqual(domain.fieldType(), QVariant.String) domain.setFieldType(QVariant.Double) self.assertEqual(domain.fieldType(), QVariant.Double) self.assertEqual(domain.glob(), '*a*') domain.setGlob('*b*') self.assertEqual(domain.glob(), '*b*') domain.setSplitPolicy(Qgis.FieldDomainSplitPolicy.GeometryRatio) self.assertEqual(domain.splitPolicy(), Qgis.FieldDomainSplitPolicy.GeometryRatio) domain.setMergePolicy(Qgis.FieldDomainMergePolicy.GeometryWeighted) self.assertEqual(domain.mergePolicy(), Qgis.FieldDomainMergePolicy.GeometryWeighted) d2 = domain.clone() self.assertEqual(d2.name(), 'n') self.assertEqual(d2.description(), 'desc 2') self.assertEqual(d2.fieldType(), QVariant.Double) self.assertEqual(d2.glob(), '*b*') self.assertEqual(d2.splitPolicy(), Qgis.FieldDomainSplitPolicy.GeometryRatio) self.assertEqual(d2.mergePolicy(), Qgis.FieldDomainMergePolicy.GeometryWeighted)