Skip to content

Commit

Permalink
do not allow extra parameter
Browse files Browse the repository at this point in the history
  • Loading branch information
MAfarrag committed Jan 17, 2025
1 parent aef2375 commit 5d83e59
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 2 deletions.
9 changes: 7 additions & 2 deletions hydrolib/core/dflowfm/tim/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,15 +126,20 @@ class TimModel(ParsableFileModel):

quantities_names: Optional[List[str]] = Field(default=None)

def __init__(self, *args, quantities_names: Optional[List[str]] = None, **kwargs):
def __init__(
self,
filepath: Optional[str] = None,
quantities_names: Optional[List[str]] = None,
**parsable_file_kwargs,
):
"""
Custom initializer to handle extra parameters specific to TimModel.
Args:
quantities_names (Optional[List[str]]): Names for the quantities in the timeseries.
*args, **kwargs: Other arguments for the superclass.
"""
super().__init__(*args, **kwargs)
super().__init__(filepath=filepath, **parsable_file_kwargs)
self.quantities_names = quantities_names

@classmethod
Expand Down
8 changes: 8 additions & 0 deletions tests/dflowfm/test_tim.py
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,14 @@ def test_with_quantities_names(self):
quantities_names=["a", "b"],
)

def test_with_extra_un_needed_parameters(self):
with pytest.raises(ValueError):
TimModel(
timeseries=self.single_data_for_timeseries_floats,
extra_param="extra",
)
print("Extra parameters are not allowed")

@pytest.mark.parametrize(
"input_data, reference_path",
[
Expand Down

0 comments on commit 5d83e59

Please sign in to comment.