Skip to content

Commit e1e1748

Browse files
Tests: Use an image on WordPress.org CDN in external HTTP tests.
Due to some changes on the WP.com side to compress the requested images on the fly, the exact image size in the response could be different between platforms. This commit aims to make the affected tests more reliable. Follow-up to [139/tests], [31258], [34568], [47142], [57903], [57904], [57924]. Merges [57931] to the 5.0 branch. Props peterwilsoncc, jorbin. See #60865. git-svn-id: https://develop.svn.wordpress.org/branches/5.0@58001 602fd350-edb4-49c9-b593-d223f7449a82
1 parent 76ef279 commit e1e1748

File tree

2 files changed

+52
-30
lines changed

2 files changed

+52
-30
lines changed

tests/phpunit/tests/http/functions.php

Lines changed: 49 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,12 @@ public function setUp() {
1414
parent::setUp();
1515
}
1616

17-
function test_head_request() {
18-
// this url give a direct 200 response
19-
$url = 'https://asdftestblog1.files.wordpress.com/2007/09/2007-06-30-dsc_4700-1.jpg';
17+
/**
18+
* @covers ::wp_remote_head
19+
*/
20+
public function test_head_request() {
21+
// This URL gives a direct 200 response.
22+
$url = 'https://s.w.org/screenshots/3.9/dashboard.png';
2023
$response = wp_remote_head( $url );
2124

2225
$this->skipTestOnTimeout( $response );
@@ -25,30 +28,41 @@ function test_head_request() {
2528

2629
$this->assertInternalType( 'array', $response );
2730

28-
$this->assertEquals( 'image/jpeg', $headers['content-type'] );
29-
$this->assertEquals( '40148', $headers['content-length'] );
30-
$this->assertEquals( '200', wp_remote_retrieve_response_code( $response ) );
31+
$this->assertSame( 'image/png', $headers['Content-Type'] );
32+
$this->assertSame( '153204', $headers['Content-Length'] );
33+
$this->assertSame( 200, wp_remote_retrieve_response_code( $response ) );
3134
}
3235

33-
function test_head_redirect() {
34-
// this url will 301 redirect
35-
$url = 'https://asdftestblog1.wordpress.com/files/2007/09/2007-06-30-dsc_4700-1.jpg';
36+
/**
37+
* @covers ::wp_remote_head
38+
*/
39+
public function test_head_redirect() {
40+
// This URL will 301 redirect.
41+
$url = 'https://wp.org/screenshots/3.9/dashboard.png';
3642
$response = wp_remote_head( $url );
3743

3844
$this->skipTestOnTimeout( $response );
3945
$this->assertEquals( '301', wp_remote_retrieve_response_code( $response ) );
4046
}
4147

42-
function test_head_404() {
43-
$url = 'https://asdftestblog1.files.wordpress.com/2007/09/awefasdfawef.jpg';
48+
/**
49+
* @covers ::wp_remote_head
50+
*/
51+
public function test_head_404() {
52+
$url = 'https://wordpress.org/screenshots/3.9/awefasdfawef.jpg';
4453
$response = wp_remote_head( $url );
4554

4655
$this->skipTestOnTimeout( $response );
4756
$this->assertEquals( '404', wp_remote_retrieve_response_code( $response ) );
4857
}
4958

50-
function test_get_request() {
51-
$url = 'https://asdftestblog1.files.wordpress.com/2007/09/2007-06-30-dsc_4700-1.jpg';
59+
/**
60+
* @covers ::wp_remote_get
61+
* @covers ::wp_remote_retrieve_headers
62+
* @covers ::wp_remote_retrieve_response_code
63+
*/
64+
public function test_get_request() {
65+
$url = 'https://s.w.org/screenshots/3.9/dashboard.png';
5266

5367
$response = wp_remote_get( $url );
5468

@@ -58,31 +72,39 @@ function test_get_request() {
5872

5973
$this->assertInternalType( 'array', $response );
6074

61-
// should return the same headers as a head request
62-
$this->assertEquals( 'image/jpeg', $headers['content-type'] );
63-
$this->assertEquals( '40148', $headers['content-length'] );
64-
$this->assertEquals( '200', wp_remote_retrieve_response_code( $response ) );
75+
// Should return the same headers as a HEAD request.
76+
$this->assertSame( 'image/png', $headers['Content-Type'] );
77+
$this->assertSame( '153204', $headers['Content-Length'] );
78+
$this->assertSame( 200, wp_remote_retrieve_response_code( $response ) );
6579
}
6680

67-
function test_get_redirect() {
68-
// this will redirect to asdftestblog1.files.wordpress.com
69-
$url = 'https://asdftestblog1.wordpress.com/files/2007/09/2007-06-30-dsc_4700-1.jpg';
81+
/**
82+
* @covers ::wp_remote_get
83+
* @covers ::wp_remote_retrieve_headers
84+
* @covers ::wp_remote_retrieve_response_code
85+
*/
86+
public function test_get_redirect() {
87+
// This will redirect to wordpress.org.
88+
$url = 'https://wp.org/screenshots/3.9/dashboard.png';
7089

7190
$response = wp_remote_get( $url );
7291

7392
$this->skipTestOnTimeout( $response );
7493

7594
$headers = wp_remote_retrieve_headers( $response );
7695

77-
// should return the same headers as a head request
78-
$this->assertEquals( 'image/jpeg', $headers['content-type'] );
79-
$this->assertEquals( '40148', $headers['content-length'] );
80-
$this->assertEquals( '200', wp_remote_retrieve_response_code( $response ) );
96+
// Should return the same headers as a HEAD request.
97+
$this->assertSame( 'image/png', $headers['Content-Type'] );
98+
$this->assertSame( '153204', $headers['Content-Length'] );
99+
$this->assertSame( 200, wp_remote_retrieve_response_code( $response ) );
81100
}
82101

83-
function test_get_redirect_limit_exceeded() {
84-
// this will redirect to asdftestblog1.files.wordpress.com
85-
$url = 'https://asdftestblog1.wordpress.com/files/2007/09/2007-06-30-dsc_4700-1.jpg';
102+
/**
103+
* @covers ::wp_remote_get
104+
*/
105+
public function test_get_redirect_limit_exceeded() {
106+
// This will redirect to wordpress.org.
107+
$url = 'https://wp.org/screenshots/3.9/dashboard.png';
86108

87109
// pretend we've already redirected 5 times
88110
$response = wp_remote_get( $url, array( 'redirection' => -1 ) );

tests/phpunit/tests/image/functions.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -311,9 +311,9 @@ public function test_wp_crop_image_url() {
311311
$this->markTestSkipped( 'Tests_Image_Functions::test_wp_crop_image_url() requires openssl.' );
312312
}
313313

314-
$file = wp_crop_image( 'https://asdftestblog1.files.wordpress.com/2008/04/canola.jpg',
314+
$file = wp_crop_image( 'https://s.w.org/screenshots/3.9/dashboard.png',
315315
0, 0, 100, 100, 100, 100, false,
316-
DIR_TESTDATA . '/images/' . __FUNCTION__ . '.jpg' );
316+
DIR_TESTDATA . '/images/' . __FUNCTION__ . '.png' );
317317
$this->assertNotInstanceOf( 'WP_Error', $file );
318318
$this->assertFileExists( $file );
319319
$image = wp_get_image_editor( $file );
@@ -335,7 +335,7 @@ public function test_wp_crop_image_url_not_exist() {
335335
$this->markTestSkipped( 'Tests_Image_Functions::test_wp_crop_image_url_not_exist() requires openssl.' );
336336
}
337337

338-
$file = wp_crop_image( 'https://asdftestblog1.files.wordpress.com/2008/04/canoladoesnotexist.jpg',
338+
$file = wp_crop_image( 'https://wordpress.org/screenshots/3.9/canoladoesnotexist.jpg',
339339
0, 0, 100, 100, 100, 100 );
340340
$this->assertInstanceOf( 'WP_Error', $file );
341341
}

0 commit comments

Comments
 (0)