本文整理汇总了Python中superset.connectors.druid.models.DruidDatasource.recursive_get_fields方法的典型用法代码示例。如果您正苦于以下问题:Python DruidDatasource.recursive_get_fields方法的具体用法?Python DruidDatasource.recursive_get_fields怎么用?Python DruidDatasource.recursive_get_fields使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类superset.connectors.druid.models.DruidDatasource
的用法示例。
在下文中一共展示了DruidDatasource.recursive_get_fields方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_recursive_get_fields
# 需要导入模块: from superset.connectors.druid.models import DruidDatasource [as 别名]
# 或者: from superset.connectors.druid.models.DruidDatasource import recursive_get_fields [as 别名]
def test_recursive_get_fields(self):
conf = {
'type': 'quantile',
'fieldName': 'f1',
'field': {
'type': 'custom',
'fields': [{
'type': 'fieldAccess',
'fieldName': 'f2',
}, {
'type': 'fieldAccess',
'fieldName': 'f3',
}, {
'type': 'quantiles',
'fieldName': 'f4',
'field': {
'type': 'custom',
},
}, {
'type': 'custom',
'fields': [{
'type': 'fieldAccess',
'fieldName': 'f5',
}, {
'type': 'fieldAccess',
'fieldName': 'f2',
'fields': [{
'type': 'fieldAccess',
'fieldName': 'f3',
}, {
'type': 'fieldIgnoreMe',
'fieldName': 'f6',
}],
}],
}],
},
}
fields = DruidDatasource.recursive_get_fields(conf)
expected = set(['f1', 'f2', 'f3', 'f4', 'f5'])
self.assertEqual(5, len(fields))
for field in fields:
expected.remove(field)
self.assertEqual(0, len(expected))