Handle array states and values in assertTableColumnStateSet #12032
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
Allows assertTableColumnStateSet() (and NotSet) to be used for testing columns with array states, such as when rendering a dotted relation with multiple values.
No backward compat issues, doesn't affect any existing usage of these methods, only has any effect if the column state or the expected value are arrays.
Prior to this PR, attempting to test an array value against an array state would error out, because the code assumed $value was stringable when composing the failure message (so "array to string conversion" error). By serializing the state and/or value, this avoids that error, and also avoids potential array comparison issues (by comparing the serialized versions).
Visual changes
No visual changes
Functional changes
composer cs
command.