WordPress.org

Make WordPress Core

Ticket #35045: 35045-unit-test.diff

File 35045-unit-test.diff, 2.0 KB (added by webaware, 5 years ago)

Unit test

  • tests/phpunit/tests/media.php

     
    11331133                // Intermediate sized GIFs should not include the full size in the srcset.
    11341134                $this->assertFalse( strpos( wp_calculate_image_srcset( $size_array, $large_src, $image_meta ), $full_src ) );
    11351135        }
     1136
     1137        /**
     1138         * @ticket 35045
     1139         */
     1140        function test_wp_make_content_images_responsive_schemes() {
     1141                $image_meta = wp_get_attachment_metadata( self::$large_id );
     1142                $size_array = $this->_get_image_size_array_from_name( 'medium' );
     1143
     1144                $srcset = sprintf( 'srcset="%s"', wp_get_attachment_image_srcset( self::$large_id, $size_array, $image_meta ) );
     1145                $sizes  = sprintf( 'sizes="%s"', wp_get_attachment_image_sizes( self::$large_id, $size_array, $image_meta ) );
     1146
     1147                // Build HTML for the editor.
     1148                $img          = get_image_tag( self::$large_id, '', '', '', 'medium' );
     1149                $img_https    = str_replace( 'http://', 'https://', $img );
     1150                $img_relative = str_replace( 'http://', '//', $img );
     1151
     1152                // Manually add srcset and sizes to the markup from get_image_tag();
     1153                $respimg          = preg_replace( '|<img ([^>]+) />|', '<img $1 ' . $srcset . ' ' . $sizes . ' />', $img );
     1154                $respimg_https    = preg_replace( '|<img ([^>]+) />|', '<img $1 ' . $srcset . ' ' . $sizes . ' />', $img_https );
     1155                $respimg_relative = preg_replace( '|<img ([^>]+) />|', '<img $1 ' . $srcset . ' ' . $sizes . ' />', $img_relative );
     1156
     1157                $content = '
     1158                        <p>Image, http: protocol. Should have srcset and sizes.</p>
     1159                        %1$s
     1160
     1161                        <p>Image, http: protocol. Should have srcset and sizes.</p>
     1162                        %2$s
     1163
     1164                        <p>Image, protocol-relative. Should have srcset and sizes.</p>
     1165                        %3$s';
     1166
     1167                $unfiltered = sprintf( $content, $img, $img_https, $img_relative );
     1168                $expected   = sprintf( $content, $respimg, $respimg_https, $respimg_relative );
     1169                $actual     = wp_make_content_images_responsive( $unfiltered );
     1170
     1171                $this->assertSame( $expected, $actual );
     1172        }
    11361173}