fix unexpected behavior around filters with validators #575
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.
Fixes #574
In my first example from that issue, the problem is that in the overridden
run_validations!
method, it doesn't end by callingerrors.empty?
the way that the Rails Validations class method does.In my second example, the issue is that on initialization
@_interaction_inputs
is set based on the original values sent over. Since nothing is being set, and there's no default value, it becomesnil
. However, as updates are made to the filter value, nothing ever updates that original mapping so it will always fail. I went back and forth on how to address this, considering a callback to update the Input definition, but that didn't seem necessary when I had the actual context available. I also considered removing the now-unused inputs param, but didn't want to force an API change on you.