Skip to content

🧪 [Test Improvement] Add coverage for _replace_parameters_brackets repl function#525

Merged
akutuva21 merged 1 commit into
mainfrom
fix/test-repl-brackets-9136984088447531084
Jun 16, 2026
Merged

🧪 [Test Improvement] Add coverage for _replace_parameters_brackets repl function#525
akutuva21 merged 1 commit into
mainfrom
fix/test-repl-brackets-9136984088447531084

Conversation

@akutuva21

Copy link
Copy Markdown
Owner

🎯 What:
The inner function repl of _replace_parameters_brackets in bionetgen/modelapi/sympy_odes.py was previously untested. This function is responsible for regex replacements of array-like parameter references in mathematical expressions, handling both standard replacements and gracefully failing back to p{idx} for out-of-bounds parameter references.

📊 Coverage:
Added a new unit test, test_replace_parameters_brackets in tests/test_sympy_odes.py. This test fully covers:

  • Normal parameter string replacements where indices are within bounds.
  • Out of bounds index replacements (the edge case repl handles explicitly).
  • Varying whitespace within the brackets.
  • No matches strings to ensure they are returned unchanged.
  • An empty parameter list.

Result:
The test suite now properly covers the parameter replacement logic, catching potential future bugs and ensuring robust and deterministic regex functionality for parsing mathematical equations. All tests, including the full suite run, pass successfully without regressions.


PR created automatically by Jules for task 9136984088447531084 started by @akutuva21

Added test coverage for the `repl` nested method inside `_replace_parameters_brackets` in `bionetgen/modelapi/sympy_odes.py`. The new tests effectively test both standard, in-bounds inputs as well as out-of-bounds boundary conditions correctly handled by the `repl` helper method.

Co-authored-by: akutuva21 <44119804+akutuva21@users.noreply.github.com>
@google-labs-jules

Copy link
Copy Markdown

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@akutuva21 akutuva21 marked this pull request as ready for review June 16, 2026 15:13
@akutuva21 akutuva21 merged commit 4c1f7bd into main Jun 16, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant