diff --git a/bigquery/google/cloud/bigquery/table.py b/bigquery/google/cloud/bigquery/table.py index 92af19c43ce5..dfadf55539dd 100644 --- a/bigquery/google/cloud/bigquery/table.py +++ b/bigquery/google/cloud/bigquery/table.py @@ -1384,6 +1384,10 @@ def _to_dataframe_tabledata_list(self, dtypes, progress_bar=None): progress_bar.total = progress_bar.total or self.total_rows progress_bar.update(len(current_frame)) + if progress_bar is not None: + # Indicate that the download has finished. + progress_bar.close() + return pandas.concat(frames) def _to_dataframe_bqstorage(self, bqstorage_client, dtypes): diff --git a/bigquery/tests/unit/test_table.py b/bigquery/tests/unit/test_table.py index 7ac982394c9d..81eee99d7e06 100644 --- a/bigquery/tests/unit/test_table.py +++ b/bigquery/tests/unit/test_table.py @@ -1501,6 +1501,7 @@ def test_to_dataframe_progress_bar( progress_bar_mock.assert_called() progress_bar_mock().update.assert_called() + progress_bar_mock().close.assert_called_once() self.assertEqual(len(df), 4) @unittest.skipIf(pandas is None, "Requires `pandas`")