wordpress-develop/tests/phpunit/tests/multisite/wpInstallDefaults.php
Sergey Biryukov 3546c694e9 Tests: Rename classes in phpunit/tests/multisite/ per the naming conventions.
https://make.wordpress.org/core/handbook/testing/automated-testing/writing-phpunit-tests/#naming-and-organization

Follow-up to [47780], [48911], [49327], [50291], [50292], [50342], [50452], [50453], [50456], [50967], [50968], [50969], [51491], [51492], [51493], [51623], [51639], [51646], [51650], [51651].

See #53363.

git-svn-id: https://develop.svn.wordpress.org/trunk@51860 602fd350-edb4-49c9-b593-d223f7449a82
2021-09-24 00:45:43 +00:00

85 lines
2.1 KiB
PHP

<?php
if ( is_multisite() ) :
/**
* Saving network settings without altering starter content ( first page, post, and comment ) shouldn't affect
* the way it is added to new sites.
*
* @group ms-site
* @group multisite
*/
class Tests_Multisite_wpInstallDefaults extends WP_UnitTestCase {
/**
* @ticket 40036
*/
public function test_option_should_not_be_empty_by_default() {
$blog_id = $this->factory->blog->create();
switch_to_blog( $blog_id );
$first_page = get_page_by_path( '/sample-page' );
$first_comment = get_comments();
restore_current_blog();
wp_delete_site( $blog_id );
$this->assertNotEmpty( $first_page->post_content );
$this->assertNotEmpty( $first_comment[0]->comment_content );
}
/**
* @ticket 40036
*/
public function test_empty_option_should_fall_back_to_default() {
/*
* Update first_page / first_comment options,
* just like what happens when the network settings page is saved
*/
update_site_option( 'first_page', '' );
update_site_option( 'first_comment', '' );
$blog_id = $this->factory->blog->create();
switch_to_blog( $blog_id );
$first_page = get_page_by_path( '/sample-page' );
$first_comment = get_comments();
restore_current_blog();
wp_delete_site( $blog_id );
$this->assertNotEmpty( $first_page->post_content );
$this->assertNotEmpty( $first_comment[0]->comment_content );
}
/**
* @ticket 40036
*/
public function test_non_default_option_values() {
/*
* Update first_page / first_comment options,
* just like what happens when the network settings page is saved
*/
update_site_option( 'first_page', 'Some page content' );
update_site_option( 'first_comment', 'Some comment content' );
$blog_id = $this->factory->blog->create();
switch_to_blog( $blog_id );
$first_page = get_page_by_path( '/sample-page' );
$first_comment = get_comments();
restore_current_blog();
wp_delete_site( $blog_id );
$this->assertSame( 'Some page content', $first_page->post_content );
$this->assertSame( 'Some comment content', $first_comment[0]->comment_content );
}
}
endif;