[wp-trac] [WordPress Trac] #57706: REST_Block_Type_Controller_Test::test_get_item_invalid() throws PHP Warning for invalid 'styles' data type
WordPress Trac
noreply at wordpress.org
Tue Feb 14 19:09:09 UTC 2023
#57706: REST_Block_Type_Controller_Test::test_get_item_invalid() throws PHP Warning
for invalid 'styles' data type
---------------------------------------------+-----------------------------
Reporter: hellofromTonya | Owner: hellofromTonya
Type: defect (bug) | Status: closed
Priority: normal | Milestone: 6.2
Component: Build/Test Tools | Version:
Severity: normal | Resolution: fixed
Keywords: has-patch has-unit-tests commit | Focuses:
---------------------------------------------+-----------------------------
Changes (by hellofromTonya):
* status: reviewing => closed
* resolution: => fixed
Comment:
In [changeset:"55342" 55342]:
{{{
#!CommitTicketReference repository="" revision="55342"
Build/Test Tools: Fix invalid styles data type PHP Warning in
REST_Block_Type_Controller_Test::test_get_item_invalid().
Sets the `styles` block setting to an empty array in the
`REST_Block_Type_Controller_Test::test_get_item_invalid()` test to
resolve:
{{{
Warning: foreach() argument must be of type array|object, string given in
wp-includes/class-wp-theme-json.php on line 835
}}}
Previously the test set the `styles` setting to a string value, which is
incompatible. The problem surfaced after [55172] added a `foreach` to
iterate the `styles`. The root cause was due to this test passing a string
instead of an array.
Why?
`WP_Block_Type` `styles` property is documented as only accepting an array
data type. At the time of this changeset, it does not validate before
setting the property.
Code interacting with the property expects it to be an array data type.
The PHP Warning alerts that of a doing it wrong when the incorrect data
type is registered for the block type.
Follow-up to [55172], [48173].
Props tanjimtc71, hellofromTonya, kapilpaul.
Fixes #57706.
}}}
--
Ticket URL: <https://core.trac.wordpress.org/ticket/57706#comment:5>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list