def test_sync_druid_perm(self, PyDruid): self.login(username="******") instance = PyDruid.return_value instance.time_boundary.return_value = [{"result": {"maxTime": "2016-01-01"}}] instance.segment_metadata.return_value = SEGMENT_METADATA cluster = ( db.session.query(DruidCluster) .filter_by(cluster_name="test_cluster") .first() ) if cluster: for datasource in ( db.session.query(DruidDatasource).filter_by(cluster_id=cluster.id).all() ): db.session.delete(datasource) db.session.delete(cluster) db.session.commit() cluster = DruidCluster( cluster_name="test_cluster", broker_host="localhost", broker_port=7980, metadata_last_refreshed=datetime.now(), ) db.session.add(cluster) cluster.get_datasources = PickableMock(return_value=["test_datasource"]) cluster.refresh_datasources() cluster.datasources[0].merge_flag = True metadata = cluster.datasources[0].latest_metadata() self.assertEqual(len(metadata), 4) db.session.commit() view_menu_name = cluster.datasources[0].get_perm() view_menu = security_manager.find_view_menu(view_menu_name) permission = security_manager.find_permission("datasource_access") pv = ( security_manager.get_session.query(security_manager.permissionview_model) .filter_by(permission=permission, view_menu=view_menu) .first() ) assert pv is not None
def test_sync_druid_perm(self, PyDruid): self.login(username='******') instance = PyDruid.return_value instance.time_boundary.return_value = [ {'result': {'maxTime': '2016-01-01'}}] instance.segment_metadata.return_value = SEGMENT_METADATA cluster = ( db.session .query(DruidCluster) .filter_by(cluster_name='test_cluster') .first() ) if cluster: db.session.delete(cluster) db.session.commit() cluster = DruidCluster( cluster_name='test_cluster', coordinator_host='localhost', coordinator_port=7979, broker_host='localhost', broker_port=7980, metadata_last_refreshed=datetime.now()) db.session.add(cluster) cluster.get_datasources = PickableMock( return_value=['test_datasource'], ) cluster.refresh_datasources() cluster.datasources[0].merge_flag = True metadata = cluster.datasources[0].latest_metadata() self.assertEqual(len(metadata), 4) db.session.commit() view_menu_name = cluster.datasources[0].get_perm() view_menu = security_manager.find_view_menu(view_menu_name) permission = security_manager.find_permission('datasource_access') pv = security_manager.get_session.query( security_manager.permissionview_model).filter_by( permission=permission, view_menu=view_menu).first() assert pv is not None