def test_fetch_dashboard_search_results(self, mock_search: MagicMock) -> None: mock_dashboard_result = Dashboard(id='mode_dashboard', uri='dashboard_uri', cluster='gold', group_name='mode_dashboard_group', group_url='mode_dashboard_group_url', product='mode', name='mode_dashboard', url='mode_dashboard_url', description='test_dashboard', last_successful_run_timestamp=1000) mock_search.return_value = SearchResult(total_results=1, results=[mock_dashboard_result]) expected = SearchResult(total_results=1, results=[Dashboard(id='mode_dashboard', uri='dashboard_uri', cluster='gold', group_name='mode_dashboard_group', group_url='mode_dashboard_group_url', product='mode', name='mode_dashboard', url='mode_dashboard_url', description='test_dashboard', last_successful_run_timestamp=1000)]) resp = self.es_proxy.fetch_dashboard_search_results(query_term='test_query_term', page_index=0, index='dashboard_search_index') self.assertEqual(resp.total_results, expected.total_results) self.assertDictEqual(vars(resp.results[0]), vars(expected.results[0]), "Search result doesn't match with expected result!")
def mock_proxy_results() -> Dashboard: return Dashboard(uri='dashboard_uri', cluster='gold', group_name='mode_dashboard_group', group_url='mode_dashboard_group_url', product='mode', name='mode_dashboard', url='mode_dashboard_url', description='test_dashboard', last_successful_run_timestamp=1000)
def setUp(self) -> None: self.app = create_app( config_module_class='search_service.config.LocalConfig') self.app_context = self.app.app_context() self.app_context.push() mock_elasticsearch_client = MagicMock() self.es_proxy = ElasticsearchProxy(client=mock_elasticsearch_client) self.mock_badge = Tag(tag_name='name') self.mock_tag = Tag(tag_name='match') self.mock_empty_badge = [] # type: List[Tag] self.mock_empty_tag = [] # type: List[Tag] self.mock_result1 = MockSearchResult( name='test_table', key='test_key', description='test_description', cluster='gold', database='test_db', schema='test_schema', column_names=['test_col1', 'test_col2'], tags=self.mock_empty_tag, badges=self.mock_empty_badge, last_updated_timestamp=1527283287) self.mock_result2 = MockSearchResult( name='test_table2', key='test_key2', description='test_description2', cluster='gold', database='test_db2', schema='test_schema2', column_names=['test_col1', 'test_col2'], tags=self.mock_empty_tag, badges=self.mock_empty_badge, last_updated_timestamp=1527283287) self.mock_result3 = Table(name='test_table3', key='test_key3', description='test_description3', cluster='gold', database='test_db3', schema='test_schema3', column_names=['test_col1', 'test_col2'], tags=[self.mock_tag], badges=[self.mock_badge], last_updated_timestamp=1527283287) self.mock_result4 = MockUserSearchResult( full_name='First Last', first_name='First', last_name='Last', team_name='Test team', email='*****@*****.**', github_username='******', manager_email='*****@*****.**', is_active=True, employee_type='FTE', role_name='swe', new_attr='aaa') self.mock_dashboard_result = Dashboard( uri='dashboard_uri', cluster='gold', group_name='mode_dashboard_group', group_url='mode_dashboard_group_url', product='mode', name='mode_dashboard', url='mode_dashboard_url', description='test_dashboard', last_successful_run_timestamp=1000)