def test_column_fetch_slow(self): mock_client = MockKustoClient(block=True) table = PyKustoClient(mock_client, fetch_by_default=False)['test_db']['mock_table'] table.refresh() mock_client.wait_until_blocked() self.assertType(table['foo'], _AnyTypeColumn) self.assertType(table['bar'], _AnyTypeColumn) self.assertType(table['baz'], _AnyTypeColumn) # Return the fetch mock_client.release() table.wait_for_items() # Make sure the fetch query was indeed called assert not mock_client.blocked()
def test_query_before_fetch_returned(self): mock_client = MockKustoClient(block=True, record_metadata=True) table = PyKustoClient(mock_client, fetch_by_default=False)['test_db']['mock_table'] table.refresh() mock_client.wait_until_blocked() mock_client.do_not_block_next_requests() self.query_in_background(Query(table).take(5).execute) # Return the fetch mock_client.release() table.wait_for_items() self.get_background_query_result() # Make sure the fetch query was indeed called assert not mock_client.blocked() # Before the fix the order of returned query was reversed self.assertEqual( [ RecordedQuery('test_db', '.show table mock_table | project AttributeName, AttributeType | limit 10000'), RecordedQuery('test_db', 'mock_table | take 5'), ], mock_client.recorded_queries, )