Skip to content

Commit 4d6017d

Browse files
committed
ready for release 2.4.2
1 parent cce942a commit 4d6017d

File tree

1 file changed

+18
-11
lines changed

1 file changed

+18
-11
lines changed

tests/test_tracker.py

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -70,29 +70,34 @@ def test_predict_carbon_intensity(self,mock_intensity_service):
7070

7171
self.assertEqual(ci, 10.5)
7272

73-
mock_intensity_service.return_value.generate_logging_message.assert_called_with(carbon_intensity_fetch=mock_fetch)
74-
self.logger.info.assert_called()
75-
self.logger.output.assert_called()
7673

74+
@patch("carbontracker.tracker.IntensityService")
75+
def test_average_carbon_intensity(self, mock_intensity_service):
76+
# Ensure background fetch returns a real-looking object, not a MagicMock
77+
mock_intensity_service.return_value.fetch_carbon_intensity.return_value = IntensityFetch(
78+
carbon_intensity=0.0,
79+
address="n/a",
80+
country="n/a",
81+
is_fetched=False,
82+
is_localized=False,
83+
)
84+
85+
thread = CarbonIntensityThread(self.logger, self.stop_event)
7786

78-
@patch("carbontracker.emissions.intensity.intensity.IntensityFetch")
79-
def test_average_carbon_intensity(self, carbon_intensity_fetch):
8087
mock_carbon_intensity_fetch = Mock()
8188
mock_carbon_intensity_fetch.carbon_intensity = 10.5
8289
mock_carbon_intensity_fetch.address = "test_address"
8390

8491
mock_carbon_intensity_fetch_2 = Mock()
85-
mock_carbon_intensity_fetch_2.carbon_intensity = 13.0
92+
mock_carbon_intensity_fetch_2.carbon_intensity = 13.0
8693
mock_carbon_intensity_fetch_2.address = "test_address"
87-
thread = CarbonIntensityThread(self.logger, self.stop_event)
8894

89-
thread.carbon_intensities_fetches = []
90-
thread.carbon_intensities_fetches.append(mock_carbon_intensity_fetch)
91-
thread.carbon_intensities_fetches.append(mock_carbon_intensity_fetch_2)
95+
thread.carbon_intensities_fetches = [mock_carbon_intensity_fetch, mock_carbon_intensity_fetch_2]
9296

9397
avg_ci = thread.average_carbon_intensity()
9498
self.assertEqual(avg_ci, 11.75)
9599

100+
96101
@patch("carbontracker.tracker.CarbonIntensityThread._fetch_carbon_intensity")
97102
def test_run_with_fetch_exception(self, mock_fetch_carbon_intensity):
98103
mock_fetch_carbon_intensity.side_effect = Exception("Test exception")
@@ -972,7 +977,9 @@ def _assert_intensity_fetcher_used(self, provider_key, patch_target, api_key):
972977

973978
mock_constructor.assert_called_once_with(logger=self.mock_logger, api_key=api_key)
974979
self.mock_intensity_thread_class.assert_called_once()
975-
intensity_fetcher = self.mock_intensity_thread_class.call_args.kwargs[
980+
_,intensity_fetcher_kwargs = self.mock_intensity_thread_class.call_args
981+
982+
intensity_fetcher = intensity_fetcher_kwargs[
976983
"intensity_fetcher"
977984
]
978985
self.assertIs(intensity_fetcher, expected_fetcher)

0 commit comments

Comments
 (0)