Repository navigation
fix: avoid duplicate custom variable filters in cube links (#166) - #178
Open
DanielVdWP wants to merge 9 commits into
Open
DanielVdWP wants to merge 9 commits into
DanielVdWP wants to merge 9 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Fixes #166.
When a custom variable is used both as a cube filter and as a
dimension, the generated detail URL may contain the same filter
condition twice.
This can cause incorrect results when navigating from a cube
to the corresponding host or service status view.
The issue affects both cube detail links and the actions used
to display matching hosts and services.
Changes
detail URLs.
action links.
conditions inside OR expressions.
navigation.
Testing
Bug reproduction
The original implementation was tested using GitHub Actions
with PHP 8.3 and PHP 8.4.
Both environments reproduced the duplicate filter issue.
https://github.com/DanielVdWP/icingaweb2-module-cube/actions/runs/35562754291
Fix validation
After applying the fix, the regression tests passed on both
PHP versions.
The tests cover:
The regression tests exercise the production URL-building code
with lightweight doubles for external dependencies.
The project's upstream PHP checks were also executed,
including linting, PHPUnit and PHPStan.
All 8 CI jobs completed successfully.
https://github.com/DanielVdWP/icingaweb2-module-cube/actions/runs/35562919130
Full end-to-end testing with a running Icinga Web 2 installation
has not been performed.