Ticket #28374: 28374.patch
File 28374.patch, 1.4 KB (added by , 9 years ago) |
---|
-
src/wp-includes/capabilities.php
931 931 public function add_cap( $cap, $grant = true ) { 932 932 $this->caps[$cap] = $grant; 933 933 update_user_meta( $this->ID, $this->cap_key, $this->caps ); 934 $this->get_role_caps(); 935 $this->update_user_level_from_caps(); 934 936 } 935 937 936 938 /** … … 946 948 return; 947 949 unset( $this->caps[$cap] ); 948 950 update_user_meta( $this->ID, $this->cap_key, $this->caps ); 951 $this->get_role_caps(); 952 $this->update_user_level_from_caps(); 949 953 } 950 954 951 955 /** -
tests/phpunit/tests/user/capabilities.php
694 694 695 695 wp_set_current_user( $old_uid ); 696 696 } 697 698 /** 699 * @ticket 28374 700 */ 701 function test_current_user_edit_caps() { 702 $user = new WP_User( $this->factory->user->create( array( 'role' => 'contributor' ) ) ); 703 wp_set_current_user( $user->ID ); 704 705 $user->add_cap( 'publish_posts' ); 706 $user->add_cap( 'publish_pages' ); 707 $this->assertTrue( $user->has_cap( 'publish_posts' ) ); 708 $this->assertTrue( $user->has_cap( 'publish_pages' ) ); 709 710 $user->remove_cap( 'publish_pages' ); 711 $this->assertFalse( $user->has_cap( 'publish_pages' ) ); 712 } 697 713 }