- Timestamp:
- 08/31/2022 10:44:04 PM (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/rest-api/rest-site-health-controller.php
r49603 r54043 100 100 $this->assertSame( 'dotorg_communication', $response->get_data()['test'] ); 101 101 } 102 103 /** 104 * Tests Page Cache Rest endpoint registration. 105 * 106 * @ticket 56041 107 */ 108 public function test_page_cache_endpoint() { 109 $server = rest_get_server(); 110 $routes = $server->get_routes(); 111 112 $endpoint = '/wp-site-health/v1/tests/page-cache'; 113 $this->assertArrayHasKey( $endpoint, $routes ); 114 115 $route = $routes[ $endpoint ]; 116 $this->assertCount( 1, $route ); 117 118 $route = current( $route ); 119 $this->assertEquals( 120 array( WP_REST_Server::READABLE => true ), 121 $route['methods'] 122 ); 123 124 $this->assertEquals( 125 'test_page_cache', 126 $route['callback'][1] 127 ); 128 129 $this->assertIsCallable( $route['permission_callback'] ); 130 131 if ( current_user_can( 'view_site_health_checks' ) ) { 132 $this->assertTrue( call_user_func( $route['permission_callback'] ) ); 133 } else { 134 $this->assertFalse( call_user_func( $route['permission_callback'] ) ); 135 } 136 137 wp_set_current_user( self::factory()->user->create( array( 'role' => 'author' ) ) ); 138 $this->assertFalse( call_user_func( $route['permission_callback'] ) ); 139 140 $user = wp_set_current_user( self::factory()->user->create( array( 'role' => 'administrator' ) ) ); 141 if ( is_multisite() ) { 142 // Site health cap is only available for super admins in Multi sites. 143 grant_super_admin( $user->ID ); 144 } 145 $this->assertTrue( call_user_func( $route['permission_callback'] ) ); 146 } 102 147 }
Note: See TracChangeset
for help on using the changeset viewer.