Make WordPress Core

Changeset 44633


Ignore:
Timestamp:
01/17/2019 04:33:42 AM (8 years ago)
Author:
pento
Message:

Tests: Ensure meta keys are cleaned up after each test.

Props jnylen0.
Fixes #46007.

Location:
trunk/tests/phpunit
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/includes/testcase.php

    r44327 r44633  
    168168                }
    169169
     170                $this->unregister_all_meta_keys();
    170171                remove_theme_support( 'html5' );
    171172                remove_filter( 'query', array( $this, '_create_temporary_tables' ) );
     
    329330                wp_cache_add_global_groups( array( 'users', 'userlogins', 'usermeta', 'user_meta', 'useremail', 'userslugs', 'site-transient', 'site-options', 'blog-lookup', 'blog-details', 'rss', 'global-posts', 'blog-id-cache', 'networks', 'sites', 'site-details', 'blog_meta' ) );
    330331                wp_cache_add_non_persistent_groups( array( 'comment', 'counts', 'plugins' ) );
     332        }
     333
     334        /**
     335         * Clean up any registered meta keys.
     336         *
     337         * @since 5.1.0
     338         *
     339         * @global array $wp_meta_keys
     340         */
     341        function unregister_all_meta_keys() {
     342                global $wp_meta_keys;
     343                if ( ! is_array( $wp_meta_keys ) ) {
     344                        return;
     345                }
     346                foreach ( $wp_meta_keys as $object_type => $type_keys ) {
     347                        foreach ( $type_keys as $object_subtype => $subtype_keys ) {
     348                                foreach ( $subtype_keys as $key => $value ) {
     349                                        unregister_meta_key( $object_type, $key, $object_subtype );
     350                                }
     351                        }
     352                }
    331353        }
    332354
  • trunk/tests/phpunit/tests/rest-api/rest-schema-setup.php

    r44250 r44633  
    258258                );
    259259
     260                $meta_multi_args           = $meta_args;
     261                $meta_multi_args['single'] = false;
     262
    260263                // Set up meta.
     264                register_meta( 'term', 'test_single', $meta_args );
     265                register_meta( 'term', 'test_multi', $meta_multi_args );
     266                register_term_meta( 'category', 'test_cat_single', $meta_args );
     267                register_term_meta( 'category', 'test_cat_multi', $meta_multi_args );
     268                register_term_meta( 'post_tag', 'test_tag_meta', $meta_args );
     269
    261270                register_meta( 'user', 'meta_key', $meta_args );
    262271                update_user_meta( 1, 'meta_key', 'meta_value' ); // Always use the first user.
Note: See TracChangeset for help on using the changeset viewer.