Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
11/03/2024 06:19:06 PM (5 months ago)
Author:
espellcaste
Message:

A user is no longer de-authenticated when making REST API requests.

We are introducing a new BP_LoggedIn_User class to fetch data about a BuddyPress logged-in user. This new addition fixes an issue where a user could be de-authenticated when making REST API requests.

Props dcavins, DJPaul, johnjamesjacoby, and imath.

Closes https://github.com/buddypress/buddypress/pull/395
See #9229 and #9145
Fixes #7658

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/testcases/groups/test-group-invites-controller.php

    r14026 r14070  
    6969
    7070        // As site admin
    71         $this->bp::set_current_user( $this->user );
     71        wp_set_current_user( $this->user );
    7272        $request = new WP_REST_Request( 'GET', $this->endpoint_url );
    7373        $request->set_query_params(
     
    128128        $this->populate_group_with_invites( array( $u4 ), $this->group_id );
    129129
    130         $this->bp::set_current_user( $this->g1admin );
     130        wp_set_current_user( $this->g1admin );
    131131        $request = new WP_REST_Request( 'GET', $this->endpoint_url );
    132132        $request->set_query_params(
     
    181181        );
    182182
    183         $this->bp::set_current_user( $u1 );
     183        wp_set_current_user( $u1 );
    184184        $request = new WP_REST_Request( 'GET', $this->endpoint_url );
    185185        $request->set_query_params(
     
    238238        );
    239239
    240         $this->bp::set_current_user( $u4 );
     240        wp_set_current_user( $u4 );
    241241        $request = new WP_REST_Request( 'GET', $this->endpoint_url );
    242242        $request->set_query_params(
     
    262262     */
    263263    public function test_get_items_user_not_logged_in() {
    264         $this->bp::set_current_user( 0 );
     264        wp_set_current_user( 0 );
    265265
    266266        $request = new WP_REST_Request( 'GET', $this->endpoint_url );
     
    281281    public function test_get_items_without_permission() {
    282282        $u1 = static::factory()->user->create();
    283         $this->bp::set_current_user( $u1 );
     283        wp_set_current_user( $u1 );
    284284
    285285        $request = new WP_REST_Request( 'GET', $this->endpoint_url );
     
    310310        );
    311311
    312         $this->bp::set_current_user( $this->user );
     312        wp_set_current_user( $this->user );
    313313        $request = new WP_REST_Request( 'GET', sprintf( $this->endpoint_url . '/%d', $invite_id ) );
    314314        $request->set_param( 'context', 'view' );
     
    359359        );
    360360
    361         $this->bp::set_current_user( $u1 );
     361        wp_set_current_user( $u1 );
    362362        $request = new WP_REST_Request( 'GET', sprintf( $this->endpoint_url . '/%d', $invite_id ) );
    363363        $request->set_param( 'context', 'view' );
     
    384384        );
    385385
    386         $this->bp::set_current_user( $this->g1admin );
     386        wp_set_current_user( $this->g1admin );
    387387        $request = new WP_REST_Request( 'GET', sprintf( $this->endpoint_url . '/%d', $invite_id ) );
    388388        $request->set_param( 'context', 'view' );
     
    400400        $u1 = static::factory()->user->create();
    401401
    402         $this->bp::set_current_user( $this->user );
     402        wp_set_current_user( $this->user );
    403403
    404404        $request = new WP_REST_Request( 'POST', $this->endpoint_url );
     
    428428        $u1 = static::factory()->user->create();
    429429
    430         $this->bp::set_current_user( $this->g1admin );
     430        wp_set_current_user( $this->g1admin );
    431431
    432432        $request = new WP_REST_Request( 'POST', $this->endpoint_url );
     
    455455    public function test_inviter_cannot_invite_member_to_group_if_already_member() {
    456456        // $this->user is a creator of the group.
    457         $this->bp::set_current_user( $this->user );
     457        wp_set_current_user( $this->user );
    458458
    459459        $request = new WP_REST_Request( 'POST', $this->endpoint_url );
     
    477477        $u = static::factory()->user->create();
    478478
    479         $this->bp::set_current_user( 0 );
     479        wp_set_current_user( 0 );
    480480        $request = new WP_REST_Request( 'POST', $this->endpoint_url );
    481481        $request->set_param( 'context', 'edit' );
     
    496496     */
    497497    public function test_create_item_invalid_member_id() {
    498         $this->bp::set_current_user( $this->user );
     498        wp_set_current_user( $this->user );
    499499
    500500        $request = new WP_REST_Request( 'POST', $this->endpoint_url );
     
    518518        $u = static::factory()->user->create();
    519519
    520         $this->bp::set_current_user( $this->user );
     520        wp_set_current_user( $this->user );
    521521
    522522        $request = new WP_REST_Request( 'POST', $this->endpoint_url );
     
    539539        $u = static::factory()->user->create();
    540540
    541         $this->bp::set_current_user( $this->user );
     541        wp_set_current_user( $this->user );
    542542
    543543        $request = new WP_REST_Request( 'POST', $this->endpoint_url );
     
    562562        $u2 = static::factory()->user->create();
    563563
    564         $this->bp::set_current_user( $u2 );
     564        wp_set_current_user( $u2 );
    565565
    566566        $request = new WP_REST_Request( 'POST', $this->endpoint_url );
     
    592592        );
    593593
    594         $this->bp::set_current_user( $this->user );
     594        wp_set_current_user( $this->user );
    595595
    596596        $request = new WP_REST_Request( 'PUT', $this->endpoint_url . '/' . $invite_id );
     
    619619        );
    620620
    621         $this->bp::set_current_user( $u1 );
     621        wp_set_current_user( $u1 );
    622622
    623623        $request = new WP_REST_Request( 'PUT', $this->endpoint_url . '/' . $invite_id );
     
    636636     */
    637637    public function test_update_item_invalid_id() {
    638         $this->bp::set_current_user( $this->user );
     638        wp_set_current_user( $this->user );
    639639
    640640        $request  = new WP_REST_Request( 'PUT', $this->endpoint_url . '/' . REST_TESTS_IMPOSSIBLY_HIGH_NUMBER );
     
    658658            )
    659659        );
    660         $this->bp::set_current_user( 0 );
     660        wp_set_current_user( 0 );
    661661        $request  = new WP_REST_Request( 'PUT', $this->endpoint_url . '/' . $invite_id );
    662662        $response = $this->server->dispatch( $request );
     
    681681        );
    682682
    683         $this->bp::set_current_user( $u2 );
     683        wp_set_current_user( $u2 );
    684684
    685685        $request  = new WP_REST_Request( 'PUT', $this->endpoint_url . '/' . $invite_id );
     
    704704
    705705        // Delete as site admin.
    706         $this->bp::set_current_user( $this->user );
     706        wp_set_current_user( $this->user );
    707707
    708708        $request  = new WP_REST_Request( 'DELETE', $this->endpoint_url . '/' . $invite_id );
     
    731731        );
    732732
    733         $this->bp::set_current_user( $u1 );
     733        wp_set_current_user( $u1 );
    734734
    735735        $request  = new WP_REST_Request( 'DELETE', $this->endpoint_url . '/' . $invite_id );
     
    752752        $this->bp::add_user_to_group( $u2, $this->g1 );
    753753
    754         $this->bp::set_current_user( $u2 );
     754        wp_set_current_user( $u2 );
    755755
    756756        $invite_id = groups_invite_user(
     
    782782        $this->bp::add_user_to_group( $u2, $this->g1 );
    783783
    784         $this->bp::set_current_user( $u2 );
     784        wp_set_current_user( $u2 );
    785785
    786786        $invite_id = groups_invite_user(
     
    793793        );
    794794
    795         $this->bp::set_current_user( $this->g1admin );
     795        wp_set_current_user( $this->g1admin );
    796796
    797797        $request  = new WP_REST_Request( 'DELETE', $this->endpoint_url . '/' . $invite_id );
     
    818818            )
    819819        );
    820         $this->bp::set_current_user( 0 );
     820        wp_set_current_user( 0 );
    821821        $request = new WP_REST_Request( 'DELETE', $this->endpoint_url . '/' . $invite_id );
    822822        $request->set_query_params(
     
    846846            )
    847847        );
    848         $this->bp::set_current_user( $u2 );
     848        wp_set_current_user( $u2 );
    849849
    850850        $request = new WP_REST_Request( 'DELETE', $this->endpoint_url . '/' . $invite_id );
     
    864864     */
    865865    public function test_delete_item_invalid_id() {
    866         $this->bp::set_current_user( $this->user );
     866        wp_set_current_user( $this->user );
    867867
    868868        $request  = new WP_REST_Request( 'DELETE', $this->endpoint_url . '/' . REST_TESTS_IMPOSSIBLY_HIGH_NUMBER );
Note: See TracChangeset for help on using the changeset viewer.