Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
08/17/2021 10:34:57 PM (5 years ago)
Author:
dcavins
Message:

Limit orderby values in BP_Invitation.

Ensure that passed orderby value matches a
verified database column name.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/6.0/tests/phpunit/testcases/core/invitations.php

    r12428 r13070  
    174174                $this->set_current_user( $old_current_user );
    175175        }
    176        
     176
    177177        public function test_bp_invitations_add_request_vanilla() {
    178178                $old_current_user = get_current_user_id();
     
    288288        }
    289289
     290        public function test_bp_invitations_orderby_item_id() {
     291                $old_current_user = get_current_user_id();
     292
     293                $u1 = $this->factory->user->create();
     294                $u2 = $this->factory->user->create();
     295                $u3 = $this->factory->user->create();
     296                $this->set_current_user( $u1 );
     297
     298                $invites_class = new BPTest_Invitation_Manager_Extension();
     299
     300                // Create an invitation.
     301                $i1_args = array(
     302                        'user_id'    => $u2,
     303                        'inviter_id' => $u1,
     304                        'item_id'    => 6,
     305                );
     306                $i1 = $invites_class->add_invitation( $i1_args );
     307                $invites_class->send_invitation_by_id( $i1 );
     308
     309                $i2_args = array(
     310                        'user_id'    => $u3,
     311                        'inviter_id' => $u1,
     312                        'item_id'    => 4,
     313                );
     314                $i2 = $invites_class->add_invitation( $i2_args );
     315                $invites_class->send_invitation_by_id( $i2 );
     316
     317                $i3_args = array(
     318                        'user_id'    => $u2,
     319                        'inviter_id' => $u1,
     320                        'item_id'    => 8,
     321                );
     322                $i3 = $invites_class->add_invitation( $i3_args );
     323                $invites_class->send_invitation_by_id( $i3 );
     324
     325                $get_invites = array(
     326                        'order_by'   => 'item_id',
     327                        'sort_order' => 'ASC',
     328                        'fields'     => 'ids',
     329                );
     330                $invites = $invites_class->get_invitations( $get_invites );
     331                $this->assertEquals( array( $i2, $i1, $i3 ), $invites );
     332
     333                $get_invites['sort_order'] = 'DESC';
     334                $invites = $invites_class->get_invitations( $get_invites );
     335                $this->assertEquals( array( $i3, $i1, $i2 ), $invites );
     336
     337                $this->set_current_user( $old_current_user );
     338        }
    290339}
Note: See TracChangeset for help on using the changeset viewer.