Fix redundant presence validation on belongs part V #12514
Merged
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.
What? Why?
What should we test?
After migration, all tests should pass and no rubocop offense should be raised.
No migration file here because the null were already enforced at DB level.
Also no need to check for corrupt data.
Need to know: May be some of these changes are unnecessary
I had the following message when, after code modifications I ran the
corresponding specs (see end of the thread).
So, I changed the spec accordingly. In the end belonged ids must not be null.
However, since belongs_to enforce validation, testing that a belongs_to is
enforced in specs appears to me redundant.
So, I would delete the 2 first examples in the
spec/models/subscription_line_item_spec.rb
file,and the
spec/models/tag_rule_spec.rb
file entirely.I share the opinion that one not should test what an external lib should do:
https://www.codewithjason.com/dont-use-shoulda-matchers/
But I did the changes in cases reviewers still want to keep the specs.
It is also easy to add a commit to delete those parts.
Release notes
Changelog Category (reviewers may add a label for the release notes):
The title of the pull request will be included in the release notes.