| | 1 | <?php |
| | 2 | |
| | 3 | if ( is_multisite() ) : |
| | 4 | /** |
| | 5 | * Test get_site() wrapper of WP_Site in multisite. |
| | 6 | * |
| | 7 | * @group ms-site |
| | 8 | * @group multisite |
| | 9 | */ |
| | 10 | class Tests_Multisite_Get_Site extends WP_UnitTestCase { |
| | 11 | protected static $site_ids; |
| | 12 | |
| | 13 | public static function wpSetUpBeforeClass( $factory ) { |
| | 14 | self::$site_ids = array( |
| | 15 | 'wordpress.org/' => array( 'domain' => 'wordpress.org', 'path' => '/' ), |
| | 16 | 'wordpress.org/foo/' => array( 'domain' => 'wordpress.org', 'path' => '/foo/' ), |
| | 17 | 'wordpress.org/foo/bar/' => array( 'domain' => 'wordpress.org', 'path' => '/foo/bar/' ), |
| | 18 | ); |
| | 19 | |
| | 20 | foreach ( self::$site_ids as &$id ) { |
| | 21 | $id = $factory->blog->create( $id ); |
| | 22 | } |
| | 23 | unset( $id ); |
| | 24 | } |
| | 25 | |
| | 26 | public static function wpTearDownAfterClass() { |
| | 27 | foreach( self::$site_ids as $id ) { |
| | 28 | wpmu_delete_blog( $id, true ); |
| | 29 | } |
| | 30 | |
| | 31 | wp_update_network_site_counts(); |
| | 32 | } |
| | 33 | |
| | 34 | public function test_get_site_in_switched_state_returns_switched_site() { |
| | 35 | switch_to_blog( self::$site_ids[ 'wordpress.org/foo/' ] ); |
| | 36 | $site = get_site(); |
| | 37 | restore_current_blog(); |
| | 38 | |
| | 39 | $this->assertEquals( self::$site_ids[ 'wordpress.org/foo/'], $site->id ); |
| | 40 | } |
| | 41 | |
| | 42 | } |
| | 43 | |
| | 44 | endif; |