Index: tests/phpunit/tests/media/getAttachmentTaxonomies.php
===================================================================
--- tests/phpunit/tests/media/getAttachmentTaxonomies.php	(revision 49699)
+++ tests/phpunit/tests/media/getAttachmentTaxonomies.php	(working copy)
@@ -5,6 +5,9 @@
  * @group taxonomy
  */
 class Tests_Media_GetAttachmentTaxonomies extends WP_UnitTestCase {
+	/**
+	 * @covers ::get_attachment_taxonomies
+	 */
 	public function test_should_return_attachment_taxonomy() {
 		register_taxonomy( 'wptests_tax', 'attachment' );
 
@@ -24,6 +27,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers ::get_attachment_taxonomies
+	 */
 	public function test_should_return_taxonomy_registered_for_specific_attachment_type() {
 		register_taxonomy( 'wptests_tax', 'attachment:image' );
 
@@ -43,6 +49,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers ::get_attachment_taxonomies
+	 */
 	public function test_should_return_taxonomy_registered_for_specific_attachment_mimetype() {
 		register_taxonomy( 'wptests_tax', 'attachment:image/jpeg' );
 
@@ -62,6 +71,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers ::get_attachment_taxonomies
+	 */
 	public function test_should_return_taxonomy_registered_for_specific_file_extension() {
 		register_taxonomy( 'wptests_tax', 'attachment:jpg' );
 
@@ -81,6 +93,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers ::get_attachment_taxonomies
+	 */
 	public function test_should_not_return_duplicate_taxonomies() {
 		register_taxonomy( 'wptests_tax', array( 'attachment', 'attachment:image/jpeg' ) );
 
@@ -102,6 +117,8 @@
 
 	/**
 	 * @ticket 37368
+	 *
+	 * @covers ::get_attachment_taxonomies
 	 */
 	public function test_should_respect_output_objects() {
 		register_taxonomy( 'wptests_tax2', 'attachment:image' );
@@ -126,6 +143,8 @@
 
 	/**
 	 * @ticket 37368
+	 *
+	 * @covers ::get_attachment_taxonomies
 	 */
 	public function test_should_return_unique_taxonomies_for_output_objects() {
 		register_taxonomy( 'wptests_tax2', array( 'attachment:image', 'attachment:image/jpeg' ) );
Index: tests/phpunit/tests/menu/walker-nav-menu-edit.php
===================================================================
--- tests/phpunit/tests/menu/walker-nav-menu-edit.php	(revision 49699)
+++ tests/phpunit/tests/menu/walker-nav-menu-edit.php	(working copy)
@@ -30,6 +30,8 @@
 
 	/**
 	 * @ticket 36729
+	 *
+	 * @covers Walker_Nav_Menu::start_el
 	 */
 	function test_original_title_prefix_should_not_be_shown_if_empty() {
 		$expected = '';
Index: tests/phpunit/tests/menu/walker-nav-menu.php
===================================================================
--- tests/phpunit/tests/menu/walker-nav-menu.php	(revision 49699)
+++ tests/phpunit/tests/menu/walker-nav-menu.php	(working copy)
@@ -40,6 +40,8 @@
 	 * Tests when an item's target is _blank, that rel="noopener" is added.
 	 *
 	 * @ticket 43290
+	 *
+	 * @covers Walker_Nav_Menu::start_el
 	 */
 	public function test_noopener_no_referrer_for_target_blank() {
 		$expected   = '';
@@ -71,6 +73,8 @@
 	 * @ticket 47720
 	 *
 	 * @dataProvider data_start_el_with_empty_attributes
+	 *
+	 * @covers Walker_Nav_Menu::start_el
 	 */
 	public function test_start_el_with_empty_attributes( $value, $expected ) {
 		$output     = '';
Index: tests/phpunit/tests/menu/wpAjaxMenuQuickSearch.php
===================================================================
--- tests/phpunit/tests/menu/wpAjaxMenuQuickSearch.php	(revision 49699)
+++ tests/phpunit/tests/menu/wpAjaxMenuQuickSearch.php	(working copy)
@@ -34,6 +34,8 @@
 	 * Test search returns results for pages.
 	 *
 	 * @ticket 27042
+	 *
+	 * @covers ::_wp_ajax_menu_quick_search
 	 */
 	public function test_search_returns_results_for_pages() {
 		require_once ABSPATH . 'wp-admin/includes/nav-menu.php';
@@ -69,6 +71,8 @@
 	 * Test that search only returns results for published posts.
 	 *
 	 * @ticket 33742
+	 *
+	 * @covers ::_wp_ajax_menu_quick_search
 	 */
 	public function test_search_returns_results_for_published_posts() {
 		require_once ABSPATH . 'wp-admin/includes/nav-menu.php';
@@ -125,6 +129,8 @@
 	 * Test that search displays terms that are not assigned to any posts.
 	 *
 	 * @ticket 45298
+	 *
+	 * @covers ::_wp_ajax_menu_quick_search
 	 */
 	public function test_search_should_return_unassigned_term_items() {
 		register_taxonomy( 'wptests_tax', 'post' );
Index: tests/phpunit/tests/menu/wpExpandNavMenuPostData.php
===================================================================
--- tests/phpunit/tests/menu/wpExpandNavMenuPostData.php	(revision 49699)
+++ tests/phpunit/tests/menu/wpExpandNavMenuPostData.php	(working copy)
@@ -5,6 +5,9 @@
  * @ticket 36590
  */
 class Tests_Menu_WpExpandNavMenuPostData extends WP_UnitTestCase {
+	/**
+	 * @covers ::_wp_expand_nav_menu_post_data
+	 */
 	public function test_unnested_data_should_expand() {
 		require_once ABSPATH . 'wp-admin/includes/nav-menu.php';
 
@@ -28,6 +31,9 @@
 		$this->assertSame( $expected, $_POST );
 	}
 
+	/**
+	 * @covers ::_wp_expand_nav_menu_post_data
+	 */
 	public function test_multidimensional_nested_array_should_expand() {
 		require_once ABSPATH . 'wp-admin/includes/nav-menu.php';
 
@@ -58,6 +64,9 @@
 		$this->assertSame( $expected, $_POST );
 	}
 
+	/**
+	 * @covers ::_wp_expand_nav_menu_post_data
+	 */
 	public function test_multidimensional_nested_array_should_expand_and_merge() {
 		require_once ABSPATH . 'wp-admin/includes/nav-menu.php';
 
Index: tests/phpunit/tests/meta/deleteMetadata.php
===================================================================
--- tests/phpunit/tests/meta/deleteMetadata.php	(revision 49699)
+++ tests/phpunit/tests/meta/deleteMetadata.php	(working copy)
@@ -4,6 +4,9 @@
  * @group meta
  */
 class Tests_Meta_DeleteMetadata extends WP_UnitTestCase {
+	/**
+	 * @covers ::delete_metadata
+	 */
 	public function test_all_metas_for_key_should_be_deleted_when_no_meta_value_is_provided() {
 		$vals = array( '0', '1', '2' );
 		foreach ( $vals as $val ) {
@@ -17,6 +20,9 @@
 		$this->assertSameSets( array(), $m );
 	}
 
+	/**
+	 * @covers ::delete_metadata
+	 */
 	public function test_with_meta_value() {
 		$vals = array( '0', '1', '2' );
 		foreach ( $vals as $val ) {
@@ -34,6 +40,8 @@
 
 	/**
 	 * @ticket 32224
+	 *
+	 * @covers ::delete_metadata
 	 */
 	public function test_with_falsey_meta_value_should_not_delete_all_meta() {
 		$vals = array( '0', '1', '2' );
@@ -54,6 +62,8 @@
 	 * @ticket 32224
 	 *
 	 * This is a backwards compatiblity quirk.
+	 *
+	 * @covers ::delete_metadata
 	 */
 	public function test_meta_value_should_be_ignored_when_empty_string() {
 		$vals = array( '0', '1', '2', '' );
@@ -70,6 +80,8 @@
 
 	/**
 	 * @ticket 32224
+	 *
+	 * @covers ::delete_metadata
 	 */
 	public function test_meta_value_should_be_ignored_when_null() {
 		$vals = array( '0', '1', '2', '' );
@@ -86,6 +98,8 @@
 
 	/**
 	 * @ticket 32224
+	 *
+	 * @covers ::delete_metadata
 	 */
 	public function test_meta_value_should_be_ignored_when_false() {
 		$vals = array( '0', '1', '2', '' );
@@ -102,6 +116,8 @@
 
 	/**
 	 * @ticket 35797
+	 *
+	 * @covers ::delete_metadata
 	 */
 	public function test_delete_all_should_only_invalidate_cache_for_objects_matching_meta_value() {
 		$p1 = 1234;
@@ -125,6 +141,8 @@
 
 	/**
 	 * @ticket 35797
+	 *
+	 * @covers ::delete_metadata
 	 */
 	public function test_delete_all_should_invalidate_cache_for_all_objects_with_meta_key_when_meta_value_is_not_provided() {
 		$p1 = 1234;
@@ -147,6 +165,8 @@
 
 	/**
 	 * @ticket 43561
+	 *
+	 * @covers ::delete_metadata_by_mid
 	 */
 	public function test_object_id_is_int_inside_delete_post_meta() {
 		$post_id = self::factory()->post->create();
Index: tests/phpunit/tests/meta/isProtectedMeta.php
===================================================================
--- tests/phpunit/tests/meta/isProtectedMeta.php	(revision 49699)
+++ tests/phpunit/tests/meta/isProtectedMeta.php	(working copy)
@@ -8,6 +8,8 @@
 
 	/**
 	 * @dataProvider protected_data
+	 *
+	 * @covers ::is_protected_meta
 	 */
 	public function test_protected( $key ) {
 		$this->assertTrue( is_protected_meta( $key ) );
@@ -30,6 +32,8 @@
 
 	/**
 	 * @dataProvider unprotected_data
+	 *
+	 * @covers ::is_protected_meta
 	 */
 	public function test_unprotected( $key ) {
 		$this->assertFalse( is_protected_meta( $key ) );
Index: tests/phpunit/tests/meta/query.php
===================================================================
--- tests/phpunit/tests/meta/query.php	(revision 49699)
+++ tests/phpunit/tests/meta/query.php	(working copy)
@@ -8,16 +8,25 @@
  */
 class Tests_Meta_Query extends WP_UnitTestCase {
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_empty_meta_query_param() {
 		$query = new WP_Meta_Query();
 		$this->assertNull( $query->relation );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_default_relation() {
 		$query = new WP_Meta_Query( array( array( 'key' => 'abc' ) ) );
 		$this->assertSame( 'AND', $query->relation );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_set_relation() {
 
 		$query = new WP_Meta_Query(
@@ -41,6 +50,8 @@
 
 	/**
 	 * Non-arrays should not be added to the queries array.
+	 *
+	 * @covers WP_Meta_Query::__construct
 	 */
 	public function test_invalid_query_clauses() {
 		$query = new WP_Meta_Query(
@@ -59,6 +70,8 @@
 	 * Test all key only meta queries use the same INNER JOIN when using relation=OR
 	 *
 	 * @ticket 19729
+	 *
+	 * @covers WP_Meta_Query::get_sql
 	 */
 	public function test_single_inner_join_for_keys_only() {
 
@@ -97,6 +110,8 @@
 
 	/**
 	 * WP_Query-style query must be at index 0 for order_by=meta_value to work.
+	 *
+	 * @covers WP_Meta_Query::parse_query_vars
 	 */
 	public function test_parse_query_vars_simple_query_index_0() {
 		$qv = array(
@@ -135,6 +150,8 @@
 
 	/**
 	 * When no meta_value is provided, no 'value' should be set in the parsed queries.
+	 *
+	 * @covers WP_Meta_Query::parse_query_vars
 	 */
 	public function test_parse_query_vars_with_no_meta_value() {
 		$qv = array(
@@ -151,6 +168,8 @@
 
 	/**
 	 * WP_Query sets meta_value to '' by default. It should be removed by parse_query_vars().
+	 *
+	 * @covers WP_Meta_Query::parse_query_vars
 	 */
 	public function test_parse_query_vars_with_default_meta_compare() {
 		$qv = array(
@@ -169,6 +188,8 @@
 	/**
 	 * Test the conversion between "WP_Query" style meta args (meta_value=x&meta_key=y)
 	 * to a meta query array.
+	 *
+	 * @covers WP_Meta_Query::parse_query_vars
 	 */
 	public function test_parse_query_vars() {
 
@@ -223,6 +244,8 @@
 
 	/**
 	 * @ticket 23033
+	 *
+	 * @covers WP_Meta_Query::get_cast_for_type
 	 */
 	public function test_get_cast_for_type() {
 		$query = new WP_Meta_Query();
@@ -255,6 +278,9 @@
 		$this->assertSame( 'CHAR', $query->get_cast_for_type( 'ANYTHING ELSE' ) );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::sanitize_query
+	 */
 	public function test_sanitize_query_single_query() {
 		$expected = array(
 			array(
@@ -277,6 +303,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::sanitize_query
+	 */
 	public function test_sanitize_query_multiple_first_order_queries_relation_default() {
 		$expected = array(
 			array(
@@ -307,6 +336,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::sanitize_query
+	 */
 	public function test_sanitize_query_multiple_first_order_queries_relation_or() {
 		$expected = array(
 			array(
@@ -338,6 +370,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::sanitize_query
+	 */
 	public function test_sanitize_query_multiple_first_order_queries_relation_or_lowercase() {
 		$expected = array(
 			array(
@@ -369,6 +404,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::sanitize_query
+	 */
 	public function test_sanitize_query_multiple_first_order_queries_invalid_relation() {
 		$expected = array(
 			array(
@@ -400,6 +438,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_sanitize_query_single_query_which_is_a_nested_query() {
 		$expected = array(
 			array(
@@ -435,6 +476,9 @@
 		$this->assertSame( $expected, $found );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::sanitize_query
+	 */
 	public function test_sanitize_query_multiple_nested_queries() {
 		$expected = array(
 			array(
@@ -494,6 +538,8 @@
 
 	/**
 	 * Invalid $type will fail to get a table from _get_meta_table()
+	 *
+	 * @covers WP_Meta_Query::__construct
 	 */
 	public function test_get_sql_invalid_type() {
 		$query = new WP_Meta_Query();
@@ -502,6 +548,8 @@
 
 	/**
 	 * @ticket 22096
+	 *
+	 * @covers WP_Meta_Query::__construct
 	 */
 	public function test_empty_value_sql() {
 		global $wpdb;
@@ -533,6 +581,8 @@
 
 	/**
 	 * @ticket 22967
+	 *
+	 * @covers WP_Meta_Query::__construct
 	 */
 	public function test_null_value_sql() {
 		global $wpdb;
@@ -554,6 +604,8 @@
 	/**
 	 * "key only queries" are queries that don't need to match a value, so
 	 * they can be grouped together into a single clause without JOINs
+	 *
+	 * @covers WP_Meta_Query::__construct
 	 */
 	public function test_get_sql_key_only_queries() {
 		global $wpdb;
@@ -628,6 +680,8 @@
 
 	/**
 	 * Key-only and regular queries should have the key trimmed
+	 *
+	 * @covers WP_Meta_Query::__construct
 	 */
 	public function test_get_sql_trim_key() {
 		global $wpdb;
@@ -650,6 +704,9 @@
 		$this->assertSame( 1, substr_count( $sql['where'], "meta_key = 'bar'" ) );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_convert_null_value_to_empty_string() {
 		global $wpdb;
 
@@ -667,6 +724,9 @@
 		$this->assertSame( 1, substr_count( $sql['where'], "$wpdb->postmeta.meta_value = ''" ) );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_get_sql_convert_lowercase_compare_to_uppercase() {
 		global $wpdb;
 
@@ -685,6 +745,9 @@
 		$this->assertSame( 1, substr_count( $sql['where'], 'REGEXP' ) );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_get_sql_empty_meta_compare_with_array_value() {
 		global $wpdb;
 
@@ -702,6 +765,9 @@
 		$this->assertSame( 1, substr_count( $sql['where'], "$wpdb->postmeta.meta_value IN" ) );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_get_sql_empty_meta_compare_with_non_array_value() {
 		global $wpdb;
 
@@ -741,6 +807,8 @@
 	 * Verifies only that meta_type_key is passed. See query/metaQuery.php for more complete tests.
 	 *
 	 * @ticket 43446
+	 *
+	 * @covers WP_Query::__construct
 	 */
 	public function test_meta_type_key_should_be_passed_to_meta_query() {
 		$posts = self::factory()->post->create_many( 3 );
@@ -774,6 +842,8 @@
 
 	/**
 	 * This is the clause that ensures that empty arrays are not valid queries.
+	 *
+	 * @covers WP_Meta_Query::get_sql
 	 */
 	public function test_get_sql_null_value_and_empty_key_should_not_have_table_join() {
 		global $wpdb;
@@ -794,6 +864,9 @@
 		$this->assertSame( 0, substr_count( $sql['join'], 'AS mt' ) );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_get_sql_compare_array_comma_separated_values() {
 		global $wpdb;
 
@@ -843,6 +916,9 @@
 		$this->assertSame( 1, substr_count( $sql['where'], "('bar','baz','barry')" ) );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_get_sql_compare_array() {
 		global $wpdb;
 
@@ -863,6 +939,8 @@
 
 	/**
 	 * Non-array values are trimmed. @todo Why?
+	 *
+	 * @covers WP_Meta_Query::__construct
 	 */
 	public function test_get_sql_trim_string_value() {
 		global $wpdb;
@@ -881,6 +959,9 @@
 		$this->assertSame( 1, substr_count( $sql['where'], "$wpdb->postmeta.meta_value = 'bar'" ) );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_not_exists() {
 		global $wpdb;
 
@@ -904,6 +985,9 @@
 		$this->assertContains( "{$wpdb->postmeta}.post_id IS NULL", $sql['where'] );
 	}
 
+	/**
+	 * @covers WP_Meta_Query::__construct
+	 */
 	public function test_empty_compare() {
 		global $wpdb;
 
@@ -931,6 +1015,8 @@
 
 	/**
 	 * @ticket 32592
+	 *
+	 * @covers WP_Meta_Query::has_or_relation
 	 */
 	public function test_has_or_relation_should_return_false() {
 		$q = new WP_Meta_Query(
@@ -959,6 +1045,8 @@
 
 	/**
 	 * @ticket 32592
+	 *
+	 * @covers WP_Meta_Query::has_or_relation
 	 */
 	public function test_has_or_relation_should_return_true_for_top_level_or() {
 		$q = new WP_Meta_Query(
@@ -987,6 +1075,8 @@
 
 	/**
 	 * @ticket 32592
+	 *
+	 * @covers WP_Meta_Query::has_or_relation
 	 */
 	public function test_has_or_relation_should_return_true_for_nested_or() {
 		$q = new WP_Meta_Query(
Index: tests/phpunit/tests/meta/registerMeta.php
===================================================================
--- tests/phpunit/tests/meta/registerMeta.php	(revision 49699)
+++ tests/phpunit/tests/meta/registerMeta.php	(working copy)
@@ -39,6 +39,9 @@
 		return $allowed;
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_back_compat_with_auth_callback_and_no_sanitize_callback_has_old_style_auth_filter() {
 		register_meta( 'post', 'flight_number', null, array( $this, '_old_auth_meta_cb' ) );
 		$has_filter = has_filter( 'auth_post_meta_flight_number', array( $this, '_old_auth_meta_cb' ) );
@@ -48,6 +51,9 @@
 		$this->assertSame( 10, $has_filter );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_back_compat_with_sanitize_callback_and_no_auth_callback_has_old_style_sanitize_filter() {
 		register_meta( 'post', 'flight_number', array( $this, '_old_sanitize_meta_cb' ) );
 		$has_filter = has_filter( 'sanitize_post_meta_flight_number', array( $this, '_old_sanitize_meta_cb' ) );
@@ -56,6 +62,9 @@
 		$this->assertSame( 10, $has_filter );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_back_compat_with_auth_and_sanitize_callback_has_old_style_filters() {
 		register_meta( 'post', 'flight_number', array( $this, '_old_sanitize_meta_cb' ), array( $this, '_old_auth_meta_cb' ) );
 		$has_filters             = array();
@@ -73,6 +82,9 @@
 		);
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_with_post_object_type_returns_true() {
 		$result = register_meta( 'post', 'flight_number', array() );
 		unregister_meta_key( 'post', 'flight_number' );
@@ -80,6 +92,9 @@
 		$this->assertTrue( $result );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_with_post_object_type_populates_wp_meta_keys() {
 		global $wp_meta_keys;
 
@@ -105,6 +120,9 @@
 		$this->assertSame( $expected, $actual );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_with_term_object_type_populates_wp_meta_keys() {
 		global $wp_meta_keys;
 		register_meta( 'term', 'category_icon', array() );
@@ -129,6 +147,9 @@
 		$this->assertSame( $expected, $actual );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_with_deprecated_sanitize_callback_does_not_populate_wp_meta_keys() {
 		global $wp_meta_keys;
 
@@ -140,6 +161,9 @@
 		$this->assertSame( array(), $actual );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_with_deprecated_sanitize_callback_param_returns_false() {
 		$actual = register_meta( 'post', 'flight_number', array( $this, '_old_sanitize_meta_cb' ) );
 
@@ -149,6 +173,9 @@
 		$this->assertFalse( $actual );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_with_deprecated_sanitize_callback_parameter_passes_through_filter() {
 		register_meta( 'post', 'old_sanitized_key', array( $this, '_old_sanitize_meta_cb' ) );
 		$meta = sanitize_meta( 'old_sanitized_key', 'unsanitized', 'post', 'post' );
@@ -159,6 +186,9 @@
 		$this->assertSame( 'old_sanitized_key old sanitized', $meta );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_with_current_sanitize_callback_populates_wp_meta_keys() {
 		global $wp_meta_keys;
 		register_meta( 'post', 'flight_number', array( 'sanitize_callback' => array( $this, '_new_sanitize_meta_cb' ) ) );
@@ -182,6 +212,9 @@
 		$this->assertSame( $actual, $expected );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_with_current_sanitize_callback_returns_true() {
 		$result = register_meta( 'post', 'flight_number', array( 'sanitize_callback' => array( $this, '_new_sanitize_meta_cb' ) ) );
 		unregister_meta_key( 'post', 'flight_number' );
@@ -189,6 +222,9 @@
 		$this->assertTrue( $result );
 	}
 
+	/**
+	 * @covers ::register_meta
+	 */
 	public function test_register_meta_with_new_sanitize_callback_parameter() {
 		register_meta( 'post', 'new_sanitized_key', array( 'sanitize_callback' => array( $this, '_new_sanitize_meta_cb' ) ) );
 		$meta = sanitize_meta( 'new_sanitized_key', 'unsanitized', 'post' );
@@ -198,6 +234,9 @@
 		$this->assertSame( 'new_sanitized_key new sanitized', $meta );
 	}
 
+	/**
+	 * @covers ::unregister_meta_key
+	 */
 	public function test_register_meta_unregistered_meta_key_removes_sanitize_filter() {
 		register_meta( 'post', 'new_sanitized_key', array( 'sanitize_callback' => array( $this, '_new_sanitize_meta_cb' ) ) );
 		unregister_meta_key( 'post', 'new_sanitized_key' );
@@ -207,6 +246,9 @@
 		$this->assertFalse( $has_filter );
 	}
 
+	/**
+	 * @covers ::unregister_meta_key
+	 */
 	public function test_register_meta_unregistered_meta_key_removes_auth_filter() {
 		register_meta( 'post', 'new_auth_key', array( 'auth_callback' => array( $this, '_new_auth_meta_cb' ) ) );
 		unregister_meta_key( 'post', 'new_auth_key' );
@@ -216,6 +258,9 @@
 		$this->assertFalse( $has_filter );
 	}
 
+	/**
+	 * @covers ::unregister_meta_key
+	 */
 	public function test_unregister_meta_key_clears_key_from_wp_meta_keys() {
 		global $wp_meta_keys;
 		register_meta( 'post', 'registered_key', array() );
@@ -224,10 +269,16 @@
 		$this->assertSame( array(), $wp_meta_keys );
 	}
 
+	/**
+	 * @covers ::unregister_meta_key
+	 */
 	public function test_unregister_meta_key_with_invalid_key_returns_false() {
 		$this->assertFalse( unregister_meta_key( 'post', 'not_a_registered_key' ) );
 	}
 
+	/**
+	 * @covers ::get_registered_meta_keys
+	 */
 	public function test_get_registered_meta_keys() {
 		register_meta( 'post', 'registered_key1', array() );
 		register_meta( 'post', 'registered_key2', array() );
@@ -241,6 +292,9 @@
 		$this->assertArrayHasKey( 'registered_key2', $meta_keys );
 	}
 
+	/**
+	 * @covers ::get_registered_meta_keys
+	 */
 	public function test_get_registered_meta_keys_with_invalid_type_is_empty() {
 		register_meta( 'post', 'registered_key1', array() );
 		register_meta( 'post', 'registered_key2', array() );
@@ -253,6 +307,10 @@
 		$this->assertEmpty( $meta_keys );
 	}
 
+
+	/**
+	 * @covers ::get_registered_meta_keys
+	 */
 	public function test_get_registered_meta_keys_description_arg() {
 		register_meta( 'post', 'registered_key1', array( 'description' => 'I\'m just a field, take a good look at me' ) );
 
@@ -263,6 +321,9 @@
 		$this->assertSame( 'I\'m just a field, take a good look at me', $meta_keys['registered_key1']['description'] );
 	}
 
+	/**
+	 * @covers ::get_registered_meta_keys
+	 */
 	public function test_get_registered_meta_keys_invalid_arg() {
 		register_meta( 'post', 'registered_key1', array( 'invalid_arg' => 'invalid' ) );
 
@@ -273,6 +334,9 @@
 		$this->assertArrayNotHasKey( 'invalid_arg', $meta_keys['registered_key1'] );
 	}
 
+	/**
+	 * @covers ::get_registered_metadata
+	 */
 	public function test_get_registered_metadata() {
 		register_meta( 'post', 'flight_number', array() );
 		add_post_meta( self::$post_id, 'flight_number', 'Oceanic 815' );
@@ -284,6 +348,9 @@
 		$this->assertSame( 'Oceanic 815', $meta['flight_number'][0] );
 	}
 
+	/**
+	 * @covers ::get_registered_metadata
+	 */
 	public function test_get_registered_metadata_by_key() {
 		register_meta( 'post', 'flight_number', array() );
 		add_post_meta( self::$post_id, 'flight_number', 'Oceanic 815' );
@@ -295,6 +362,9 @@
 		$this->assertSame( 'Oceanic 815', $meta[0] );
 	}
 
+	/**
+	 * @covers ::get_registered_metadata
+	 */
 	public function test_get_registered_metadata_by_key_single() {
 		register_meta( 'post', 'flight_number', array( 'single' => true ) );
 		add_post_meta( self::$post_id, 'flight_number', 'Oceanic 815' );
@@ -306,6 +376,9 @@
 		$this->assertSame( 'Oceanic 815', $meta );
 	}
 
+	/**
+	 * @covers ::get_registered_metadata
+	 */
 	public function test_get_registered_metadata_by_invalid_key() {
 		register_meta( 'post', 'flight_number', array() );
 		add_post_meta( self::$post_id, 'flight_number', 'Oceanic 815' );
@@ -317,6 +390,9 @@
 		$this->assertFalse( $meta );
 	}
 
+	/**
+	 * @covers ::get_registered_metadata
+	 */
 	public function test_get_registered_metadata_invalid_object_type_returns_empty_array() {
 		$meta = get_registered_metadata( 'invalid-type', self::$post_id );
 
@@ -326,6 +402,8 @@
 	/**
 	 * @ticket 38323
 	 * @dataProvider data_get_types_and_subtypes
+	 *
+	 * @covers ::register_meta
 	 */
 	public function test_register_meta_with_subtype_populates_wp_meta_keys( $type, $subtype ) {
 		global $wp_meta_keys;
@@ -358,6 +436,8 @@
 	/**
 	 * @ticket 38323
 	 * @dataProvider data_get_types_and_subtypes
+	 *
+	 * @covers ::unregister_meta_key
 	 */
 	public function test_unregister_meta_with_subtype_unpopulates_wp_meta_keys( $type, $subtype ) {
 		global $wp_meta_keys;
@@ -376,6 +456,8 @@
 	/**
 	 * @ticket 38323
 	 * @dataProvider data_get_types_and_subtypes
+	 *
+	 * @covers ::unregister_meta_key
 	 */
 	public function test_unregister_meta_without_subtype_keeps_subtype_meta_key( $type, $subtype ) {
 		global $wp_meta_keys;
@@ -411,6 +493,8 @@
 	/**
 	 * @ticket 38323
 	 * @dataProvider data_get_types_and_subtypes
+	 *
+	 * @covers ::get_registered_meta_keys
 	 */
 	public function test_get_registered_meta_keys_with_subtype( $type, $subtype ) {
 		register_meta( $type, 'registered_key1', array( 'object_subtype' => $subtype ) );
@@ -426,6 +510,8 @@
 	/**
 	 * @ticket 38323
 	 * @dataProvider data_get_types_and_subtypes
+	 *
+	 * @covers ::get_registered_meta_keys
 	 */
 	public function test_get_registered_metadata_with_subtype( $type, $subtype ) {
 		register_meta( $type, 'registered_key1', array() );
@@ -483,6 +569,8 @@
 	/**
 	 * @ticket 38323
 	 * @dataProvider data_get_types_and_subtypes
+	 *
+	 * @covers ::get_object_subtype
 	 */
 	public function test_get_object_subtype( $type, $expected_subtype ) {
 		$object_property_name = $type . '_id';
@@ -493,6 +581,8 @@
 
 	/**
 	 * @ticket 38323
+	 *
+	 * @covers ::get_object_subtype
 	 */
 	public function test_get_object_subtype_custom() {
 		add_filter( 'get_object_subtype_customtype', array( $this, 'filter_get_object_subtype_for_customtype' ), 10, 2 );
@@ -507,6 +597,8 @@
 	/**
 	 * @ticket 43941
 	 * @dataProvider data_get_default_data
+	 *
+	 * @covers ::get_metadata_default
 	 */
 	public function test_get_default_value( $args, $single, $expected ) {
 
@@ -552,6 +644,8 @@
 	/**
 	 * @ticket 43941
 	 * @dataProvider data_get_invalid_default_data
+	 *
+	 * @covers ::get_metadata_default
 	 */
 	public function test_get_invalid_default_value( $args, $single, $expected ) {
 		$this->setExpectedIncorrectUsage( 'register_meta' );
Index: tests/phpunit/tests/meta/slashes.php
===================================================================
--- tests/phpunit/tests/meta/slashes.php	(revision 49699)
+++ tests/phpunit/tests/meta/slashes.php	(working copy)
@@ -34,6 +34,8 @@
 
 	/**
 	 * Tests the controller function that expects slashed data.
+	 *
+	 * @covers ::add_magic_quotes
 	 */
 	function test_edit_post() {
 		$post_id = self::$post_id;
@@ -111,6 +113,8 @@
 
 	/**
 	 * Tests the legacy model function that expects slashed data.
+	 *
+	 * @covers ::add_post_meta
 	 */
 	function test_add_post_meta() {
 		$post_id = self::$post_id;
@@ -126,6 +130,8 @@
 
 	/**
 	 * Tests the legacy model function that expects slashed data.
+	 *
+	 * @covers ::update_post_meta
 	 */
 	function test_update_post_meta() {
 		$post_id = self::$post_id;
@@ -141,6 +147,8 @@
 
 	/**
 	 * Tests the model function that expects slashed data.
+	 *
+	 * @covers ::add_comment_meta
 	 */
 	function test_add_comment_meta() {
 		$comment_id = self::$comment_id;
@@ -164,6 +172,8 @@
 
 	/**
 	 * Tests the model function that expects slashed data.
+	 *
+	 * @covers ::update_comment_meta
 	 */
 	function test_update_comment_meta() {
 		$comment_id = self::$comment_id;
@@ -191,6 +201,8 @@
 
 	/**
 	 * Tests the model function that expects slashed data.
+	 *
+	 * @covers ::add_user_meta
 	 */
 	function test_add_user_meta() {
 		$user_id = self::$user_id;
@@ -214,6 +226,8 @@
 
 	/**
 	 * Tests the model function that expects slashed data.
+	 *
+	 * @covers ::update_user_meta
 	 */
 	function test_update_user_meta() {
 		$user_id = self::$user_id;
Index: tests/phpunit/tests/meta/updateMetadata.php
===================================================================
--- tests/phpunit/tests/meta/updateMetadata.php	(revision 49699)
+++ tests/phpunit/tests/meta/updateMetadata.php	(working copy)
@@ -7,6 +7,8 @@
 class Tests_Meta_UpdateMetadata extends WP_UnitTestCase {
 	/**
 	 * @ticket 35795
+	 *
+	 * @covers ::update_metadata
 	 */
 	public function test_slashed_key_for_new_metadata() {
 		update_metadata( 'post', 123, wp_slash( 'foo\foo' ), 'bar' );
@@ -17,6 +19,8 @@
 
 	/**
 	 * @ticket 35795
+	 *
+	 * @covers ::update_metadata
 	 */
 	public function test_slashed_key_for_existing_metadata() {
 		global $wpdb;
Index: tests/phpunit/tests/multisite/bootstrap.php
===================================================================
--- tests/phpunit/tests/multisite/bootstrap.php	(revision 49699)
+++ tests/phpunit/tests/multisite/bootstrap.php	(working copy)
@@ -122,6 +122,8 @@
 		 * @param string $domain       The requested domain.
 		 * @param string $path         The requested path.
 		 * @param string $message      The message to pass for failed tests.
+		 *
+		 * @covers ::get_network_by_path
 		 */
 		function test_get_network_by_path( $expected_key, $domain, $path, $message ) {
 			$network = get_network_by_path( $domain, $path );
@@ -153,6 +155,8 @@
 		 * @param string $domain       The requested domain.
 		 * @param string $path         The requested path.
 		 * @param string $message      The message to pass for failed tests.
+		 *
+		 * @covers ::get_network_by_path
 		 */
 		public function test_get_network_by_path_with_zero_path_segments( $expected_key, $domain, $path, $message ) {
 			add_filter( 'network_by_path_segments_count', '__return_zero' );
@@ -180,6 +184,8 @@
 		/**
 		 * Even if a matching network is available, it should not match if the the filtered
 		 * value for network path segments is fewer than the number of paths passed.
+		 *
+		 * @covers ::get_network_by_path
 		 */
 		public function test_get_network_by_path_with_forced_single_path_segment_returns_single_path_network() {
 			add_filter( 'network_by_path_segments_count', array( $this, 'filter_network_path_segments' ) );
@@ -202,6 +208,8 @@
 		 * @param string $domain       The requested domain.
 		 * @param string $path         The requested path.
 		 * @param int    $segments     Optional. Number of segments to use in `get_site_by_path()`.
+		 *
+		 * @covers ::get_site_by_path
 		 */
 		public function test_get_site_by_path( $expected_key, $domain, $path, $segments = null ) {
 			$site = get_site_by_path( $domain, $path, $segments );
@@ -254,6 +262,8 @@
 		 * @param string $network_key The array key associated with the expected network for the test.
 		 * @param string $domain      The requested domain.
 		 * @param string $path        The requested path.
+		 *
+		 * @covers ::ms_load_current_site_and_network
 		 */
 		function test_multisite_bootstrap( $site_key, $network_key, $domain, $path ) {
 			global $current_blog;
@@ -293,6 +303,8 @@
 
 		/**
 		 * @ticket 27884
+		 *
+		 * @covers ::ms_load_current_site_and_network
 		 */
 		public function test_multisite_bootstrap_additional_path_segments() {
 			global $current_blog;
@@ -315,6 +327,8 @@
 
 		/**
 		 * @ticket 37053
+		 *
+		 * @covers ::get_site_by_path
 		 */
 		public function test_get_site_by_path_returns_wp_site() {
 			add_filter( 'pre_get_site_by_path', array( $this, 'filter_pre_get_site_by_path' ), 10, 3 );
Index: tests/phpunit/tests/multisite/cleanDirsizeCache.php
===================================================================
--- tests/phpunit/tests/multisite/cleanDirsizeCache.php	(revision 49699)
+++ tests/phpunit/tests/multisite/cleanDirsizeCache.php	(working copy)
@@ -27,6 +27,8 @@
 		 * Test whether dirsize_cache values are used correctly with a more complex dirsize cache mock.
 		 *
 		 * @ticket 19879
+		 *
+		 * @covers ::recurse_dirsize
 		 */
 		function test_get_dirsize_cache_in_recurse_dirsize_mock() {
 			$blog_id = self::factory()->blog->create();
@@ -76,6 +78,8 @@
 		 * Test whether the dirsize_cache invalidation works given a file path as input.
 		 *
 		 * @ticket 19879
+		 *
+		 * @covers ::clean_dirsize_cache
 		 */
 		function test_clean_dirsize_cache_file_input_mock() {
 			$blog_id = self::factory()->blog->create();
@@ -124,6 +128,8 @@
 		 * Test whether the dirsize_cache invalidation works given a directory path as input.
 		 *
 		 * @ticket 19879
+		 *
+		 * @covers ::clean_dirsize_cache
 		 */
 		function test_clean_dirsize_cache_folder_input_mock() {
 			$blog_id = self::factory()->blog->create();
@@ -172,6 +178,8 @@
 		 * Test whether dirsize_cache values are used correctly with a simple real upload.
 		 *
 		 * @ticket 19879
+		 *
+		 * @covers ::recurse_dirsize
 		 */
 		function test_get_dirsize_cache_in_recurse_dirsize_upload() {
 			$blog_id = self::factory()->blog->create();
Index: tests/phpunit/tests/multisite/getBlogDetails.php
===================================================================
--- tests/phpunit/tests/multisite/getBlogDetails.php	(revision 49699)
+++ tests/phpunit/tests/multisite/getBlogDetails.php	(working copy)
@@ -41,11 +41,17 @@
 			wp_update_network_site_counts();
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_no_arguments_returns_current_site() {
 			$site = get_blog_details();
 			$this->assertEquals( get_current_blog_id(), $site->blog_id );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_site_name_string_subdirectory() {
 			if ( is_subdomain_install() ) {
 				$this->markTestSkipped( 'This test is only valid in a subdirectory configuration.' );
@@ -55,6 +61,9 @@
 			$this->assertEquals( self::$site_ids[ WP_TESTS_DOMAIN . '/foo/' ], $site->blog_id );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_site_name_string_subdomain() {
 			if ( ! is_subdomain_install() ) {
 				$this->markTestSkipped( 'This test is only valid in a subdomain configuration.' );
@@ -64,31 +73,49 @@
 			$this->assertEquals( self::$site_ids[ 'foo.' . WP_TESTS_DOMAIN . '/' ], $site->blog_id );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_invalid_site_name_string() {
 			$site = get_blog_details( 'invalid' );
 			$this->assertFalse( $site );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_site_id_int() {
 			$site = get_blog_details( self::$site_ids['wordpress.org/'] );
 			$this->assertEquals( self::$site_ids['wordpress.org/'], $site->blog_id );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_invalid_site_id_int() {
 			$site = get_blog_details( 99999 );
 			$this->assertFalse( $site );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_blog_id_in_fields() {
 			$site = get_blog_details( array( 'blog_id' => self::$site_ids['wordpress.org/'] ) );
 			$this->assertEquals( self::$site_ids['wordpress.org/'], $site->blog_id );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_invalid_blog_id_in_fields() {
 			$site = get_blog_details( array( 'blog_id' => 88888 ) );
 			$this->assertFalse( $site );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_domain_and_path_in_fields() {
 			$site = get_blog_details(
 				array(
@@ -99,6 +126,9 @@
 			$this->assertEquals( self::$site_ids['wordpress.org/'], $site->blog_id );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_domain_and_invalid_path_in_fields() {
 			$site = get_blog_details(
 				array(
@@ -109,6 +139,9 @@
 			$this->assertFalse( $site );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_path_and_invalid_domain_in_fields() {
 			$site = get_blog_details(
 				array(
@@ -119,6 +152,9 @@
 			$this->assertFalse( $site );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_only_domain_in_fields_subdomain() {
 			if ( ! is_subdomain_install() ) {
 				$this->markTestSkipped( 'This test is only valid in a subdomain configuration.' );
@@ -128,6 +164,9 @@
 			$this->assertSame( self::$site_ids['wordpress.org/'], $site->blog_id );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_only_domain_in_fields_subdirectory() {
 			if ( is_subdomain_install() ) {
 				$this->markTestSkipped( 'This test is only valid in a subdirectory configuration.' );
@@ -137,6 +176,9 @@
 			$this->assertFalse( $site );
 		}
 
+		/**
+		 * @covers ::get_blog_details
+		 */
 		public function test_get_blog_details_with_only_path_in_fields() {
 			$site = get_blog_details( array( 'path' => '/foo/' ) );
 			$this->assertFalse( $site );
@@ -144,6 +186,8 @@
 
 		/**
 		 * @ticket 50391
+		 *
+		 * @covers ::get_blog_details
 		 */
 		public function test_get_blog_details_does_not_switch_to_current_blog() {
 			$count = did_action( 'switch_blog' );
@@ -156,6 +200,8 @@
 		 * @dataProvider data_get_all
 		 *
 		 * @ticket 40228
+		 *
+		 * @covers ::get_blog_details
 		 */
 		public function test_get_blog_details_get_object_vars( $get_all ) {
 			$site = get_blog_details(
@@ -175,6 +221,8 @@
 		 * @dataProvider data_get_all
 		 *
 		 * @ticket 40228
+		 *
+		 * @covers ::get_blog_details
 		 */
 		public function test_get_blog_details_iterate_over_result( $get_all ) {
 			$site = get_blog_details(
Index: tests/phpunit/tests/multisite/getIdFromBlogname.php
===================================================================
--- tests/phpunit/tests/multisite/getIdFromBlogname.php	(revision 49699)
+++ tests/phpunit/tests/multisite/getIdFromBlogname.php	(working copy)
@@ -85,6 +85,8 @@
 
 		/**
 		 * @ticket 34450
+		 *
+		 * @covers ::get_id_from_blogname
 		 */
 		public function test_get_id_from_blogname_no_www() {
 			global $current_site;
@@ -106,6 +108,8 @@
 
 		/**
 		 * @ticket 34450
+		 *
+		 * @covers ::get_id_from_blogname
 		 */
 		public function test_get_id_from_blogname_www() {
 			global $current_site;
@@ -125,6 +129,9 @@
 			$this->assertSame( $expected, $result );
 		}
 
+		/**
+		 * @covers ::get_id_from_blogname
+		 */
 		public function test_get_id_from_blogname_invalid_slug() {
 			global $current_site;
 
Index: tests/phpunit/tests/multisite/getMainSiteId.php
===================================================================
--- tests/phpunit/tests/multisite/getMainSiteId.php	(revision 49699)
+++ tests/phpunit/tests/multisite/getMainSiteId.php	(working copy)
@@ -69,6 +69,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::get_main_site_id
 		 */
 		public function test_get_main_site_id_on_main_site_returns_self() {
 			$this->assertSame( get_current_blog_id(), get_main_site_id() );
@@ -76,6 +78,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::get_main_site_id
 		 */
 		public function test_get_main_site_id_returns_main_site_in_switched_context() {
 			$main_site_id  = get_current_blog_id();
@@ -90,6 +94,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::get_main_site_id
 		 */
 		public function test_get_main_site_id_with_different_network_returns_correct_id() {
 			$this->assertSame( self::$site_ids['wordpress.org/'], get_main_site_id( self::$network_ids['wordpress.org/'] ) );
@@ -97,6 +103,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::get_main_site_id
 		 */
 		public function test_get_main_site_id_on_network_without_site_returns_0() {
 			$this->assertSame( 0, get_main_site_id( self::$network_ids['wp.org/'] ) );
@@ -104,6 +112,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::get_main_site_id
 		 */
 		public function test_get_main_site_id_on_invalid_network_returns_0() {
 			$this->assertSame( 0, get_main_site_id( 333 ) );
@@ -111,6 +121,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::get_main_site_id
 		 */
 		public function test_get_main_site_id_filtered() {
 			add_filter( 'pre_get_main_site_id', array( $this, 'filter_get_main_site_id' ) );
@@ -125,6 +137,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::get_main_site_id
 		 */
 		public function test_get_main_site_id_filtered_depending_on_network() {
 			add_filter( 'pre_get_main_site_id', array( $this, 'filter_get_main_site_id_depending_on_network' ), 10, 2 );
@@ -144,6 +158,8 @@
 
 		/**
 		 * @ticket 41936
+		 *
+		 * @covers ::get_main_site_id
 		 */
 		public function test_get_main_site_id_with_property_value() {
 			global $current_site;
@@ -160,6 +176,8 @@
 
 		/**
 		 * @ticket 41936
+		 *
+		 * @covers ::get_main_site_id
 		 */
 		public function test_get_main_site_id_filtered_with_property_value() {
 			global $current_site;
Index: tests/phpunit/tests/multisite/getSite.php
===================================================================
--- tests/phpunit/tests/multisite/getSite.php	(revision 49699)
+++ tests/phpunit/tests/multisite/getSite.php	(working copy)
@@ -40,6 +40,9 @@
 			wp_update_network_site_counts();
 		}
 
+		/**
+		 * @covers ::get_site
+		 */
 		public function test_get_site_in_switched_state_returns_switched_site() {
 			switch_to_blog( self::$site_ids['wordpress.org/foo/'] );
 			$site = get_site();
Index: tests/phpunit/tests/multisite/getSpaceAllowed.php
===================================================================
--- tests/phpunit/tests/multisite/getSpaceAllowed.php	(revision 49699)
+++ tests/phpunit/tests/multisite/getSpaceAllowed.php	(working copy)
@@ -43,6 +43,8 @@
 		/**
 		 * When no option exists for the site or the network, a fallback of
 		 * 100 is expected.
+		 *
+		 * @covers ::get_space_allowed
 		 */
 		public function test_get_space_allowed_default() {
 			delete_option( 'blog_upload_space' );
@@ -54,6 +56,8 @@
 		/**
 		 * If an individual site's option is not available, the default network
 		 * level option is used as a fallback.
+		 *
+		 * @covers ::get_space_allowed
 		 */
 		public function test_get_space_allowed_no_site_option_fallback_to_network_option() {
 			delete_site_option( 'blog_upload_space' );
@@ -68,6 +72,8 @@
 		 * @param mixed $site_option    Option to assign to the site's `blog_upload_space`.
 		 * @param mixed $network_option Option to assign to the network's `blog_upload_space`.
 		 * @param int   $expected       Expected return value.
+		 *
+		 * @covers ::get_space_allowed
 		 */
 		public function test_get_space_allowed( $site_option, $network_option, $expected ) {
 			update_option( 'blog_upload_space', $site_option );
@@ -100,6 +106,9 @@
 			);
 		}
 
+		/**
+		 * @covers ::get_space_allowed
+		 */
 		public function test_get_space_allowed_filtered() {
 			update_option( 'blog_upload_space', 777 );
 			update_site_option( 'blog_upload_space', 888 );
Index: tests/phpunit/tests/multisite/getSpaceUsed.php
===================================================================
--- tests/phpunit/tests/multisite/getSpaceUsed.php	(revision 49699)
+++ tests/phpunit/tests/multisite/getSpaceUsed.php	(working copy)
@@ -4,7 +4,6 @@
 
 	/**
 	 * @group multisite
-	 * @covers ::get_space_used
 	 */
 	class Tests_Multisite_Get_Space_Used extends WP_UnitTestCase {
 		protected $suppress = false;
@@ -21,6 +20,9 @@
 			parent::tearDown();
 		}
 
+		/**
+		 * @covers ::get_space_used
+		 */
 		function test_get_space_used_switched_site() {
 			$blog_id = self::factory()->blog->create();
 			switch_to_blog( $blog_id );
@@ -54,6 +56,8 @@
 		/**
 		 * Directories of sub sites on a network should not count against the same spaced used total for
 		 * the main site.
+		 *
+		 * @covers ::get_space_used
 		 */
 		function test_get_space_used_main_site() {
 			$space_used = get_space_used();
@@ -89,6 +93,9 @@
 			restore_current_blog();
 		}
 
+		/**
+		 * @covers ::get_space_used
+		 */
 		function test_get_space_used_pre_get_spaced_used_filter() {
 			add_filter( 'pre_get_space_used', array( $this, '_filter_space_used' ) );
 
Index: tests/phpunit/tests/multisite/isUploadSpaceAvailable.php
===================================================================
--- tests/phpunit/tests/multisite/isUploadSpaceAvailable.php	(revision 49699)
+++ tests/phpunit/tests/multisite/isUploadSpaceAvailable.php	(working copy)
@@ -48,6 +48,8 @@
 		/**
 		 * A default of 100MB is used when no `blog_upload_space` option
 		 * exists at the site or network level.
+		 *
+		 * @covers ::is_upload_space_available
 		 */
 		public function test_is_upload_space_available_default() {
 			delete_option( 'blog_upload_space' );
@@ -60,6 +62,9 @@
 			$this->assertTrue( $available );
 		}
 
+		/**
+		 * @covers ::is_upload_space_available
+		 */
 		public function test_is_upload_space_available_check_disabled() {
 			update_site_option( 'blog_upload_space', 10 );
 			update_site_option( 'upload_space_check_disabled', true );
@@ -71,6 +76,9 @@
 			$this->assertTrue( $available );
 		}
 
+		/**
+		 * @covers ::is_upload_space_available
+		 */
 		public function test_is_upload_space_available_space_used_is_less_then_allowed() {
 			update_option( 'blog_upload_space', 350 );
 
@@ -81,6 +89,9 @@
 			$this->assertTrue( $available );
 		}
 
+		/**
+		 * @covers ::is_upload_space_available
+		 */
 		function test_is_upload_space_available_space_used_is_more_than_allowed() {
 			update_option( 'blog_upload_space', 350 );
 
@@ -94,6 +105,8 @@
 		/**
 		 * More comprehensive testing a 0 condition is handled in the tests
 		 * for `get_space_allowed()`. We cover one scenario here.
+		 *
+		 * @covers ::is_upload_space_available
 		 */
 		function test_is_upload_space_available_upload_space_0_defaults_to_100() {
 			update_option( 'blog_upload_space', 0 );
@@ -105,6 +118,9 @@
 			$this->assertFalse( $available );
 		}
 
+		/**
+		 * @covers ::is_upload_space_available
+		 */
 		function test_is_upload_space_available_upload_space_negative() {
 			update_site_option( 'blog_upload_space', -1 );
 
Index: tests/phpunit/tests/multisite/ms-files-rewriting.php
===================================================================
--- tests/phpunit/tests/multisite/ms-files-rewriting.php	(revision 49699)
+++ tests/phpunit/tests/multisite/ms-files-rewriting.php	(working copy)
@@ -32,6 +32,10 @@
 			parent::tearDown();
 		}
 
+		/**
+		 * @covers ::switch_to_blog
+		 * @covers ::wp_upload_dir
+		 */
 		function test_switch_upload_dir() {
 			$this->assertTrue( is_main_site() );
 
@@ -59,6 +63,8 @@
 		 * When a site is deleted with wpmu_delete_blog(), only the files associated with
 		 * that site should be removed. When wpmu_delete_blog() is run a second time, nothing
 		 * should change with upload directories.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_upload_directories_after_multiple_wpmu_delete_blog_with_ms_files() {
 			$filename = __FUNCTION__ . '.jpg';
Index: tests/phpunit/tests/multisite/network.php
===================================================================
--- tests/phpunit/tests/multisite/network.php	(revision 49699)
+++ tests/phpunit/tests/multisite/network.php	(working copy)
@@ -74,6 +74,8 @@
 
 		/**
 		 * By default, only one network exists and has a network ID of 1.
+		 *
+		 * @covers ::get_main_network_id
 		 */
 		function test_get_main_network_id_default() {
 			$this->assertSame( 1, get_main_network_id() );
@@ -82,6 +84,8 @@
 		/**
 		 * If a second network is created, network ID 1 should still be returned
 		 * as the main network ID.
+		 *
+		 * @covers ::get_main_network_id
 		 */
 		function test_get_main_network_id_two_networks() {
 			self::factory()->network->create();
@@ -92,6 +96,8 @@
 		/**
 		 * When the `$current_site` global is populated with another network, the
 		 * main network should still return as 1.
+		 *
+		 * @covers ::get_main_network_id
 		 */
 		function test_get_main_network_id_after_network_switch() {
 			global $current_site;
@@ -109,6 +115,8 @@
 		 *
 		 * @todo In the future, we'll have a smarter way of deleting a network. For now,
 		 * fake the process with UPDATE queries.
+		 *
+		 * @covers ::get_main_network_id
 		 */
 		function test_get_main_network_id_after_network_delete() {
 			global $wpdb, $current_site;
@@ -135,6 +143,8 @@
 
 		/**
 		 * @ticket 37050
+		 *
+		 * @covers WP_Network::get_instance
 		 */
 		function test_wp_network_object_id_property_is_int() {
 			$id = self::factory()->network->create();
@@ -146,6 +156,8 @@
 
 		/**
 		 * @ticket 22917
+		 *
+		 * @covers ::get_blog_count
 		 */
 		public function test_get_blog_count_no_filter_applied() {
 			wp_update_network_counts();
@@ -164,6 +176,8 @@
 
 		/**
 		 * @ticket 22917
+		 *
+		 * @covers ::get_blog_count
 		 */
 		public function test_get_blog_count_enable_live_network_counts_false() {
 			wp_update_network_counts();
@@ -184,6 +198,8 @@
 
 		/**
 		 * @ticket 22917
+		 *
+		 * @covers ::get_blog_count
 		 */
 		public function test_get_blog_count_enabled_live_network_counts_true() {
 			wp_update_network_counts();
@@ -204,6 +220,8 @@
 
 		/**
 		 * @ticket 37865
+		 *
+		 * @covers ::get_blog_count
 		 */
 		public function test_get_blog_count_on_different_network() {
 			wp_update_network_site_counts( self::$different_network_id );
@@ -215,6 +233,8 @@
 
 		/**
 		 * @ticket 37866
+		 *
+		 * @covers ::get_blog_count
 		 */
 		public function test_get_user_count_on_different_network() {
 			wp_update_network_user_counts();
@@ -232,6 +252,8 @@
 
 		/**
 		 * @ticket 22917
+		 *
+		 * @covers ::get_blog_count
 		 */
 		function test_enable_live_network_user_counts_filter() {
 			// False for large networks by default.
@@ -262,6 +284,9 @@
 			remove_filter( 'enable_live_network_counts', '__return_true' );
 		}
 
+		/**
+		 * @covers ::wp_get_active_network_plugins
+		 */
 		function test_active_network_plugins() {
 			$path = 'hello.php';
 
@@ -292,6 +317,8 @@
 
 		/**
 		 * @ticket 28651
+		 *
+		 * @covers ::wp_get_active_network_plugins
 		 */
 		function test_duplicate_network_active_plugin() {
 			$path = 'hello.php';
@@ -313,11 +340,17 @@
 			remove_action( 'activate_' . $path, array( $mock, 'action' ) );
 		}
 
+		/**
+		 * @covers ::is_plugin_active_for_network
+		 */
 		function test_is_plugin_active_for_network_true() {
 			activate_plugin( 'hello.php', '', true );
 			$this->assertTrue( is_plugin_active_for_network( 'hello.php' ) );
 		}
 
+		/**
+		 * @covers ::is_plugin_active_for_network
+		 */
 		function test_is_plugin_active_for_network_false() {
 			deactivate_plugins( 'hello.php', false, true );
 			$this->assertFalse( is_plugin_active_for_network( 'hello.php' ) );
@@ -327,6 +360,9 @@
 			$this->plugin_hook_count++;
 		}
 
+		/**
+		 * @covers ::get_user_count
+		 */
 		function test_get_user_count() {
 			// Refresh the cache.
 			wp_update_network_counts();
@@ -346,6 +382,9 @@
 			remove_filter( 'enable_live_network_counts', '__return_false' );
 		}
 
+		/**
+		 * @coversNothing
+		 */
 		function test_wp_schedule_update_network_counts() {
 			$this->assertFalse( wp_next_scheduled( 'update_network_counts' ) );
 
@@ -357,6 +396,8 @@
 
 		/**
 		 * @expectedDeprecated get_dashboard_blog
+		 *
+		 * @covers ::get_dashboard_blog
 		 */
 		function test_get_dashboard_blog() {
 			// If there is no dashboard blog set, current blog is used.
@@ -375,6 +416,8 @@
 
 		/**
 		 * @ticket 37528
+		 *
+		 * @covers ::wp_update_network_site_counts
 		 */
 		function test_wp_update_network_site_counts() {
 			update_network_option( null, 'blog_count', 40 );
@@ -397,6 +440,8 @@
 
 		/**
 		 * @ticket 37528
+		 *
+		 * @covers ::wp_update_network_site_counts
 		 */
 		function test_wp_update_network_site_counts_on_different_network() {
 			update_network_option( self::$different_network_id, 'blog_count', 40 );
@@ -409,6 +454,8 @@
 
 		/**
 		 * @ticket 40349
+		 *
+		 * @covers ::wp_update_network_site_counts
 		 */
 		public function test_wp_update_network_user_counts() {
 			global $wpdb;
@@ -425,6 +472,8 @@
 
 		/**
 		 * @ticket 40349
+		 *
+		 * @covers ::wp_update_network_site_counts
 		 */
 		public function test_wp_update_network_user_counts_on_different_network() {
 			global $wpdb;
@@ -441,6 +490,8 @@
 
 		/**
 		 * @ticket 40386
+		 *
+		 * @covers ::wp_update_network_site_counts
 		 */
 		public function test_wp_update_network_counts() {
 			delete_network_option( null, 'blog_count' );
@@ -456,6 +507,8 @@
 
 		/**
 		 * @ticket 40386
+		 *
+		 * @covers ::wp_update_network_site_counts
 		 */
 		public function test_wp_update_network_counts_on_different_network() {
 			delete_network_option( self::$different_network_id, 'blog_count' );
@@ -472,6 +525,8 @@
 		/**
 		 * @ticket 40489
 		 * @dataProvider data_wp_is_large_network
+		 *
+		 * @covers ::wp_is_large_network
 		 */
 		public function test_wp_is_large_network( $using, $count, $expected, $different_network ) {
 			$network_id     = $different_network ? self::$different_network_id : null;
@@ -503,6 +558,8 @@
 		/**
 		 * @ticket 40489
 		 * @dataProvider data_wp_is_large_network_filtered_by_component
+		 *
+		 * @covers ::wp_is_large_network
 		 */
 		public function test_wp_is_large_network_filtered_by_component( $using, $count, $expected, $different_network ) {
 			$network_id     = $different_network ? self::$different_network_id : null;
@@ -545,6 +602,8 @@
 		/**
 		 * @ticket 40489
 		 * @dataProvider data_wp_is_large_network_filtered_by_network
+		 *
+		 * @covers ::wp_is_large_network
 		 */
 		public function test_wp_is_large_network_filtered_by_network( $using, $count, $expected, $different_network ) {
 			$network_id     = $different_network ? self::$different_network_id : null;
@@ -586,6 +645,8 @@
 
 		/**
 		 * @ticket 38699
+		 *
+		 * @covers ::wpmu_create_blog
 		 */
 		public function test_wpmu_create_blog_updates_correct_network_site_count() {
 			$original_count = get_blog_count( self::$different_network_id );
@@ -601,6 +662,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::get_network
 		 */
 		public function test_network_blog_id_set() {
 			$network = get_network( self::$different_network_id );
@@ -610,6 +673,8 @@
 
 		/**
 		 * @ticket 42251
+		 *
+		 * @covers ::get_network
 		 */
 		public function test_get_network_not_found_cache() {
 			global $wpdb;
@@ -624,6 +689,8 @@
 
 		/**
 		 * @ticket 42251
+		 *
+		 * @covers ::get_network
 		 */
 		public function test_get_network_not_found_cache_clear() {
 			$new_network_id = $this->_get_next_network_id();
Index: tests/phpunit/tests/multisite/networkQuery.php
===================================================================
--- tests/phpunit/tests/multisite/networkQuery.php	(revision 49699)
+++ tests/phpunit/tests/multisite/networkQuery.php	(working copy)
@@ -61,6 +61,9 @@
 			}
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_number() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -73,6 +76,9 @@
 			$this->assertSame( 3, count( $found ) );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_network__in_with_order() {
 			$expected = array( self::$network_ids['wordpress.org/'], self::$network_ids['make.wordpress.org/'] );
 
@@ -98,6 +104,9 @@
 			$this->assertSame( array_reverse( $expected ), $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_network__in_with_single_id() {
 			$expected = array( self::$network_ids['wordpress.org/'] );
 
@@ -112,6 +121,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+	/**
+	 * @covers WP_Network_Query::query
+	 */
 		public function test_wp_network_query_by_network__in_with_multiple_ids() {
 			$expected = array( self::$network_ids['wordpress.org/'], self::$network_ids['www.wordpress.net/'] );
 
@@ -126,6 +138,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_network__in_and_count_with_multiple_ids() {
 			$expected = array( self::$network_ids['wordpress.org/'], self::$network_ids['make.wordpress.org/'] );
 
@@ -141,6 +156,9 @@
 			$this->assertSame( 2, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_network__not_in_with_single_id() {
 			$excluded = array( self::$network_ids['wordpress.org/'] );
 			$expected = array_diff( self::$network_ids, $excluded );
@@ -159,6 +177,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_network__not_in_with_multiple_ids() {
 			$excluded = array( self::$network_ids['wordpress.org/'], self::$network_ids['www.w.org/foo/'] );
 			$expected = array_diff( self::$network_ids, $excluded );
@@ -177,6 +198,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_domain() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -193,6 +217,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_domain__in_with_single_domain() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -209,6 +236,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_domain__in_with_multiple_domains() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -226,6 +256,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_domain__in_with_multiple_domains_and_number() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -243,6 +276,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_domain__in_with_multiple_domains_and_number_and_offset() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -261,6 +297,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_domain__not_in_with_single_domain() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -280,6 +319,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_domain__not_in_with_multiple_domains() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -298,6 +340,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_domain__not_in_with_multiple_domains_and_number() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -316,6 +361,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_domain__not_in_with_multiple_domains_and_number_and_offset() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -335,6 +383,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_path_with_expected_results() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -354,6 +405,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_path_and_number_and_offset_with_expected_results() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -373,6 +427,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_path_with_no_expected_results() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -385,6 +442,9 @@
 			$this->assertEmpty( $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_search_with_text_in_domain() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -401,6 +461,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_search_with_text_in_path() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -417,6 +480,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Network_Query::query
+		 */
 		public function test_wp_network_query_by_path_order_by_domain_desc() {
 			$q     = new WP_Network_Query();
 			$found = $q->query(
@@ -440,6 +506,8 @@
 
 		/**
 		 * @ticket 41347
+		 *
+		 * @covers WP_Network_Query::query
 		 */
 		public function test_wp_network_query_cache_with_different_fields_no_count() {
 			global $wpdb;
@@ -467,6 +535,8 @@
 
 		/**
 		 * @ticket 41347
+		 *
+		 * @covers WP_Network_Query::query
 		 */
 		public function test_wp_network_query_cache_with_different_fields_active_count() {
 			global $wpdb;
@@ -496,6 +566,8 @@
 
 		/**
 		 * @ticket 41347
+		 *
+		 * @covers WP_Network_Query::query
 		 */
 		public function test_wp_network_query_cache_with_same_fields_different_count() {
 			global $wpdb;
@@ -526,6 +598,8 @@
 		/**
 		 * @ticket 45749
 		 * @ticket 47599
+		 *
+		 * @covers WP_Network_Query::query
 		 */
 		public function test_networks_pre_query_filter_should_bypass_database_query() {
 			global $wpdb;
@@ -557,6 +631,8 @@
 
 		/**
 		 * @ticket 51333
+		 *
+		 * @covers WP_Network_Query::query
 		 */
 		public function test_networks_pre_query_filter_should_set_networks_property() {
 			add_filter( 'networks_pre_query', array( __CLASS__, 'filter_networks_pre_query_and_set_networks' ), 10, 2 );
Index: tests/phpunit/tests/multisite/site.php
===================================================================
--- tests/phpunit/tests/multisite/site.php	(revision 49699)
+++ tests/phpunit/tests/multisite/site.php	(working copy)
@@ -88,6 +88,9 @@
 			}
 		}
 
+		/**
+		 * @covers ::restore_current_blog
+		 */
 		function test_switch_restore_blog() {
 			global $_wp_switched_stack, $wpdb;
 
@@ -135,6 +138,8 @@
 
 		/**
 		 * Test the cache keys and database tables setup through the creation of a site.
+		 *
+		 * @covers ::get_blog_details
 		 */
 		function test_created_site_details() {
 			global $wpdb;
@@ -192,6 +197,9 @@
 			$this->assertSame( 2, (int) get_blog_count() );
 		}
 
+		/**
+		 * @covers ::wp_suspend_cache_invalidation
+		 */
 		public function test_site_caches_should_invalidate_when_invalidation_is_not_suspended() {
 			$site_id = self::factory()->blog->create();
 
@@ -205,6 +213,9 @@
 			$this->assertNotEquals( $details->path, $new_details->path );
 		}
 
+		/**
+		 * @covers ::wp_suspend_cache_invalidation
+		 */
 		public function test_site_caches_should_not_invalidate_when_invalidation_is_suspended() {
 			$site_id = self::factory()->blog->create();
 
@@ -220,6 +231,8 @@
 
 		/**
 		 * When a site is flagged as 'deleted', its data should be cleared from cache.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_data_in_cache_after_wpmu_delete_blog_drop_false() {
 			$blog_id = self::factory()->blog->create();
@@ -238,6 +251,8 @@
 
 		/**
 		 * When a site is flagged as 'deleted', its data should remain in the database.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_data_in_tables_after_wpmu_delete_blog_drop_false() {
 			global $wpdb;
@@ -261,6 +276,8 @@
 
 		/**
 		 * When a site is fully deleted, its data should be cleared from cache.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_data_in_cache_after_wpmu_delete_blog_drop_true() {
 			$blog_id = self::factory()->blog->create();
@@ -279,6 +296,8 @@
 
 		/**
 		 * When a site is fully deleted, its data should be removed from the database.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_data_in_tables_after_wpmu_delete_blog_drop_true() {
 			global $wpdb;
@@ -302,6 +321,8 @@
 
 		/**
 		 * When the main site of a network is fully deleted, its data should be cleared from cache.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_data_in_cache_after_wpmu_delete_blog_main_site_drop_true() {
 			$blog_id = 1; // The main site in our test suite has an ID of 1.
@@ -320,6 +341,8 @@
 
 		/**
 		 * When the main site of a network is fully deleted, its data should remain in the database.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_data_in_tables_after_wpmu_delete_blog_main_site_drop_true() {
 			global $wpdb;
@@ -343,6 +366,8 @@
 
 		/**
 		 * The site count of a network should change when a site is flagged as 'deleted'.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_network_count_after_wpmu_delete_blog_drop_false() {
 			$blog_id = self::factory()->blog->create();
@@ -357,6 +382,8 @@
 
 		/**
 		 * The site count of a network should change when a site is fully deleted.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_blog_count_after_wpmu_delete_blog_drop_true() {
 			$blog_id = self::factory()->blog->create();
@@ -373,6 +400,8 @@
 		 * When a site is deleted with wpmu_delete_blog(), only the files associated with
 		 * that site should be removed. When wpmu_delete_blog() is run a second time, nothing
 		 * should change with upload directories.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_upload_directories_after_multiple_wpmu_delete_blog() {
 			$filename = __FUNCTION__ . '.jpg';
@@ -400,6 +429,9 @@
 			$this->assertFileNotExists( $file2['file'] );
 		}
 
+		/**
+		 *  @covers ::wpmu_update_blogs_date
+		 */
 		function test_wpmu_update_blogs_date() {
 			global $wpdb;
 
@@ -424,6 +456,8 @@
 		 * Test cached data for a site that does not exist and then again after it exists.
 		 *
 		 * @ticket 23405
+		 *
+		 * @covers ::get_blog_details
 		 */
 		function test_get_blog_details_when_site_does_not_exist() {
 			// Create an unused site so that we can then assume an invalid site ID.
@@ -450,6 +484,8 @@
 
 		/**
 		 * Updating a field returns the sme value that was passed.
+		 *
+		 * @covers ::update_blog_status
 		 */
 		function test_update_blog_status() {
 			$result = update_blog_status( 1, 'spam', 0 );
@@ -458,6 +494,8 @@
 
 		/**
 		 * Updating an invalid field returns the same value that was passed.
+		 *
+		 * @covers ::update_blog_status
 		 */
 		function test_update_blog_status_invalid_status() {
 			$result = update_blog_status( 1, 'doesnotexist', 'invalid' );
@@ -464,6 +502,9 @@
 			$this->assertSame( 'invalid', $result );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_update_blog_status_make_ham_blog_action() {
 			global $test_action_counter;
 			$test_action_counter = 0;
@@ -488,6 +529,9 @@
 			remove_action( 'make_ham_blog', array( $this, '_action_counter_cb' ), 10 );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_content_from_spam_blog_is_not_available() {
 			$spam_blog_id = self::factory()->blog->create();
 			switch_to_blog( $spam_blog_id );
@@ -518,6 +562,9 @@
 			$this->assertNotContains( "src=\"{$spam_embed_url}#?", $content );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_update_blog_status_make_spam_blog_action() {
 			global $test_action_counter;
 			$test_action_counter = 0;
@@ -541,6 +588,9 @@
 			remove_action( 'make_spam_blog', array( $this, '_action_counter_cb' ), 10 );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_update_blog_status_archive_blog_action() {
 			global $test_action_counter;
 			$test_action_counter = 0;
@@ -564,6 +614,9 @@
 			remove_action( 'archive_blog', array( $this, '_action_counter_cb' ), 10 );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_update_blog_status_unarchive_blog_action() {
 			global $test_action_counter;
 			$test_action_counter = 0;
@@ -587,6 +640,9 @@
 			remove_action( 'unarchive_blog', array( $this, '_action_counter_cb' ), 10 );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_update_blog_status_make_delete_blog_action() {
 			global $test_action_counter;
 			$test_action_counter = 0;
@@ -610,6 +666,9 @@
 			remove_action( 'make_delete_blog', array( $this, '_action_counter_cb' ), 10 );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_update_blog_status_make_undelete_blog_action() {
 			global $test_action_counter;
 			$test_action_counter = 0;
@@ -634,6 +693,9 @@
 			remove_action( 'make_undelete_blog', array( $this, '_action_counter_cb' ), 10 );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_update_blog_status_mature_blog_action() {
 			global $test_action_counter;
 			$test_action_counter = 0;
@@ -657,6 +719,9 @@
 			remove_action( 'mature_blog', array( $this, '_action_counter_cb' ), 10 );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_update_blog_status_unmature_blog_action() {
 			global $test_action_counter;
 			$test_action_counter = 0;
@@ -681,6 +746,9 @@
 			remove_action( 'unmature_blog', array( $this, '_action_counter_cb' ), 10 );
 		}
 
+		/**
+		 * @covers ::update_blog_status
+		 */
 		function test_update_blog_status_update_blog_public_action() {
 			global $test_action_counter;
 			$test_action_counter = 0;
@@ -706,6 +774,8 @@
 
 		/**
 		 * @ticket 27952
+		 *
+		 * @covers WP_Site::post_count
 		 */
 		function test_posts_count() {
 			self::factory()->post->create();
@@ -718,6 +788,8 @@
 
 		/**
 		 * @ticket 26410
+		 *
+		 * @covers ::update_option
 		 */
 		function test_blog_details_cache_invalidation() {
 			update_option( 'blogname', 'foo' );
@@ -732,6 +804,8 @@
 		/**
 		 * Test the original and cached responses for a created and then deleted site when
 		 * the blog ID is requested through get_blog_id_from_url().
+		 *
+		 * @covers ::get_blog_id_from_url
 		 */
 		function test_get_blog_id_from_url() {
 			$blog_id = self::factory()->blog->create();
@@ -745,6 +819,8 @@
 
 		/**
 		 * Test the case insensitivity of the site lookup.
+		 *
+		 * @covers ::get_blog_id_from_url
 		 */
 		function test_get_blog_id_from_url_is_case_insensitive() {
 			$blog_id = self::factory()->blog->create(
@@ -760,6 +836,8 @@
 
 		/**
 		 * Test the first and cached responses for a site that does not exist.
+		 *
+		 * @covers ::get_blog_id_from_url
 		 */
 		function test_get_blog_id_from_url_that_does_not_exist() {
 			$blog_id = self::factory()->blog->create( array( 'path' => '/xyz' ) );
@@ -772,6 +850,8 @@
 		/**
 		 * A blog ID is still available if only the `deleted` flag is set for a site. The same
 		 * behavior would be expected if passing `false` explicitly to `wpmu_delete_blog()`.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_get_blog_id_from_url_with_deleted_flag() {
 			$blog_id = self::factory()->blog->create();
@@ -786,6 +866,8 @@
 		/**
 		 * When deleted with the drop parameter as true, the cache will first be false, then set to
 		 * -1 after an attempt at `get_blog_id_from_url()` is made.
+		 *
+		 * @covers ::wpmu_delete_blog
 		 */
 		function test_get_blog_id_from_url_after_dropped() {
 			$blog_id = self::factory()->blog->create();
@@ -800,6 +882,8 @@
 
 		/**
 		 * Test with default parameter of site_id as null.
+		 *
+		 * @covers ::is_main_site
 		 */
 		function test_is_main_site() {
 			$this->assertTrue( is_main_site() );
@@ -808,6 +892,8 @@
 		/**
 		 * Test with a site id of get_current_blog_id(), which should be the same as the
 		 * default parameter tested above.
+		 *
+		 * @covers ::is_main_site
 		 */
 		function test_current_blog_id_is_main_site() {
 			$this->assertTrue( is_main_site( get_current_blog_id() ) );
@@ -815,6 +901,8 @@
 
 		/**
 		 * Test with a site ID other than the main site to ensure a false response.
+		 *
+		 * @covers ::is_main_site
 		 */
 		function test_is_main_site_is_false_with_other_blog_id() {
 			$blog_id = self::factory()->blog->create();
@@ -824,6 +912,8 @@
 
 		/**
 		 * Test with no passed ID after switching to another site ID.
+		 *
+		 * @covers ::is_main_site
 		 */
 		function test_is_main_site_is_false_after_switch_to_blog() {
 			$blog_id = self::factory()->blog->create();
@@ -834,6 +924,10 @@
 			restore_current_blog();
 		}
 
+		/**
+		 * @covers ::switch_to_blog
+		 * @covers ::wp_upload_dir
+		 */
 		function test_switch_upload_dir() {
 			$this->assertTrue( is_main_site() );
 
@@ -865,6 +959,8 @@
 		/**
 		 * Test the primary purpose of get_blog_post(), to retrieve a post from
 		 * another site on the network.
+		 *
+		 * @covers ::get_blog_post
 		 */
 		function test_get_blog_post_from_another_site_on_network() {
 			$blog_id = self::factory()->blog->create();
@@ -880,6 +976,8 @@
 
 		/**
 		 * If get_blog_post() is used on the same site, it should still work.
+		 *
+		 * @covers ::get_blog_post
 		 */
 		function test_get_blog_post_from_same_site() {
 			$post_id = self::factory()->post->create();
@@ -889,6 +987,8 @@
 
 		/**
 		 * A null response should be returned if an invalid post is requested.
+		 *
+		 * @covers ::get_blog_post
 		 */
 		function test_get_blog_post_invalid_returns_null() {
 			$this->assertNull( get_blog_post( 1, 999999 ) );
@@ -906,6 +1006,9 @@
 			}
 		}
 
+		/**
+		 * @covers ::domain_exists
+		 */
 		function test_domain_exists_with_default_site_id() {
 			$details = get_site( 1 );
 
@@ -912,6 +1015,9 @@
 			$this->assertSame( 1, domain_exists( $details->domain, $details->path ) );
 		}
 
+		/**
+		 * @covers ::domain_exists
+		 */
 		function test_domain_exists_with_specified_site_id() {
 			$details = get_site( 1 );
 
@@ -921,6 +1027,8 @@
 		/**
 		 * When the domain is valid, but the resulting site does not belong to the specified network,
 		 * it is marked as not existing.
+		 *
+		 * @covers ::domain_exists
 		 */
 		function test_domain_does_not_exist_with_invalid_site_id() {
 			$details = get_site( 1 );
@@ -928,10 +1036,16 @@
 			$this->assertNull( domain_exists( $details->domain, $details->path, 999 ) );
 		}
 
+		/**
+		 * @covers ::domain_exists
+		 */
 		function test_invalid_domain_does_not_exist_with_default_site_id() {
 			$this->assertNull( domain_exists( 'foo', 'bar' ) );
 		}
 
+		/**
+		 * @covers ::domain_exists
+		 */
 		function test_domain_filtered_to_exist() {
 			add_filter( 'domain_exists', array( $this, '_domain_exists_cb' ), 10, 4 );
 			$exists = domain_exists( 'foo', 'bar' );
@@ -942,6 +1056,8 @@
 		/**
 		 * When a path is passed to domain_exists, it is immediately trailing slashed. A path
 		 * value with or without the slash should result in the same return value.
+		 *
+		 * @covers ::domain_exists
 		 */
 		function test_slashed_path_in_domain_exists() {
 			add_filter( 'domain_exists', array( $this, '_domain_exists_cb' ), 10, 4 );
@@ -955,6 +1071,8 @@
 
 		/**
 		 * Tests returning an address for a given valid ID.
+		 *
+		 * @covers ::get_blogaddress_by_id
 		 */
 		function test_get_blogaddress_by_id_with_valid_id() {
 			$blogaddress = get_blogaddress_by_id( 1 );
@@ -963,6 +1081,8 @@
 
 		/**
 		 * Tests returning the appropriate response for a invalid id given.
+		 *
+		 * @covers ::get_blogaddress_by_id
 		 */
 		function test_get_blogaddress_by_id_with_invalid_id() {
 			$blogaddress = get_blogaddress_by_id( 42 );
@@ -971,6 +1091,8 @@
 
 		/**
 		 * @ticket 14867
+		 *
+		 * @covers ::get_blogaddress_by_id
 		 */
 		function test_get_blogaddress_by_id_scheme_reflects_blog_scheme() {
 			$blog = self::factory()->blog->create();
@@ -984,6 +1106,8 @@
 
 		/**
 		 * @ticket 14867
+		 *
+		 * @covers ::get_blogaddress_by_id
 		 */
 		function test_get_blogaddress_by_id_scheme_is_unaffected_by_request() {
 			$blog = self::factory()->blog->create();
@@ -1003,6 +1127,8 @@
 		/**
 		 * @ticket 33620
 		 * @dataProvider data_new_blog_url_schemes
+		 *
+		 * @covers ::set_url_scheme
 		 */
 		function test_new_blog_url_schemes( $home_scheme, $siteurl_scheme, $force_ssl_admin ) {
 			$current_site = get_current_site();
@@ -1062,6 +1188,8 @@
 
 		/**
 		 * @ticket 36918
+		 *
+		 * @covers ::wpmu_create_blog
 		 */
 		function test_new_blog_locale() {
 			$current_site = get_current_site();
@@ -1097,6 +1225,8 @@
 
 		/**
 		 * @ticket 40503
+		 *
+		 * @covers ::wpmu_create_blog
 		 */
 		function test_different_network_language() {
 			$network = get_network( self::$network_ids['make.wordpress.org/'] );
@@ -1125,6 +1255,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::is_main_site
 		 */
 		public function test_is_main_site_different_network() {
 			$this->assertTrue( is_main_site( self::$site_ids['make.wordpress.org/'], self::$network_ids['make.wordpress.org/'] ) );
@@ -1132,6 +1264,8 @@
 
 		/**
 		 * @ticket 29684
+		 *
+		 * @covers ::is_main_site
 		 */
 		public function test_is_main_site_different_network_random_site() {
 			$this->assertFalse( is_main_site( self::$site_ids['make.wordpress.org/foo/'], self::$network_ids['make.wordpress.org/'] ) );
@@ -1140,6 +1274,8 @@
 		/**
 		 * @ticket 40201
 		 * @dataProvider data_get_site_caches
+		 *
+		 * @covers ::clean_blog_cache
 		 */
 		public function test_clean_blog_cache( $key, $group ) {
 			$site = get_site( self::$site_ids['make.wordpress.org/'] );
@@ -1166,6 +1302,8 @@
 		/**
 		 * @ticket 40201
 		 * @dataProvider data_get_site_caches
+		 *
+		 * @covers ::clean_blog_cache
 		 */
 		public function test_clean_blog_cache_with_id( $key, $group ) {
 			$site = get_site( self::$site_ids['make.wordpress.org/'] );
@@ -1191,6 +1329,8 @@
 
 		/**
 		 * @ticket 40201
+		 *
+		 * @covers ::clean_blog_cache
 		 */
 		public function test_clean_blog_cache_resets_last_changed() {
 			$site = get_site( self::$site_ids['make.wordpress.org/'] );
@@ -1203,6 +1343,8 @@
 
 		/**
 		 * @ticket 40201
+		 *
+		 * @covers ::clean_blog_cache
 		 */
 		public function test_clean_blog_cache_fires_action() {
 			$site = get_site( self::$site_ids['make.wordpress.org/'] );
@@ -1215,6 +1357,8 @@
 
 		/**
 		 * @ticket 40201
+		 *
+		 * @covers ::clean_blog_cache
 		 */
 		public function test_clean_blog_cache_bails_on_suspend_cache_invalidation() {
 			$site = get_site( self::$site_ids['make.wordpress.org/'] );
@@ -1229,6 +1373,8 @@
 
 		/**
 		 * @ticket 40201
+		 *
+		 * @covers ::clean_blog_cache
 		 */
 		public function test_clean_blog_cache_bails_on_empty_input() {
 			$old_count = did_action( 'clean_site_cache' );
@@ -1239,6 +1385,8 @@
 
 		/**
 		 * @ticket 40201
+		 *
+		 * @covers ::clean_blog_cache
 		 */
 		public function test_clean_blog_cache_bails_on_non_numeric_input() {
 			$old_count = did_action( 'clean_site_cache' );
@@ -1249,6 +1397,8 @@
 
 		/**
 		 * @ticket 40201
+		 *
+		 * @covers ::clean_blog_cache
 		 */
 		public function test_clean_blog_cache_works_with_deleted_site() {
 			$site_id = 12345;
@@ -1262,6 +1412,8 @@
 		/**
 		 * @ticket 40201
 		 * @dataProvider data_get_site_caches
+		 *
+		 * @covers ::refresh_blog_details
 		 */
 		public function test_refresh_blog_details( $key, $group ) {
 			$site = get_site( self::$site_ids['make.wordpress.org/'] );
@@ -1287,6 +1439,8 @@
 
 		/**
 		 * @ticket 40201
+		 *
+		 * @covers ::refresh_blog_details
 		 */
 		public function test_refresh_blog_details_works_with_deleted_site() {
 			$site_id = 12345;
@@ -1299,6 +1453,8 @@
 
 		/**
 		 * @ticket 40201
+		 *
+		 * @covers ::refresh_blog_details
 		 */
 		public function test_refresh_blog_details_uses_current_site_as_default() {
 			$site_id = get_current_blog_id();
@@ -1323,6 +1479,8 @@
 		/**
 		 * @ticket 40364
 		 * @dataProvider data_wp_insert_site
+		 *
+		 * @covers ::wp_insert_site
 		 */
 		public function test_wp_insert_site( $site_data, $expected_data ) {
 			remove_action( 'wp_initialize_site', 'wp_initialize_site', 10 );
@@ -1418,6 +1576,8 @@
 
 		/**
 		 * @ticket 50324
+		 *
+		 * @covers ::wp_insert_site
 		 */
 		public function test_wp_insert_site_with_clean_site_cache() {
 			remove_action( 'wp_initialize_site', 'wp_initialize_site', 10 );
@@ -1444,6 +1604,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::wp_insert_site
 		 */
 		public function test_wp_insert_site_empty_domain() {
 			remove_action( 'wp_initialize_site', 'wp_initialize_site', 10 );
@@ -1521,6 +1683,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::wp_update_site
 		 */
 		public function test_wp_update_site_empty_domain() {
 			$site_id = self::factory()->blog->create();
@@ -1533,6 +1697,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::wp_update_site
 		 */
 		public function test_wp_update_site_invalid_id() {
 			$result = wp_update_site( 444444, array( 'domain' => 'example.com' ) );
@@ -1543,6 +1709,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::wp_update_site
 		 */
 		public function test_wp_update_site_cleans_cache() {
 			$site_id = self::factory()->blog->create();
@@ -1561,6 +1729,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::wp_delete_site
 		 */
 		public function test_wp_delete_site() {
 			$site_id = self::factory()->blog->create();
@@ -1575,6 +1745,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::wp_delete_site
 		 */
 		public function test_wp_delete_site_invalid_id() {
 			$result = wp_delete_site( 444444 );
@@ -1585,6 +1757,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_delete_site
 		 */
 		public function test_wp_delete_site_validate_site_deletion_action() {
 			add_action( 'wp_validate_site_deletion', array( $this, 'action_wp_validate_site_deletion_prevent_deletion' ) );
@@ -1600,6 +1774,8 @@
 		/**
 		 * @ticket 40364
 		 * @dataProvider data_wp_normalize_site_data
+		 *
+		 * @covers ::wp_normalize_site_data
 		 */
 		public function test_wp_normalize_site_data( $data, $expected ) {
 			$result = wp_normalize_site_data( $data );
@@ -1679,6 +1855,8 @@
 		/**
 		 * @ticket 40364
 		 * @dataProvider data_wp_validate_site_data
+		 *
+		 * @covers ::wp_validate_site_data
 		 */
 		public function test_wp_validate_site_data( $data, $expected_errors ) {
 			$result = new WP_Error();
@@ -1807,6 +1985,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::get_site
 		 */
 		public function test_site_dates_are_gmt() {
 			$first_date = current_time( 'mysql', true );
@@ -1836,6 +2016,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::wp_delete_site
 		 */
 		public function test_wp_delete_site_cleans_cache() {
 			$site_id = self::factory()->blog->create();
@@ -1849,6 +2031,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::wp_update_site
 		 */
 		public function test_wp_update_site_cleans_old_cache_on_domain_change() {
 			$old_domain = 'old.wordpress.org';
@@ -1904,6 +2088,8 @@
 
 		/**
 		 * @ticket 40364
+		 *
+		 * @covers ::wp_update_site
 		 */
 		public function test_wp_update_site_cleans_old_cache_on_path_change() {
 			$old_path = '/foo/';
@@ -1958,6 +2144,9 @@
 		/**
 		 * @ticket 40364
 		 * @dataProvider data_site_status_hook_triggers
+		 *
+		 * @covers ::wp_insert_site
+		 * @covers ::wp_update_site
 		 */
 		public function test_site_status_hook_triggers( $insert_site_data, $expected_insert_hooks, $update_site_data, $expected_update_hooks ) {
 			// First: Insert a site.
@@ -2122,6 +2311,8 @@
 		/**
 		 * @ticket 41333
 		 * @dataProvider data_wp_initialize_site
+		 *
+		 * @covers ::wp_initialize_site
 		 */
 		public function test_wp_initialize_site( $args, $expected_options, $expected_meta ) {
 			$result = wp_initialize_site( self::$uninitialized_site_id, $args );
@@ -2203,6 +2394,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_initialize_site
 		 */
 		public function test_wp_initialize_site_user_roles() {
 			global $wpdb;
@@ -2231,6 +2424,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_initialize_site
 		 */
 		public function test_wp_initialize_site_user_is_admin() {
 			$result = wp_initialize_site( self::$uninitialized_site_id, array( 'user_id' => 1 ) );
@@ -2249,6 +2444,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_initialize_site
 		 */
 		public function test_wp_initialize_site_args_filter() {
 			add_filter( 'wp_initialize_site_args', array( $this, 'filter_wp_initialize_site_args' ), 10, 3 );
@@ -2274,6 +2471,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_initialize_site
 		 */
 		public function test_wp_initialize_site_empty_id() {
 			$result = wp_initialize_site( 0 );
@@ -2283,6 +2482,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_initialize_site
 		 */
 		public function test_wp_initialize_site_invalid_id() {
 			$result = wp_initialize_site( 123 );
@@ -2292,6 +2493,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_initialize_site
 		 */
 		public function test_wp_initialize_site_already_initialized() {
 			$result = wp_initialize_site( get_current_blog_id() );
@@ -2301,6 +2504,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_uninitialize_site
 		 */
 		public function test_wp_uninitialize_site() {
 			$site_id = self::factory()->blog->create();
@@ -2312,6 +2517,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_uninitialize_site
 		 */
 		public function test_wp_uninitialize_site_empty_id() {
 			$result = wp_uninitialize_site( 0 );
@@ -2321,6 +2528,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_uninitialize_site
 		 */
 		public function test_wp_uninitialize_site_invalid_id() {
 			$result = wp_uninitialize_site( 123 );
@@ -2330,6 +2539,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_uninitialize_site
 		 */
 		public function test_wp_uninitialize_site_already_uninitialized() {
 			$result = wp_uninitialize_site( self::$uninitialized_site_id );
@@ -2339,6 +2550,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_is_site_initialized
 		 */
 		public function test_wp_is_site_initialized() {
 			$this->assertTrue( wp_is_site_initialized( get_current_blog_id() ) );
@@ -2347,6 +2560,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_is_site_initialized
 		 */
 		public function test_wp_is_site_initialized_prefilter() {
 			add_filter( 'pre_wp_is_site_initialized', '__return_false' );
@@ -2358,6 +2573,8 @@
 
 		/**
 		 * @ticket 41333
+		 *
+		 * @covers ::wp_insert_site
 		 */
 		public function test_wp_insert_site_forwards_args_to_wp_initialize_site() {
 			$args = array(
@@ -2392,6 +2609,8 @@
 
 		/**
 		 * @ticket 46125
+		 *
+		 * @covers ::wpmu_create_blog
 		 */
 		public function test_wpmu_create_blog_cache_cleanup_backward_compatible() {
 			add_action( 'populate_options', array( $this, 'populate_options_callback' ) );
@@ -2424,6 +2643,8 @@
 		 * @dataProvider data_wpmu_new_blog_action_backward_commpatible
 		 *
 		 * @ticket 46351
+		 *
+		 * @covers ::wpmu_create_blog
 		 */
 		public function test_wpmu_new_blog_action_backward_compatible( $meta, $expected_meta ) {
 			// We are testing deprecated hook. Register it to expected deprecated notices.
@@ -2439,6 +2660,8 @@
 
 		/**
 		 * @ticket 42251
+		 *
+		 * @covers ::get_site
 		 */
 		public function test_get_site_not_found_cache() {
 			global $wpdb;
@@ -2453,6 +2676,8 @@
 
 		/**
 		 * @ticket 42251
+		 *
+		 * @covers ::get_site
 		 */
 		public function test_get_site_not_found_cache_clear() {
 			$new_site_id = $this->_get_next_site_id();
Index: tests/phpunit/tests/multisite/siteDetails.php
===================================================================
--- tests/phpunit/tests/multisite/siteDetails.php	(revision 49699)
+++ tests/phpunit/tests/multisite/siteDetails.php	(working copy)
@@ -12,6 +12,8 @@
 		 * @dataProvider data_allowed_options
 		 *
 		 * @ticket 40063
+		 *
+		 * @covers ::update_option
 		 */
 		public function test_update_allowed_option_deletes_site_details_cache( $allowed_option, $temporary_value ) {
 			$site = get_site();
@@ -31,6 +33,8 @@
 		 * @dataProvider data_allowed_options
 		 *
 		 * @ticket 40063
+		 *
+		 * @covers ::update_option
 		 */
 		public function test_update_allowed_option_deletes_blog_details_cache( $allowed_option, $temporary_value ) {
 			$blog_details = get_blog_details();
@@ -50,6 +54,8 @@
 		 * @dataProvider data_allowed_options
 		 *
 		 * @ticket 40063
+		 *
+		 * @covers ::update_option
 		 */
 		public function test_update_allowed_option_does_not_delete_site_cache( $allowed_option, $temporary_value ) {
 			$site = get_site();
@@ -69,6 +75,8 @@
 		 * @dataProvider data_allowed_options
 		 *
 		 * @ticket 40063
+		 *
+		 * @covers ::update_option
 		 */
 		public function test_update_allowed_option_does_not_delete_short_blog_details_cache( $allowed_option, $temporary_value ) {
 			$blog_details = get_blog_details( null, false );
@@ -88,6 +96,8 @@
 		 * @dataProvider data_allowed_options
 		 *
 		 * @ticket 40063
+		 *
+		 * @covers ::update_option
 		 */
 		public function test_update_allowed_option_does_not_update_sites_last_changed( $allowed_option, $temporary_value ) {
 			$last_changed = wp_cache_get_last_changed( 'sites' );
@@ -114,6 +124,8 @@
 
 		/**
 		 * @ticket 40063
+		 *
+		 * @covers ::update_option
 		 */
 		public function test_update_random_blog_option_does_not_delete_cache() {
 			$site = get_site();
@@ -128,6 +140,8 @@
 
 		/**
 		 * @ticket 40247
+		 *
+		 * @covers WP_Site::post_count
 		 */
 		public function test_site_details_cached_including_false_values() {
 			$id = self::factory()->blog->create();
@@ -145,6 +159,9 @@
 			$this->assertNotFalse( $cached_details );
 		}
 
+		/**
+		 * @covers ::get_site
+		 */
 		public function test_site_details_filter_with_blogname() {
 			add_filter( 'site_details', array( $this, '_filter_site_details_blogname' ) );
 			$site     = get_site();
@@ -161,6 +178,8 @@
 
 		/**
 		 * @ticket 40458
+		 *
+		 * @covers ::get_site
 		 */
 		public function test_site_details_filter_with_custom_value_isetter() {
 			add_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
@@ -173,6 +192,8 @@
 
 		/**
 		 * @ticket 40458
+		 *
+		 * @covers ::get_site
 		 */
 		public function test_site_details_filter_with_custom_value_getter() {
 			add_filter( 'site_details', array( $this, '_filter_site_details_custom_value' ) );
Index: tests/phpunit/tests/multisite/siteMeta.php
===================================================================
--- tests/phpunit/tests/multisite/siteMeta.php	(revision 49699)
+++ tests/phpunit/tests/multisite/siteMeta.php	(working copy)
@@ -47,15 +47,24 @@
 			wp_update_network_site_counts();
 		}
 
+		/**
+		 * @covers ::is_site_meta_supported
+		 */
 		public function test_is_site_meta_supported() {
 			$this->assertTrue( is_site_meta_supported() );
 		}
 
+		/**
+		 * @covers ::is_site_meta_supported
+		 */
 		public function test_is_site_meta_supported_filtered() {
 			add_filter( 'pre_site_option_site_meta_supported', '__return_zero' );
 			$this->assertFalse( is_site_meta_supported() );
 		}
 
+		/**
+		 * @covers ::add_site_meta
+		 */
 		public function test_add() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -65,6 +74,9 @@
 			$this->assertSame( 'bar', get_site_meta( self::$site_id, 'foo', true ) );
 		}
 
+		/**
+		 * @covers ::add_site_meta
+		 */
 		public function test_add_unique() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -74,6 +86,9 @@
 			$this->assertFalse( add_site_meta( self::$site_id, 'foo', 'bar', true ) );
 		}
 
+		/**
+		 * @covers ::delete_site_meta
+		 */
 		public function test_delete() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -85,6 +100,9 @@
 			$this->assertEmpty( get_site_meta( self::$site_id, 'foo', true ) );
 		}
 
+		/**
+		 * @covers ::delete_site_meta
+		 */
 		public function test_delete_with_invalid_meta_key_should_return_false() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -93,6 +111,9 @@
 			$this->assertFalse( delete_site_meta( self::$site_id, 'foo' ) );
 		}
 
+		/**
+		 * @covers ::delete_site_meta
+		 */
 		public function test_delete_should_respect_meta_value() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -107,6 +128,9 @@
 			$this->assertSame( array( 'baz' ), $metas );
 		}
 
+		/**
+		 * @covers ::get_site_meta
+		 */
 		public function test_get_with_no_key_should_fetch_all_keys() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -124,6 +148,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers ::get_site_meta
+		 */
 		public function test_get_with_key_should_fetch_all_for_key() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -139,6 +166,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers ::get_site_meta
+		 */
 		public function test_get_should_respect_single_true() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -151,6 +181,9 @@
 			$this->assertSame( 'bar', $found );
 		}
 
+		/**
+		 * @covers ::update_site_meta
+		 */
 		public function test_update_should_pass_to_add_when_no_value_exists_for_key() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -164,6 +197,9 @@
 			$this->assertSame( 'bar', $meta );
 		}
 
+		/**
+		 * @covers ::update_site_meta
+		 */
 		public function test_update_should_return_true_when_updating_existing_value_for_key() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -178,6 +214,9 @@
 			$this->assertSame( 'baz', $meta );
 		}
 
+		/**
+		 * @covers ::delete_site_meta_by_key
+		 */
 		public function test_delete_by_key() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -195,6 +234,9 @@
 			$this->assertSame( '', get_site_meta( self::$site_id2, 'unique_delete_by_key', true ) );
 		}
 
+		/**
+		 * @covers ::wp_delete_site
+		 */
 		public function test_site_meta_should_be_deleted_when_site_is_deleted() {
 			if ( ! is_site_meta_supported() ) {
 				$this->markTestSkipped( 'Test only runs with the blogmeta database table installed.' );
@@ -219,6 +261,9 @@
 			$this->assertSame( '', get_site_meta( $site_id, 'foo1', true ) );
 		}
 
+		/**
+		 * @covers ::update_sitemeta_cache
+		 */
 		public function test_update_site_meta_cache() {
 			global $wpdb;
 
@@ -234,6 +279,9 @@
 			$this->assertSame( $num_queries, $wpdb->num_queries );
 		}
 
+		/**
+		 * @covers ::update_site_meta
+		 */
 		public function test_query_update_site_meta_cache_true() {
 			global $wpdb;
 
@@ -255,6 +303,9 @@
 			$this->assertSame( $num_queries, $wpdb->num_queries );
 		}
 
+		/**
+		 * @covers ::update_site_meta
+		 */
 		public function test_query_update_site_meta_cache_false() {
 			global $wpdb;
 
@@ -278,6 +329,8 @@
 
 		/**
 		 * @ticket 40229
+		 *
+		 * @covers ::add_site_meta
 		 */
 		public function test_add_site_meta_should_bust_get_sites_cache() {
 			if ( ! is_site_meta_supported() ) {
@@ -320,6 +373,8 @@
 
 		/**
 		 * @ticket 40229
+		 *
+		 * @covers ::update_site_meta
 		 */
 		public function test_update_site_meta_should_bust_get_sites_cache() {
 			if ( ! is_site_meta_supported() ) {
@@ -363,6 +418,8 @@
 
 		/**
 		 * @ticket 40229
+		 *
+		 * @covers ::delete_site_meta
 		 */
 		public function test_delete_site_meta_should_bust_get_sites_cache() {
 			if ( ! is_site_meta_supported() ) {
Index: tests/phpunit/tests/multisite/siteQuery.php
===================================================================
--- tests/phpunit/tests/multisite/siteQuery.php	(revision 49699)
+++ tests/phpunit/tests/multisite/siteQuery.php	(working copy)
@@ -114,6 +114,9 @@
 			wp_update_network_site_counts();
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_ID() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -126,6 +129,9 @@
 			$this->assertSameSets( array( self::$site_ids['www.w.org/'] ), $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_number() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -138,6 +144,9 @@
 			$this->assertSame( 3, count( $found ) );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_site__in_with_single_id() {
 			$expected = array( self::$site_ids['wordpress.org/foo/'] );
 
@@ -152,6 +161,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_site__in_with_multiple_ids() {
 			$expected = array( self::$site_ids['wordpress.org/'], self::$site_ids['wordpress.org/foo/'] );
 
@@ -168,6 +180,8 @@
 
 		/**
 		 * Test the `count` query var
+		 *
+		 * @covers WP_Site_Query::query
 		 */
 		public function test_wp_site_query_by_site__in_and_count_with_multiple_ids() {
 			$expected = array( self::$site_ids['wordpress.org/'], self::$site_ids['wordpress.org/foo/'] );
@@ -184,6 +198,9 @@
 			$this->assertSame( 2, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_site__not_in_with_single_id() {
 			$excluded = array( self::$site_ids['wordpress.org/foo/'] );
 			$expected = array_diff( self::$site_ids, $excluded );
@@ -202,6 +219,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_site__not_in_with_multiple_ids() {
 			$excluded = array( self::$site_ids['wordpress.org/'], self::$site_ids['wordpress.org/foo/'] );
 			$expected = array_diff( self::$site_ids, $excluded );
@@ -220,6 +240,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_network_id_with_order() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -251,6 +274,9 @@
 			$this->assertSame( array_reverse( $expected ), $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_network_id_with_existing_sites() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -268,6 +294,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_network_id_with_no_existing_sites() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -280,6 +309,9 @@
 			$this->assertEmpty( $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_domain() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -299,6 +331,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_domain_and_offset() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -318,6 +353,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_domain_and_number_and_offset() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -337,6 +375,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_domain__in_with_single_domain() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -354,6 +395,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_domain__in_with_multiple_domains() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -374,6 +418,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_domain__not_in_with_single_domain() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -395,6 +442,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_domain__not_in_with_multiple_domains() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -413,6 +463,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_path_with_expected_results() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -430,6 +483,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_path_with_no_expected_results() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -442,8 +498,11 @@
 			$this->assertEmpty( $found );
 		}
 
-		// archived, mature, spam, deleted, public.
-
+		/**
+		 * archived, mature, spam, deleted, public.
+		 *
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_archived() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -458,6 +517,9 @@
 			$this->assertSameSets( array_values( self::$site_ids ), $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_mature() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -472,6 +534,9 @@
 			$this->assertSameSets( array_values( self::$site_ids ), $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_spam() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -486,6 +551,9 @@
 			$this->assertSameSets( array_values( self::$site_ids ), $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_deleted() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -500,6 +568,9 @@
 			$this->assertSameSets( array_values( self::$site_ids ), $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_deleted_with_no_results() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -512,6 +583,9 @@
 			$this->assertEmpty( $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_public() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -526,6 +600,9 @@
 			$this->assertSameSets( array_values( self::$site_ids ), $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_lang_id_with_zero() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -540,6 +617,9 @@
 			$this->assertSameSets( array_diff( array_values( self::$site_ids ), array( self::$site_ids['www.w.org/make/'] ) ), $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_lang_id() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -556,6 +636,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_lang_id_with_no_results() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -568,6 +651,9 @@
 			$this->assertEmpty( $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_lang__in() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -584,6 +670,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_lang__in_with_multiple_ids() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -598,6 +687,9 @@
 			$this->assertSameSets( array_values( self::$site_ids ), $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_lang__not_in() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -614,6 +706,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_lang__not_in_with_multiple_ids() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -626,6 +721,9 @@
 			$this->assertEmpty( $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_search_with_text_in_domain() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -643,6 +741,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_search_with_text_in_path() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -663,6 +764,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_search_with_text_in_path_and_domain() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -681,6 +785,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_search_with_text_in_path_and_domain_order_by_domain_desc() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -701,6 +808,9 @@
 			$this->assertSame( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_search_with_text_in_path_exclude_domain_from_search() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -718,6 +828,9 @@
 			$this->assertSame( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_search_with_text_in_domain_exclude_path_from_search() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -736,6 +849,9 @@
 			$this->assertSame( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_search_with_wildcard_in_text() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -754,6 +870,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_search_with_wildcard_in_text_exclude_path_from_search() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -772,6 +891,9 @@
 			$this->assertSameSets( $expected, $found );
 		}
 
+		/**
+		 * @covers WP_Site_Query::query
+		 */
 		public function test_wp_site_query_by_search_with_wildcard_in_text_exclude_domain_from_search() {
 			$q     = new WP_Site_Query();
 			$found = $q->query(
@@ -791,6 +913,8 @@
 
 		/**
 		 * @ticket 41197
+		 *
+		 * @covers WP_Site_Query::query
 		 */
 		public function test_wp_site_query_cache_with_different_fields_no_count() {
 			global $wpdb;
@@ -819,6 +943,8 @@
 
 		/**
 		 * @ticket 41197
+		 *
+		 * @covers WP_Site_Query::query
 		 */
 		public function test_wp_site_query_cache_with_different_fields_active_count() {
 			global $wpdb;
@@ -849,6 +975,8 @@
 
 		/**
 		 * @ticket 41197
+		 *
+		 * @covers WP_Site_Query::query
 		 */
 		public function test_wp_site_query_cache_with_same_fields_different_count() {
 			global $wpdb;
@@ -880,6 +1008,8 @@
 		/**
 		 * @ticket 40229
 		 * @dataProvider data_wp_site_query_meta_query
+		 *
+		 * @covers WP_Site_Query::query
 		 */
 		public function test_wp_site_query_meta_query( $query, $expected, $strict ) {
 			if ( ! is_site_meta_supported() ) {
@@ -1067,6 +1197,8 @@
 		/**
 		 * @ticket 45749
 		 * @ticket 47599
+		 *
+		 * @covers WP_Site_Query::query
 		 */
 		public function test_sites_pre_query_filter_should_bypass_database_query() {
 			global $wpdb;
@@ -1098,6 +1230,8 @@
 
 		/**
 		 * @ticket 51333
+		 *
+		 * @covers WP_Site_Query::query
 		 */
 		public function test_sites_pre_query_filter_should_set_sites_property() {
 			add_filter( 'sites_pre_query', array( __CLASS__, 'filter_sites_pre_query_and_set_sites' ), 10, 2 );
Index: tests/phpunit/tests/multisite/updateBlogDetails.php
===================================================================
--- tests/phpunit/tests/multisite/updateBlogDetails.php	(revision 49699)
+++ tests/phpunit/tests/multisite/updateBlogDetails.php	(working copy)
@@ -10,6 +10,8 @@
 		/**
 		 * If `update_blog_details()` is called with any kind of empty arguments, it
 		 * should return false.
+		 *
+		 * @covers ::update_blog_details
 		 */
 		function test_update_blog_details_with_empty_args() {
 			$result = update_blog_details( 1, array() );
@@ -18,6 +20,8 @@
 
 		/**
 		 * If the ID passed is not that of a current site, we should expect false.
+		 *
+		 * @covers ::update_blog_details
 		 */
 		function test_update_blog_details_invalid_blog_id() {
 			$result = update_blog_details( 999, array( 'domain' => 'example.com' ) );
@@ -24,6 +28,9 @@
 			$this->assertFalse( $result );
 		}
 
+		/**
+		 * @covers ::update_blog_details
+		 */
 		function test_update_blog_details() {
 			$blog_id = self::factory()->blog->create();
 
@@ -54,6 +61,8 @@
 		 * @param string $action     The hook expected to fire for the flag name and flag combination.
 		 *
 		 * @dataProvider data_flag_hooks
+		 *
+		 * @covers ::update_blog_details
 		 */
 		public function test_update_blog_details_flag_action( $flag, $flag_value, $hook ) {
 			global $test_action_counter;
@@ -111,6 +120,8 @@
 		 * should have a leading and trailing slash.
 		 *
 		 * @dataProvider data_single_directory_path
+		 *
+		 * @covers ::update_blog_details
 		 */
 		public function test_update_blog_details_single_directory_path( $path, $expected ) {
 			update_blog_details( 1, array( 'path' => $path ) );
Index: tests/phpunit/tests/multisite/uploadIsUserOverQuota.php
===================================================================
--- tests/phpunit/tests/multisite/uploadIsUserOverQuota.php	(revision 49699)
+++ tests/phpunit/tests/multisite/uploadIsUserOverQuota.php	(working copy)
@@ -27,6 +27,9 @@
 			parent::tearDown();
 		}
 
+		/**
+		 * @covers ::upload_is_user_over_quota
+		 */
 		public function test_upload_is_user_over_quota_allowed_0_used_5() {
 			add_filter( 'get_space_allowed', '__return_zero' );
 			add_filter( 'pre_get_space_used', array( $this, '_filter_space_5' ) );
@@ -37,6 +40,9 @@
 			$this->assertTrue( $result );
 		}
 
+		/**
+		 * @covers ::upload_is_user_over_quota
+		 */
 		public function test_upload_is_user_over_quota_allowed_0_used_0() {
 			add_filter( 'get_space_allowed', '__return_zero' );
 			add_filter( 'pre_get_space_used', '__return_zero' );
@@ -47,6 +53,9 @@
 			$this->assertFalse( $result );
 		}
 
+		/**
+		 * @covers ::upload_is_user_over_quota
+		 */
 		public function test_upload_is_user_over_quota_allowed_0_used_100() {
 			add_filter( 'get_space_allowed', '__return_zero' );
 			add_filter( 'pre_get_space_used', array( $this, '_filter_space_100' ) );
@@ -57,6 +66,9 @@
 			$this->assertTrue( $result );
 		}
 
+		/**
+		 * @covers ::upload_is_user_over_quota
+		 */
 		public function test_upload_is_user_over_quota_allowed_100_used_0() {
 			add_filter( 'get_space_allowed', array( $this, '_filter_space_100' ) );
 			add_filter( 'pre_get_space_used', '__return_zero' );
@@ -67,6 +79,9 @@
 			$this->assertFalse( $result );
 		}
 
+		/**
+		 * @covers ::upload_is_user_over_quota
+		 */
 		public function test_upload_is_user_over_quota_allowed_100_used_100() {
 			add_filter( 'get_space_allowed', array( $this, '_filter_space_100' ) );
 			add_filter( 'pre_get_space_used', array( $this, '_filter_space_100' ) );
@@ -77,6 +92,9 @@
 			$this->assertFalse( $result );
 		}
 
+		/**
+		 * @covers ::upload_is_user_over_quota
+		 */
 		public function test_upload_is_user_over_quota_allowed_100_used_200() {
 			add_filter( 'get_space_allowed', array( $this, '_filter_space_100' ) );
 			add_filter( 'pre_get_space_used', array( $this, '_filter_space_200' ) );
@@ -87,6 +105,9 @@
 			$this->assertTrue( $result );
 		}
 
+		/**
+		 * @covers ::upload_is_user_over_quota
+		 */
 		public function test_upload_is_user_over_quota_allowed_negative_used_100() {
 			add_filter( 'get_space_allowed', array( $this, '_filter_space_negative' ) );
 			add_filter( 'pre_get_space_used', array( $this, '_filter_space_100' ) );
@@ -100,6 +121,8 @@
 		/**
 		 * When the upload space check is disabled, using more than the available
 		 * quota is allowed.
+		 *
+		 * @covers ::upload_is_user_over_quota
 		 */
 		public function test_upload_is_user_over_check_disabled() {
 			update_site_option( 'upload_space_check_disabled', true );
Index: tests/phpunit/tests/multisite/wpGetSites.php
===================================================================
--- tests/phpunit/tests/multisite/wpGetSites.php	(revision 49699)
+++ tests/phpunit/tests/multisite/wpGetSites.php	(working copy)
@@ -51,6 +51,8 @@
 
 		/**
 		 * @expectedDeprecated wp_get_sites
+		 *
+		 * @covers ::wp_get_sites
 		 */
 		public function test_wp_get_sites_site_is_expected_array() {
 
@@ -82,6 +84,8 @@
 		 * @param $expected
 		 * @param $args
 		 * @param $error
+		 *
+		 * @covers ::wp_get_sites
 		 */
 		public function test_wp_get_sites( $expected, $args, $error ) {
 			$this->assertCount( $expected, wp_get_sites( $args ), $error );
Index: tests/phpunit/tests/multisite/wpInstallDefaults.php
===================================================================
--- tests/phpunit/tests/multisite/wpInstallDefaults.php	(revision 49699)
+++ tests/phpunit/tests/multisite/wpInstallDefaults.php	(working copy)
@@ -30,6 +30,9 @@
 
 		/**
 		 * @ticket 40036
+		 *
+		 * @covers ::get_page_by_path
+		 * @covers ::get_comments
 		 */
 		public function test_empty_option_should_fall_back_to_default() {
 			/*
@@ -56,6 +59,9 @@
 
 		/**
 		 * @ticket 40036
+		 *
+		 * @covers ::get_page_by_path
+		 * @covers ::get_comments
 		 */
 		public function test_non_default_option_values() {
 			/*
Index: tests/phpunit/tests/multisite/wpMSSitesListTable.php
===================================================================
--- tests/phpunit/tests/multisite/wpMSSitesListTable.php	(revision 49699)
+++ tests/phpunit/tests/multisite/wpMSSitesListTable.php	(working copy)
@@ -87,6 +87,10 @@
 			}
 		}
 
+		/**
+		 * @covers WP_MS_Sites_List_Table::prepare_items
+		 * @covers WP_MS_Sites_List_Table::items
+		 */
 		public function test_ms_sites_list_table_default_items() {
 			$this->table->prepare_items();
 
@@ -96,6 +100,10 @@
 			$this->assertSameSets( array( 1 ) + self::$site_ids, $items );
 		}
 
+		/**
+		 * @covers WP_MS_Sites_List_Table::prepare_items
+		 * @covers WP_MS_Sites_List_Table::items
+		 */
 		public function test_ms_sites_list_table_subdirectory_path_search_items() {
 			if ( is_subdomain_install() ) {
 				$this->markTestSkipped( 'Path search is not available for subdomain configurations.' );
@@ -122,6 +130,10 @@
 			$this->assertSameSets( $expected, $items );
 		}
 
+		/**
+		 * @covers WP_MS_Sites_List_Table::prepare_items
+		 * @covers WP_MS_Sites_List_Table::items
+		 */
 		public function test_ms_sites_list_table_subdirectory_multiple_path_search_items() {
 			if ( is_subdomain_install() ) {
 				$this->markTestSkipped( 'Path search is not available for subdomain configurations.' );
@@ -144,6 +156,10 @@
 			$this->assertSameSets( $expected, $items );
 		}
 
+		/**
+		 * @covers WP_MS_Sites_List_Table::prepare_items
+		 * @covers WP_MS_Sites_List_Table::items
+		 */
 		public function test_ms_sites_list_table_invalid_path_search_items() {
 			$_REQUEST['s'] = 'foobar';
 
@@ -157,6 +173,10 @@
 			$this->assertEmpty( $items );
 		}
 
+		/**
+		 * @covers WP_MS_Sites_List_Table::prepare_items
+		 * @covers WP_MS_Sites_List_Table::items
+		 */
 		public function test_ms_sites_list_table_subdomain_domain_search_items() {
 			if ( ! is_subdomain_install() ) {
 				$this->markTestSkipped( 'Domain search is not available for subdirectory configurations.' );
@@ -181,6 +201,10 @@
 			$this->assertSameSets( $expected, $items );
 		}
 
+		/**
+		 * @covers WP_MS_Sites_List_Table::prepare_items
+		 * @covers WP_MS_Sites_List_Table::items
+		 */
 		public function test_ms_sites_list_table_subdomain_domain_search_items_with_trailing_wildcard() {
 			if ( ! is_subdomain_install() ) {
 				$this->markTestSkipped( 'Domain search is not available for subdirectory configurations.' );
@@ -205,6 +229,10 @@
 			$this->assertSameSets( $expected, $items );
 		}
 
+		/**
+		 * @covers WP_MS_Sites_List_Table::prepare_items
+		 * @covers WP_MS_Sites_List_Table::items
+		 */
 		public function test_ms_sites_list_table_subdirectory_path_search_items_with_trailing_wildcard() {
 			if ( is_subdomain_install() ) {
 				$this->markTestSkipped( 'Path search is not available for subdomain configurations.' );
Index: tests/phpunit/tests/multisite/wpmuValidateBlogSignup.php
===================================================================
--- tests/phpunit/tests/multisite/wpmuValidateBlogSignup.php	(revision 49699)
+++ tests/phpunit/tests/multisite/wpmuValidateBlogSignup.php	(working copy)
@@ -52,6 +52,8 @@
 
 		/**
 		 * @dataProvider data_validate_blogname
+		 *
+		 * @covers ::wpmu_validate_blog_signup
 		 */
 		public function test_validate_blogname( $blog_name, $error_message ) {
 			$result = wpmu_validate_blog_signup( $blog_name, 'Foo Site Title', get_userdata( self::$super_admin_id ) );
@@ -81,11 +83,17 @@
 			return $data;
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_blog_signup
+		 */
 		public function test_validate_empty_blog_title() {
 			$result = wpmu_validate_blog_signup( 'uniqueblogname1234', '', get_userdata( self::$super_admin_id ) );
 			$this->assertContains( 'blog_title', $result['errors']->get_error_codes(), 'Site titles must not be empty.' );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_blog_signup
+		 */
 		public function test_validate_blogname_from_same_existing_user() {
 			$result = wpmu_validate_blog_signup( self::$existing_user_login, 'Foo Site Title', get_userdata( self::$existing_user_id ) );
 			$this->assertEmpty( $result['errors']->get_error_codes() );
@@ -95,6 +103,8 @@
 		 * @ticket 39676
 		 *
 		 * @dataProvider data_filter_minimum_site_name_length
+		 *
+		 * @covers ::wpmu_validate_blog_signup
 		 */
 		public function test_filter_minimum_site_name_length( $site_name, $minimum_length, $expect_error ) {
 			$this->minimum_site_name_length = $minimum_length;
@@ -129,6 +139,8 @@
 
 		/**
 		 * @ticket 43667
+		 *
+		 * @covers ::wpmu_validate_blog_signup
 		 */
 		public function test_signup_nonce_check() {
 			$original_php_self       = $_SERVER['PHP_SELF'];
@@ -144,6 +156,8 @@
 
 		/**
 		 * @ticket 43667
+		 *
+		 * @covers ::wpmu_validate_blog_signup
 		 */
 		public function test_signup_nonce_check_invalid() {
 			$original_php_self       = $_SERVER['PHP_SELF'];
Index: tests/phpunit/tests/multisite/wpmuValidateUserSignup.php
===================================================================
--- tests/phpunit/tests/multisite/wpmuValidateUserSignup.php	(revision 49699)
+++ tests/phpunit/tests/multisite/wpmuValidateUserSignup.php	(working copy)
@@ -30,6 +30,9 @@
 			);
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_fail_for_illegal_names() {
 			$illegal = array( 'foo123', 'bar123' );
 			update_site_option( 'illegal_names', $illegal );
@@ -40,6 +43,9 @@
 			}
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_fail_for_unsafe_email_address() {
 			add_filter( 'is_email_address_unsafe', '__return_true' );
 			$v = wpmu_validate_user_signup( 'foo123', 'foo@example.com' );
@@ -47,6 +53,9 @@
 			remove_filter( 'is_email_address_unsafe', '__return_true' );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_fail_for_invalid_email_address() {
 			add_filter( 'is_email', '__return_false' );
 			$v = wpmu_validate_user_signup( 'foo123', 'foo@example.com' );
@@ -54,6 +63,9 @@
 			remove_filter( 'is_email', '__return_false' );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_fail_for_emails_from_disallowed_domains() {
 			$domains = array( 'foo.com', 'bar.org' );
 			update_site_option( 'limited_email_domains', $domains );
@@ -62,6 +74,9 @@
 			$this->assertContains( 'user_email', $v['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_not_fail_for_emails_from_allowed_domains_with_mixed_case() {
 			$domains = array( 'foo.com', 'bar.org' );
 			update_site_option( 'limited_email_domains', $domains );
@@ -70,6 +85,9 @@
 			$this->assertNotContains( 'user_email', $v['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_fail_for_existing_user_name() {
 			$u = self::factory()->user->create( array( 'user_login' => 'foo123' ) );
 			$v = wpmu_validate_user_signup( 'foo123', 'foo@example.com' );
@@ -76,6 +94,9 @@
 			$this->assertContains( 'user_name', $v['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_fail_for_existing_user_email() {
 			$u = self::factory()->user->create( array( 'user_email' => 'foo@example.com' ) );
 			$v = wpmu_validate_user_signup( 'foo123', 'foo@example.com' );
@@ -82,6 +103,9 @@
 			$this->assertContains( 'user_email', $v['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_fail_for_existing_signup_with_same_username() {
 			// Don't send notifications.
 			add_filter( 'wpmu_signup_user_notification', '__return_false' );
@@ -92,6 +116,9 @@
 			$this->assertContains( 'user_name', $v['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_not_fail_for_existing_signup_with_same_username_if_signup_is_old() {
 			// Don't send notifications.
 			add_filter( 'wpmu_signup_user_notification', '__return_false' );
@@ -106,6 +133,9 @@
 			$this->assertNotContains( 'user_name', $v['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_fail_for_existing_signup_with_same_email() {
 			// Don't send notifications.
 			add_filter( 'wpmu_signup_user_notification', '__return_false' );
@@ -116,6 +146,9 @@
 			$this->assertContains( 'user_email', $v['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_should_not_fail_for_existing_signup_with_same_email_if_signup_is_old() {
 			// Don't send notifications.
 			add_filter( 'wpmu_signup_user_notification', '__return_false' );
@@ -132,6 +165,8 @@
 
 		/**
 		 * @ticket 43232
+		 *
+		 *  @covers ::wpmu_validate_user_signup
 		 */
 		public function test_should_not_fail_for_data_used_by_a_deleted_user() {
 			global $wpdb;
@@ -161,6 +196,9 @@
 			$this->assertContains( 'user_email', $valid['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_invalid_email_address_with_banned_domains_results_in_error() {
 			update_site_option( 'banned_email_domains', 'bar.com' );
 			$valid = wpmu_validate_user_signup( 'validusername', 'invalid-email' );
@@ -169,6 +207,9 @@
 			$this->assertContains( 'user_email', $valid['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_incomplete_email_address_with_no_banned_domains_results_in_error() {
 			$valid = wpmu_validate_user_signup( 'validusername', 'incomplete@email' );
 
@@ -175,6 +216,9 @@
 			$this->assertContains( 'user_email', $valid['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_valid_email_address_matching_banned_domain_results_in_error() {
 			update_site_option( 'banned_email_domains', 'bar.com' );
 			$valid = wpmu_validate_user_signup( 'validusername', 'email@bar.com' );
@@ -183,6 +227,9 @@
 			$this->assertContains( 'user_email', $valid['errors']->get_error_codes() );
 		}
 
+		/**
+		 *  @covers ::wpmu_validate_user_signup
+		 */
 		public function test_valid_email_address_not_matching_banned_domain_returns_in_success() {
 			update_site_option( 'banned_email_domains', 'bar.com' );
 			$valid = wpmu_validate_user_signup( 'validusername', 'email@example.com' );
@@ -193,6 +240,8 @@
 
 		/**
 		 * @ticket 43667
+		 *
+		 *  @covers ::wpmu_validate_user_signup
 		 */
 		public function test_signup_nonce_check() {
 			$original_php_self       = $_SERVER['PHP_SELF'];
@@ -208,6 +257,8 @@
 
 		/**
 		 * @ticket 43667
+		 *
+		 *  @covers ::wpmu_validate_user_signup
 		 */
 		public function test_signup_nonce_check_invalid() {
 			$original_php_self       = $_SERVER['PHP_SELF'];
