mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-08-16 23:00:21 +00:00
Sharing these fixtures results in a speed improvement of almost one minute per run of the test suite. My hope is that future WordPress developers will spend this extra minute with their loved ones, for life on this earth is short, my friends, and the moments you spend watching WP generate test data can never again be reclaimed from the grizzled clutches of Time, and none of us are really getting younger, I mean, geez, have you looked in the mirror lately, Gandalf? See #30017. git-svn-id: https://develop.svn.wordpress.org/trunk@30277 602fd350-edb4-49c9-b593-d223f7449a82
58 lines
1.7 KiB
PHP
58 lines
1.7 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @group canonical
|
|
* @group rewrite
|
|
* @group query
|
|
*/
|
|
class Tests_Canonical_PageOnFront extends WP_Canonical_UnitTestCase {
|
|
public static function setUpBeforeClass() {
|
|
self::generate_shared_fixtures();
|
|
}
|
|
|
|
public static function tearDownAfterClass() {
|
|
self::delete_shared_fixtures();
|
|
}
|
|
|
|
function setUp() {
|
|
parent::setUp();
|
|
global $wp_rewrite;
|
|
update_option( 'show_on_front', 'page' );
|
|
update_option( 'page_for_posts', $this->factory->post->create( array( 'post_title' => 'blog-page', 'post_type' => 'page' ) ) );
|
|
update_option( 'page_on_front', $this->factory->post->create( array( 'post_title' => 'front-page', 'post_type' => 'page' ) ) );
|
|
$wp_rewrite->init();
|
|
$wp_rewrite->flush_rules();
|
|
}
|
|
|
|
function tearDown() {
|
|
global $wp_rewrite;
|
|
parent::tearDown();
|
|
$wp_rewrite->init();
|
|
}
|
|
|
|
/**
|
|
* @dataProvider data
|
|
*/
|
|
function test( $test_url, $expected, $ticket = 0, $expected_doing_it_wrong = array() ) {
|
|
$this->assertCanonical( $test_url, $expected, $ticket, $expected_doing_it_wrong );
|
|
}
|
|
|
|
function data() {
|
|
/* Format:
|
|
* [0]: $test_url,
|
|
* [1]: expected results: Any of the following can be used
|
|
* array( 'url': expected redirection location, 'qv': expected query vars to be set via the rewrite AND $_GET );
|
|
* array( expected query vars to be set, same as 'qv' above )
|
|
* (string) expected redirect location
|
|
* [3]: (optional) The ticket the test refers to, Can be skipped if unknown.
|
|
*/
|
|
return array(
|
|
// Check against an odd redirect
|
|
array( '/page/2/', '/page/2/', 20385 ),
|
|
// The page designated as the front page should redirect to the front of the site
|
|
array( '/front-page/', '/' ),
|
|
array( '/blog-page/?paged=2', '/blog-page/page/2/' ),
|
|
);
|
|
}
|
|
}
|