[6.x] Add custom deleted_at column name for assertSoftDeleted #30111
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.
This fixes issue #30110 where it isn't possible to use
assertSoftDeleted
if you're using a column name other thandeleted_at
. This allows the custom column name to be passed into the assertion, and it also adds support if you pass in a model instance.A few things to note:
I updated the model check to also include that it uses the
SoftDeletes
trait. It wasn't required previously but now that we callgetDeletedAtColumn()
we want to be sure that the method will be there. This would be backwards incompatible if you were using this assertion but not using theSoftDeletes
trait, but I don't think that would be expected behaviour.I've popped
$deletedAtColumn
on as the last argument to the method so as not to break anything. However I have a gut feeling it should rather be between the$data
and$connection
arguments. Curious as to your thoughts in regard to this.