Skip to content

Commit

Permalink
BUG: fix formatting for unused kwargs error message (#42)
Browse files Browse the repository at this point in the history
* changed formatting for unused kwargs error message

* added test for logging

* edited test

* fixed caplog

* fixed precommit issues

* fixed precommit issues

* modified source test

* Manually set logger level

* edited test
  • Loading branch information
jacobgolomb authored and JasperMartins committed Nov 12, 2024
1 parent 50b1ad8 commit 8e73e20
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 2 deletions.
4 changes: 2 additions & 2 deletions bilby/gw/source.py
Original file line number Diff line number Diff line change
Expand Up @@ -669,7 +669,7 @@ def _base_lal_cbc_fd_waveform(
h_cross[frequency_bounds] *= time_shift

if len(waveform_kwargs) > 0:
logger.warning(UNUSED_KWARGS_MESSAGE.format(waveform_kwargs))
logger.warning(UNUSED_KWARGS_MESSAGE.format(waveform_kwargs=waveform_kwargs))

return dict(plus=h_plus, cross=h_cross)

Expand Down Expand Up @@ -1128,7 +1128,7 @@ def _base_waveform_frequency_sequence(
raise

if len(waveform_kwargs) > 0:
logger.warning(UNUSED_KWARGS_MESSAGE.format(waveform_kwargs))
logger.warning(UNUSED_KWARGS_MESSAGE.format(waveform_kwargs=waveform_kwargs))

return dict(plus=h_plus.data.data, cross=h_cross.data.data)

Expand Down
19 changes: 19 additions & 0 deletions test/gw/source_test.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import unittest
import logging
import pytest

import bilby
import lal
Expand Down Expand Up @@ -33,6 +35,10 @@ def setUp(self):
self.bad_parameters = copy(self.parameters)
self.bad_parameters["mass_1"] = -30.0

@pytest.fixture(autouse=True)
def set_caplog(self, caplog):
self._caplog = caplog

def tearDown(self):
del self.parameters
del self.waveform_kwargs
Expand Down Expand Up @@ -65,6 +71,19 @@ def test_waveform_error_raising(self):
self.frequency_array, **raise_error_parameters
)

def test_unused_waveform_kwargs_message(self):
self.parameters.update(self.waveform_kwargs)
self.parameters["unused_waveform_parameter"] = 1.0
bilby.gw.source.logger.propagate = True

with self._caplog.at_level(logging.WARNING, logger="bilby"):
bilby.gw.source.lal_binary_black_hole(
self.frequency_array, **self.parameters
)
assert "There are unused waveform kwargs" in self._caplog.text

del self.parameters["unused_waveform_parameter"]

def test_lal_bbh_works_without_waveform_parameters(self):
self.assertIsInstance(
bilby.gw.source.lal_binary_black_hole(
Expand Down

0 comments on commit 8e73e20

Please sign in to comment.