WordPress.org

Make WordPress Core

Changeset 40520


Ignore:
Timestamp:
04/22/2017 06:58:46 PM (2 years ago)
Author:
johnbillion
Message:

Build/Test Tools: Introduce ms-required and ms-excluded groups for tests.

Tests in the ms-excluded group are now excluded when running tests with multisite enabled, and tests in the ms-required group are excluded when running tests without multisite enabled. The end result is a significantly reduced number of skipped tests polluting PHPUnit's output, which means verbose mode can be used to more easily see which tests are skipped or incomplete, and why.

See #40531

Location:
trunk
Files:
20 edited

Legend:

Unmodified
Added
Removed
  • trunk/phpunit.xml.dist

    r38840 r40520  
    2424            <group>ajax</group>
    2525            <group>ms-files</group>
     26            <group>ms-required</group>
    2627            <group>external-http</group>
    2728        </exclude>
  • trunk/tests/phpunit/multisite.xml

    r38840 r40520  
    2525            <group>ajax</group>
    2626            <group>ms-files</group>
     27            <group>ms-excluded</group>
    2728            <group>external-http</group>
    2829            <group>oembed-headers</group>
  • trunk/tests/phpunit/tests/adminbar.php

    r39948 r40520  
    7373    /**
    7474     * @ticket 25162
     75     * @group ms-excluded
    7576     */
    7677    public function test_admin_bar_contains_correct_links_for_users_with_no_role() {
     
    101102    /**
    102103     * @ticket 25162
     104     * @group ms-excluded
    103105     */
    104106    public function test_admin_bar_contains_correct_links_for_users_with_role() {
     
    132134     * @ticket 25162
    133135     * @group multisite
     136     * @group ms-required
    134137     */
    135138    public function test_admin_bar_contains_correct_links_for_users_with_no_role_on_blog() {
     
    182185     * @ticket 25162
    183186     * @group multisite
     187     * @group ms-required
    184188     */
    185189    public function test_admin_bar_contains_correct_links_for_users_with_no_role_on_network() {
     
    426430    /**
    427431     * @ticket 37949
     432     * @group ms-excluded
    428433     */
    429434    public function test_admin_bar_contains_correct_about_link_for_users_with_role() {
     
    446451    /**
    447452     * @ticket 37949
     453     * @group ms-excluded
    448454     */
    449455    public function test_admin_bar_contains_correct_about_link_for_users_with_no_role() {
     
    468474     * @ticket 37949
    469475     * @group multisite
     476     * @group ms-required
    470477     */
    471478    public function test_admin_bar_contains_correct_about_link_for_users_with_no_role_in_multisite() {
     
    587594    /**
    588595     * @ticket 39082
     596     * @group ms-required
    589597     */
    590598    public function test_my_sites_network_menu_for_regular_user() {
     
    605613    /**
    606614     * @ticket 39082
     615     * @group ms-required
    607616     */
    608617    public function test_my_sites_network_menu_for_super_admin() {
     
    625634    /**
    626635     * @ticket 39082
     636     * @group ms-required
    627637     */
    628638    public function test_my_sites_network_menu_for_regular_user_with_network_caps() {
  • trunk/tests/phpunit/tests/customize/setting.php

    r40392 r40520  
    562562     * @ticket 31428
    563563     * @group multisite
     564     * @group ms-required
    564565     */
    565566    function test_previewing_with_switch_to_blog() {
  • trunk/tests/phpunit/tests/general/template.php

    r38901 r40520  
    7373     * @group site_icon
    7474     * @group multisite
     75     * @group ms-required
    7576     */
    7677    function test_has_site_icon_returns_true_when_called_for_other_site_with_site_icon_set() {
     
    9091     * @group site_icon
    9192     * @group multisite
     93     * @group ms-required
    9294     */
    9395    function test_has_site_icon_returns_false_when_called_for_other_site_without_site_icon_set() {
     
    265267     * @group custom_logo
    266268     * @group multisite
     269     * @group ms-required
    267270     */
    268271    function test_has_custom_logo_returns_true_when_called_for_other_site_with_custom_logo_set() {
     
    282285     * @group custom_logo
    283286     * @group multisite
     287     * @group ms-required
    284288     */
    285289    function test_has_custom_logo_returns_false_when_called_for_other_site_without_custom_logo_set() {
     
    313317     * @group custom_logo
    314318     * @group multisite
     319     * @group ms-required
    315320     */
    316321    function test_get_custom_logo_returns_logo_when_called_for_other_site_with_custom_logo_set() {
     
    535540    /**
    536541     * @ticket 38253
     542     * @group ms-required
    537543     */
    538544    function test_get_site_icon_url_preserves_switched_state() {
     
    557563    /**
    558564     * @ticket 38253
     565     * @group ms-required
    559566     */
    560567    function test_has_custom_logo_preserves_switched_state() {
     
    579586    /**
    580587     * @ticket 38253
     588     * @group ms-required
    581589     */
    582590    function test_get_custom_logo_preserves_switched_state() {
  • trunk/tests/phpunit/tests/l10n/getLocale.php

    r39005 r40520  
    1818    }
    1919
     20    /**
     21     * @group ms-required
     22     */
    2023    public function test_local_option_should_take_precedence_on_multisite() {
    2124        if ( ! is_multisite() ) {
     
    3639    }
    3740
     41    /**
     42     * @group ms-required
     43     */
    3844    public function test_network_option_should_be_fallback_on_multisite() {
    3945        if ( ! is_multisite() ) {
     
    5359    }
    5460
     61    /**
     62     * @group ms-excluded
     63     */
    5564    public function test_option_should_be_respected_on_nonmultisite() {
    5665        if ( is_multisite() ) {
  • trunk/tests/phpunit/tests/l10n/getUserLocale.php

    r38955 r40520  
    6767    }
    6868
     69    /**
     70     * @group ms-required
     71     */
    6972    public function test_user_locale_is_same_across_network() {
    7073        if ( ! is_multisite() ) {
  • trunk/tests/phpunit/tests/link/getDashboardUrl.php

    r39590 r40520  
    3939    /**
    4040     * @ticket 39065
     41     * @group ms-required
    4142     */
    4243    public function test_get_dashboard_url_for_network_administrator_with_no_sites() {
     
    5960    /**
    6061     * @ticket 39065
     62     * @group ms-required
    6163     */
    6264    public function test_get_dashboard_url_for_administrator_of_different_site() {
  • trunk/tests/phpunit/tests/oembed/controller.php

    r36307 r40520  
    254254    /**
    255255     * @group multisite
     256     * @group ms-required
    256257     */
    257258    function test_request_ms_child_in_root_blog() {
  • trunk/tests/phpunit/tests/option/networkOption.php

    r39556 r40520  
    1212 */
    1313class Tests_Option_NetworkOption extends WP_UnitTestCase {
     14
     15    /**
     16     * @group ms-required
     17     */
    1418    function test_add_network_option_not_available_on_other_network() {
    1519        if ( ! is_multisite() ) {
     
    2529    }
    2630
     31    /**
     32     * @group ms-required
     33     */
    2734    function test_add_network_option_available_on_same_network() {
    2835        if ( ! is_multisite() ) {
     
    3845    }
    3946
     47    /**
     48     * @group ms-required
     49     */
    4050    function test_delete_network_option_on_only_one_network() {
    4151        if ( ! is_multisite() ) {
     
    5565    /**
    5666     * @ticket 22846
     67     * @group ms-excluded
    5768     */
    5869    public function test_add_network_option_is_not_stored_as_autoload_option() {
     
    7283    /**
    7384     * @ticket 22846
     85     * @group ms-excluded
    7486     */
    7587    public function test_update_network_option_is_not_stored_as_autoload_option() {
  • trunk/tests/phpunit/tests/option/siteTransient.php

    r39556 r40520  
    4545    /**
    4646     * @ticket 22846
     47     * @group ms-excluded
    4748     */
    4849    public function test_set_site_transient_is_not_stored_as_autoload_option() {
  • trunk/tests/phpunit/tests/rest-api/rest-users-controller.php

    r40378 r40520  
    993993    }
    994994
     995    /**
     996     * @group ms-required
     997     */
    995998    public function test_create_new_network_user_on_site_does_not_add_user_to_sub_site() {
    996999        if ( ! is_multisite() ) {
     
    10221025    }
    10231026
     1027    /**
     1028     * @group ms-required
     1029     */
    10241030    public function test_create_new_network_user_on_sub_site_adds_user_to_site() {
    10251031        if ( ! is_multisite() ) {
     
    10551061    }
    10561062
     1063    /**
     1064     * @group ms-required
     1065     */
    10571066    public function test_create_existing_network_user_on_sub_site_has_error() {
    10581067        if ( ! is_multisite() ) {
     
    14421451    }
    14431452
     1453    /**
     1454     * @group ms-excluded
     1455     */
    14441456    public function test_update_user_role_invalid_privilege_deescalation() {
    14451457        if ( is_multisite() ) {
     
    14721484    }
    14731485
     1486    /**
     1487     * @group ms-required
     1488     */
    14741489    public function test_update_user_role_privilege_deescalation_multisite() {
    14751490        if ( ! is_multisite() ) {
     
    22212236    /**
    22222237     * @ticket 39701
     2238     * @group ms-required
    22232239     */
    22242240    public function test_get_item_from_different_site_as_site_administrator() {
     
    22422258    /**
    22432259     * @ticket 39701
     2260     * @group ms-required
    22442261     */
    22452262    public function test_get_item_from_different_site_as_network_administrator() {
     
    22632280    /**
    22642281     * @ticket 39701
     2282     * @group ms-required
    22652283     */
    22662284    public function test_update_item_from_different_site_as_site_administrator() {
     
    22862304    /**
    22872305     * @ticket 39701
     2306     * @group ms-required
    22882307     */
    22892308    public function test_update_item_from_different_site_as_network_administrator() {
     
    23092328    /**
    23102329     * @ticket 39701
     2330     * @group ms-required
    23112331     */
    23122332    public function test_delete_item_from_different_site_as_site_administrator() {
     
    23322352    /**
    23332353     * @ticket 39701
     2354     * @group ms-required
    23342355     */
    23352356    public function test_delete_item_from_different_site_as_network_administrator() {
  • trunk/tests/phpunit/tests/rewrite.php

    r38654 r40520  
    120120     * @ticket 35531
    121121     * @group multisite
     122     * @group ms-required
    122123     */
    123124    function test_url_to_postid_of_http_site_when_current_site_uses_https() {
     
    316317    /**
    317318     * Reveals bug introduced in WP 3.0
    318      *
    319      * Run tests using multisite `phpunit -c multisite`
     319     * @group ms-required
    320320     */
    321321    function test_url_to_postid_ms_home_url_collision() {
     
    323323        if ( ! is_multisite() ) {
    324324            $this->markTestSkipped( 'test_url_to_postid_ms_home_url_collision requires multisite' );
    325             return false;
    326325        }
    327326
  • trunk/tests/phpunit/tests/theme/WPTheme.php

    r37202 r40520  
    146146     *
    147147     * @ticket 30594
     148     * @group ms-required
    148149     */
    149150    function test_wp_theme_network_enable_single_theme() {
     
    166167     *
    167168     * @ticket 30594
     169     * @group ms-required
    168170     */
    169171    function test_wp_theme_network_enable_multiple_themes() {
     
    186188     *
    187189     * @ticket 30594
     190     * @group ms-required
    188191     */
    189192    function test_network_disable_single_theme() {
     
    210213     *
    211214     * @ticket 30594
     215     * @group ms-required
    212216     */
    213217    function test_network_disable_multiple_themes() {
  • trunk/tests/phpunit/tests/user.php

    r38768 r40520  
    650650    /**
    651651     * @ticket 27317
     652     * @group ms-required
    652653     */
    653654    function test_illegal_user_logins_multisite() {
  • trunk/tests/phpunit/tests/user/capabilities.php

    r40404 r40520  
    612612    }
    613613
     614    /**
     615     * @group ms-required
     616     */
    614617    function test_super_admin_caps() {
    615618        if ( ! is_multisite() ) {
    616619            $this->markTestSkipped( 'Test only runs in multisite' );
    617             return;
    618620        }
    619621        $caps = $this->getAllCapsAndRoles();
     
    13561358    }
    13571359
     1360    /**
     1361     * @group ms-required
     1362     */
    13581363    function test_borked_current_user_can_for_blog() {
    13591364        if ( ! is_multisite() ) {
    13601365            $this->markTestSkipped( 'Test only runs in multisite' );
    1361             return;
    13621366        }
    13631367
     
    14171421    }
    14181422
     1423    /**
     1424     * @group ms-required
     1425     */
    14191426    function test_multisite_administrator_can_not_edit_users() {
    14201427        if ( ! is_multisite() ) {
    14211428            $this->markTestSkipped( 'Test only runs in multisite' );
    1422             return;
    14231429        }
    14241430
     
    14511457    }
    14521458
     1459    /**
     1460     * @group ms-required
     1461     */
    14531462    public function test_only_super_admins_can_delete_users_on_multisite() {
    14541463        if ( ! is_multisite() ) {
     
    14651474    }
    14661475
     1476    /**
     1477     * @group ms-excluded
     1478     */
    14671479    public function test_only_admins_can_delete_users_on_single_site() {
    14681480        if ( is_multisite() ) {
     
    15231535    }
    15241536
     1537    /**
     1538     * @group ms-required
     1539     */
    15251540    function test_multisite_administrator_with_manage_network_users_can_edit_users() {
    15261541        if ( ! is_multisite() ) {
    15271542            $this->markTestSkipped( 'Test only runs in multisite' );
    1528             return;
    15291543        }
    15301544
     
    15421556    }
    15431557
     1558    /**
     1559     * @group ms-required
     1560     */
    15441561    function test_multisite_administrator_with_manage_network_users_can_not_edit_super_admin() {
    15451562        if ( ! is_multisite() ) {
    15461563            $this->markTestSkipped( 'Test only runs in multisite' );
    1547             return;
    15481564        }
    15491565
     
    17651781    /**
    17661782     * @ticket 39063
     1783     * @group ms-required
    17671784     */
    17681785    public function test_only_super_admins_can_remove_themselves_on_multisite() {
  • trunk/tests/phpunit/tests/user/countUsers.php

    r35707 r40520  
    1010     *
    1111     * @dataProvider data_count_users_strategies
     12     * @group ms-excluded
    1213     */
    1314    public function test_count_users_is_accurate( $strategy ) {
     
    5859     * @ticket 22993
    5960     * @group multisite
     61     * @group ms-required
    6062     *
    6163     * @dataProvider data_count_users_strategies
  • trunk/tests/phpunit/tests/user/query.php

    r39915 r40520  
    552552    }
    553553
     554    /**
     555     * @group ms-required
     556     */
    554557    public function test_roles_and_caps_should_be_populated_for_explicit_value_of_blog_id_on_nonms() {
    555558        if ( is_multisite() ) {
     
    570573    }
    571574
     575    /**
     576     * @group ms-required
     577     */
    572578    public function test_roles_and_caps_should_be_populated_for_explicit_value_of_current_blog_id_on_ms() {
    573579        if ( ! is_multisite() ) {
     
    588594    }
    589595
     596    /**
     597     * @group ms-required
     598     */
    590599    public function test_roles_and_caps_should_be_populated_for_explicit_value_of_different_blog_id_on_ms_when_fields_all_with_meta() {
    591600        if ( ! is_multisite() ) {
     
    613622    /**
    614623     * @ticket 31878
     624     * @group ms-required
    615625     */
    616626    public function test_roles_and_caps_should_be_populated_for_explicit_value_of_different_blog_id_on_ms_when_fields_all() {
     
    638648    /**
    639649     * @ticket 32019
     650     * @group ms-required
    640651     */
    641652    public function test_who_authors() {
     
    664675    /**
    665676     * @ticket 32019
     677     * @group ms-required
    666678     */
    667679    public function test_who_authors_should_work_alongside_meta_query() {
     
    699711    /**
    700712     * @ticket 36724
     713     * @group ms-required
    701714     */
    702715    public function test_who_authors_should_work_alongside_meta_params() {
     
    792805    /**
    793806     * @ticket 32250
     807     * @group ms-required
    794808     */
    795809    public function test_has_published_posts_should_respect_blog_id() {
     
    13591373    /**
    13601374     * @ticket 22212
     1375     * @group ms-required
    13611376     */
    13621377    public function test_blog_id_should_restrict_by_blog_without_requiring_a_named_role() {
     
    13811396     * @ticket 22212
    13821397     * @ticket 21119
     1398     * @group ms-required
    13831399     */
    13841400    public function test_calling_prepare_query_a_second_time_should_not_add_another_cap_query_on_multisite() {
  • trunk/tests/phpunit/tests/user/wpAuthenticateSpamCheck.php

    r37316 r40520  
    55 */
    66class Tests_User_WpAuthenticateSpamCheck extends WP_UnitTestCase {
     7
     8    /**
     9     * @group ms-excluded
     10     */
    711    function test_wp_authenticate_spam_check_returns_user_when_single_site() {
    812        if ( is_multisite() ) {
     
    1822    }
    1923
     24    /**
     25     * @group ms-required
     26     */
    2027    function test_wp_authenticate_spam_check_returns_user_when_not_flagged() {
    2128        if ( ! is_multisite() ) {
     
    3138    }
    3239
     40    /**
     41     * @group ms-required
     42     */
    3343    function test_wp_authenticate_spam_check_returns_wp_error_when_flagged() {
    3444        if ( ! is_multisite() ) {
  • trunk/tests/phpunit/tests/user/wpDeleteUser.php

    r38938 r40520  
    124124    }
    125125
     126    /**
     127     * @group ms-excluded
     128     */
    126129    public function test_numeric_string_user_id() {
    127130        if ( is_multisite() ) {
     
    145148    /**
    146149     * @ticket 33800
     150     * @group ms-excluded
    147151     */
    148152    public function test_should_return_false_for_object_user_id() {
Note: See TracChangeset for help on using the changeset viewer.