WordPress.org

Make WordPress Core

Ticket #49087: 49087-wp_insert_user-show_admin_bar_front.diff

File 49087-wp_insert_user-show_admin_bar_front.diff, 1.9 KB (added by valentinbora, 5 months ago)
  • src/wp-includes/user.php

    diff --git src/wp-includes/user.php src/wp-includes/user.php
    index d6075ca5a9..50fc815bff 100644
    function wp_insert_user( $userdata ) { 
    17541754
    17551755        $meta['use_ssl'] = empty( $userdata['use_ssl'] ) ? 0 : (bool) $userdata['use_ssl'];
    17561756
    1757         $meta['show_admin_bar_front'] = empty( $userdata['show_admin_bar_front'] ) ? 'true' : $userdata['show_admin_bar_front'];
     1757        $meta['show_admin_bar_front'] = !isset( $userdata['show_admin_bar_front'] ) ? 'true' : $userdata['show_admin_bar_front'];
    17581758
    17591759        $meta['locale'] = isset( $userdata['locale'] ) ? $userdata['locale'] : '';
    17601760
  • tests/phpunit/tests/user.php

    diff --git tests/phpunit/tests/user.php tests/phpunit/tests/user.php
    index 74c533b69d..2c07a1bcf4 100644
    class Tests_User extends WP_UnitTestCase { 
    969969                $this->assertSame( $expected, $user->user_nicename );
    970970        }
    971971
     972        /**
     973         * @ticket 49087
     974         */
     975        public function test_wp_insert_user_with_bool_false_show_admin_bar_front() {
     976                $u = wp_insert_user(
     977                        array(
     978                                'user_login'                    => 'whatever',
     979                                'user_email'                    => 'whatever@example.com',
     980                                'user_pass'                     => 'password',
     981                                'show_admin_bar_front'  => false,
     982                        )
     983                );
     984
     985                $this->assertNotEmpty( $u );
     986                $user = new WP_User( $u );
     987                $this->assertNotEquals( 'true', $user->get( 'show_admin_bar_front' ) );
     988        }
     989
     990        /**
     991         * @ticket 49087
     992         */
     993        public function test_wp_insert_user_with_string_false_show_admin_bar_front() {
     994                $u = wp_insert_user(
     995                        array(
     996                                'user_login'                    => 'whatever',
     997                                'user_email'                    => 'whatever@example.com',
     998                                'user_pass'                     => 'password',
     999                                'show_admin_bar_front'  => 'false',
     1000                        )
     1001                );
     1002
     1003                $this->assertNotEmpty( $u );
     1004                $user = new WP_User( $u );
     1005                $expected = 'false';
     1006                $this->assertSame( $expected, $user->get( 'show_admin_bar_front' ) );
     1007        }
     1008
    9721009        /**
    9731010         * @ticket 28004
    9741011         */