Add Postgres support with tests #534
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.
tl;dr Adds more tests and changes some tests to cover Postgres support. Explicit
orderBy('type')forTag::getTypes()Note
The package does already work with Postgres. I must have either used a very old version or had something else wrong in my custom queries. See discussion here: #532
Changes in this PR:
run-testsworkflowcomposer.jsonto allow running tests formysqlandpgsqldriversTestModel(the one usingHasTags) fromtoEqual()totoContain(), because the returned sorting inpgsqlis differentorder_columnwithAnyTagsandwithAllTagsthat work with bothnameandslugof the tagsorderBy('type')toTag::getTypes()to satisfy the different order in pgsqlIf the order from
Tag::getTypes()doesn't matter, we could remove this change and alter the test in https://github.com/spatie/laravel-tags/blob/main/tests/TagTest.php#L175-L186 to not expect an explicit order.Happy to make changes if needed.