mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2025-10-16 12:05:38 +00:00
Improvements include: - Upgrades the test fixture methods to the new snake_case methods. - Reorders the fixture methods for consistency. - Uses strict assertions of assertSame and assertNotSame. Follow-up to [51855-51856]. Props hellofromTonya. See #51147. git-svn-id: https://develop.svn.wordpress.org/trunk@51857 602fd350-edb4-49c9-b593-d223f7449a82
83 lines
2.0 KiB
PHP
83 lines
2.0 KiB
PHP
<?php
|
|
|
|
if ( is_multisite() ) :
|
|
|
|
/**
|
|
* Tests specific to `avoid_blog_page_permalink_collision()` in multisite.
|
|
*
|
|
* @group multisite
|
|
* @group only
|
|
*/
|
|
class Tests_Multisite_MS_Permalink_Collision extends WP_UnitTestCase {
|
|
protected $suppress = false;
|
|
protected static $site_id;
|
|
protected static $root_page;
|
|
protected static $child_page;
|
|
protected static $post_and_blog_path = 'permalink-collison';
|
|
|
|
/**
|
|
* Create a blog and the pages we need to test the collision.
|
|
*/
|
|
public static function wpSetUpBeforeClass( $factory ) {
|
|
self::$site_id = self::factory()->blog->create(
|
|
array(
|
|
'path' => '/' . self::$post_and_blog_path,
|
|
)
|
|
);
|
|
|
|
self::$root_page = self::factory()->post->create_and_get(
|
|
array(
|
|
'post_type' => 'page',
|
|
'post_title' => 'Bar',
|
|
'post_name' => self::$post_and_blog_path,
|
|
)
|
|
);
|
|
|
|
self::$child_page = self::factory()->post->create_and_get(
|
|
array(
|
|
'post_parent' => self::$root_page->ID,
|
|
'post_type' => 'page',
|
|
'post_title' => 'Bar',
|
|
'post_name' => self::$post_and_blog_path,
|
|
)
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Delete blog and pages we created.
|
|
*/
|
|
public static function wpTearDownAfterClass() {
|
|
wp_delete_site( self::$site_id );
|
|
|
|
wp_delete_post( self::$root_page->ID );
|
|
wp_delete_post( self::$child_page->ID );
|
|
}
|
|
|
|
public function set_up() {
|
|
global $wpdb;
|
|
parent::set_up();
|
|
$this->suppress = $wpdb->suppress_errors();
|
|
}
|
|
|
|
public function tear_down() {
|
|
global $wpdb;
|
|
$wpdb->suppress_errors( $this->suppress );
|
|
parent::tear_down();
|
|
}
|
|
|
|
public function test_avoid_blog_page_permalink_collision_renames_post_name() {
|
|
$this->assertNotSame( self::$post_and_blog_path, self::$root_page->post_name );
|
|
}
|
|
|
|
/**
|
|
* Ensure `avoid_blog_page_permalink_collision()` doesn't rename child pages post_name.
|
|
*
|
|
* @ticket 51147
|
|
*/
|
|
public function test_avoid_blog_page_permalink_collision_doesnt_rename_child_pages() {
|
|
$this->assertSame( self::$post_and_blog_path, self::$child_page->post_name );
|
|
}
|
|
}
|
|
|
|
endif;
|