Changeset 56996 for trunk/tests/phpunit/tests/block-supports/duotone.php
- Timestamp:
- 10/24/2023 10:57:03 AM (20 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/block-supports/duotone.php
r56991 r56996 113 113 */ 114 114 public function test_css_declarations_are_generated_even_with_empty_block_content() { 115 $block 115 $block = array( 116 116 'blockName' => 'core/image', 117 117 'attrs' => array( 'style' => array( 'color' => array( 'duotone' => 'var:preset|duotone|blue-orange' ) ) ), 118 118 ); 119 $wp_block = new WP_Block( $block ); 119 $wp_block = new WP_Block( $block ); 120 121 /* 122 * Handling to access the static WP_Duotone::$block_css_declarations property. 123 * 124 * Why is an instance needed? 125 * WP_Duotone is a static class by design, meaning it only contains static properties and methods. 126 * In production, it should not be instantiated. However, as of PHP 8.3, ReflectionProperty::setValue() 127 * needs an object. 128 */ 129 $wp_duotone = new WP_Duotone(); 120 130 $block_css_declarations_property = new ReflectionProperty( 'WP_Duotone', 'block_css_declarations' ); 121 131 $block_css_declarations_property->setAccessible( true ); 122 $block_css_declarations_property->setValue( $wp_block, array() ); 132 $previous_value = $block_css_declarations_property->getValue(); 133 $block_css_declarations_property->setValue( $wp_duotone, array() ); 123 134 124 135 WP_Duotone::render_duotone_support( '', $block, $wp_block ); 125 136 $actual = $block_css_declarations_property->getValue(); 126 // Reset the property's visibility. 137 138 // Reset the property. 139 $block_css_declarations_property->setValue( $wp_duotone, $previous_value ); 127 140 $block_css_declarations_property->setAccessible( false ); 128 141
Note: See TracChangeset
for help on using the changeset viewer.