Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
05/31/2015 05:31:59 AM (5 years ago)
Author:
johnjamesjacoby
Message:

Tests/Groups:

  • Introduce test for deleting "draft" invitations
  • Remove inline variable assignments
  • Remove unused variables
  • Move $now calculations out of date() calls
  • Move one-time use $args arrays into function calls

Props dcavins. See #6462.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/testcases/groups/class-bp-groups-member.php

    r9819 r9900  
    138138    public function test_bp_groups_user_can_send_invites() {
    139139        $u_nonmembers = $this->factory->user->create();
    140         $u_members = $this->factory->user->create();
    141         $u_mods = $this->factory->user->create();
    142         $u_admins = $this->factory->user->create();
    143         $u_siteadmin = $this->factory->user->create();
     140        $u_members    = $this->factory->user->create();
     141        $u_mods       = $this->factory->user->create();
     142        $u_admins     = $this->factory->user->create();
     143        $u_siteadmin  = $this->factory->user->create();
     144
    144145        $user_siteadmin = new WP_User( $u_siteadmin );
    145146        $user_siteadmin->add_role( 'administrator' );
     
    147148        $g = $this->factory->group->create();
    148149
    149         $now = time();
     150        $time = time() - 60;
    150151        $old_current_user = get_current_user_id();
    151152
    152153        // Create member-level user
    153154        $this->add_user_to_group( $u_members, $g, array(
    154             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
    155         ) );
     155            'date_modified' => date( 'Y-m-d H:i:s', $time ),
     156        ) );
     157
    156158        // Create mod-level user
    157159        $this->add_user_to_group( $u_mods, $g, array(
    158             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     160            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    159161        ) );
    160162        $m_mod = new BP_Groups_Member( $u_mods, $g );
    161163        $m_mod->promote( 'mod' );
     164
    162165        // Create admin-level user
    163166        $this->add_user_to_group( $u_admins, $g, array(
    164             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     167            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    165168        ) );
    166169        $m_admin = new BP_Groups_Member( $u_admins, $g );
     
    258261        ) );
    259262
    260         $now = time();
    261263        $this->add_user_to_group( $u1, $g );
    262264
     
    279281        ) );
    280282
    281         $now = time();
     283        $time = time() - 60;
    282284        $this->add_user_to_group( $u1, $g, array(
    283             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     285            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    284286        ) );
    285287
     
    320322        ) );
    321323
    322         $now = time();
    323324        $this->add_user_to_group( $u1, $g );
    324325
     
    326327        groups_delete_membership_request( null, $u1, $g );
    327328        $u1_is_member = groups_is_user_member( $u1, $g );
    328         $this->assertTrue( is_numeric( $u1_is_member )  && $u1_is_member > 0 );
     329        $this->assertTrue( is_numeric( $u1_is_member ) && $u1_is_member > 0 );
    329330    }
    330331
     
    341342        ) );
    342343
    343         $now = time();
     344        $time = time() - 60;
    344345        $this->add_user_to_group( $u1, $g, array(
    345             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     346            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    346347        ) );
    347348
     
    365366        ) );
    366367
    367         $now = time();
     368        $time = time() - 60;
    368369        $this->add_user_to_group( $u1, $g, array(
    369             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     370            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    370371        ) );
    371372
     
    373374        self::invite_user_to_group( $u2, $g, $u1 );
    374375        groups_reject_invite( $u2, $g );
    375         $u2_has_invite = groups_check_user_has_invite( $u2, $g );
     376        $u2_has_invite = groups_check_user_has_invite( $u2, $g, 'all' );
    376377        $this->assertEquals( 0, $u2_has_invite );
    377378    }
     
    388389        ) );
    389390
    390         $now = time();
     391        $time = time() - 60;
    391392        $this->add_user_to_group( $u1, $g, array(
    392             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     393            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    393394        ) );
    394395
     
    429430        ) );
    430431
    431         $now = time();
     432        $time = time() - 60;
    432433        $this->add_user_to_group( $u1, $g, array(
    433             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     434            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    434435        ) );
    435436
     
    437438        self::invite_user_to_group( $u2, $g, $u1 );
    438439        groups_delete_invite( $u2, $g );
    439         $u2_has_invite = groups_check_user_has_invite( $u2, $g );
     440        $u2_has_invite = groups_check_user_has_invite( $u2, $g, 'all' );
    440441        $this->assertEquals( 0, $u2_has_invite );
    441442    }
     
    446447     * @group group_membership
    447448     */
     449    public function test_bp_groups_delete_invite_remove_draft_invite() {
     450        $u1 = $this->factory->user->create();
     451        $u2 = $this->factory->user->create();
     452        $g  = $this->factory->group->create( array(
     453            'status' => 'private',
     454        ) );
     455
     456        $time = time() - 60;
     457        $this->add_user_to_group( $u1, $g, array(
     458            'date_modified' => date( 'Y-m-d H:i:s', $time ),
     459        ) );
     460
     461        // Create the draft invitation.
     462        groups_invite_user( array(
     463            'user_id'    => $u2,
     464            'group_id'   => $g,
     465            'inviter_id' => $u1
     466        ) );
     467
     468        // Check that the invite got created.
     469        $u2_has_invite = groups_check_user_has_invite( $u2, $g, 'all' );
     470        $this->assertTrue( is_numeric( $u2_has_invite ) && $u2_has_invite > 0 );
     471
     472        // The invitation should be removed.
     473        groups_delete_invite( $u2, $g );
     474        $u2_has_invite = groups_check_user_has_invite( $u2, $g, 'all' );
     475        $this->assertEquals( 0, $u2_has_invite );
     476    }
     477
     478    /**
     479     * @group groups_delete_invite
     480     * @group group_invitations
     481     * @group group_membership
     482     */
    448483    public function test_bp_groups_delete_invite_leave_memberships_intact() {
    449484        $u1 = $this->factory->user->create();
    450         $g = $this->factory->group->create( array(
    451             'status' => 'private',
    452         ) );
    453 
    454         $now = time();
     485        $g  = $this->factory->group->create( array(
     486            'status' => 'private',
     487        ) );
     488
     489        $time = time() - 60;
    455490        $this->add_user_to_group( $u1, $g, array(
    456             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     491            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    457492        ) );
    458493
     
    492527        ) );
    493528
    494         $now = time();
     529        $time = time() - 60;
    495530        $this->add_user_to_group( $u1, $g, array(
    496             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     531            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    497532        ) );
    498533
     
    500535        self::invite_user_to_group( $u2, $g, $u1 );
    501536        groups_uninvite_user( $u2, $g );
    502         $u2_has_invite = groups_check_user_has_invite( $u2, $g );
     537        $u2_has_invite = groups_check_user_has_invite( $u2, $g, 'all' );
    503538        $this->assertEquals( 0, $u2_has_invite );
    504539    }
     
    515550        ) );
    516551
    517         $now = time();
     552        $time = time() - 60;
    518553        $this->add_user_to_group( $u1, $g, array(
    519             'date_modified' => date( 'Y-m-d H:i:s', $now - 60 ),
     554            'date_modified' => date( 'Y-m-d H:i:s', $time ),
    520555        ) );
    521556
    522557        // Confirmed memberships should be left intact.
    523         $u1_is_member_before = groups_is_user_member( $u1, $g );
     558        groups_is_user_member( $u1, $g );
    524559        groups_uninvite_user( $u1, $g );
    525560        $u1_is_member = groups_is_user_member( $u1, $g );
     
    806841        self::invite_user_to_group( $u2, $g3, $u1 );
    807842
    808         $groups = groups_get_invites_for_user( $u2, $limit = false, $page = false, $exclude = array( $g2 ) );
     843        $groups = groups_get_invites_for_user( $u2, false, false, array( $g2 ) );
    809844        $this->assertEqualSets( array( $g1, $g3 ), wp_list_pluck( $groups['groups'], 'id' ) );
    810845    }
     
    839874        $g1 = $this->factory->group->create( array( 'creator_id' => $u1 ) );
    840875
    841         $args = array(
     876        // Create draft invitation.
     877        groups_invite_user( array(
    842878            'user_id'       => $u2,
    843879            'group_id'      => $g1,
     
    845881            'date_modified' => bp_core_current_time(),
    846882            'is_confirmed'  => 0
    847         );
    848         // Create draft invitation.
    849         groups_invite_user( $args );
     883        ) );
    850884
    851885        // groups_get_invite_count_for_user should ignore draft invitations.
     
    864898
    865899        // Create draft invitation
    866         $args = array(
     900        groups_invite_user( array(
    867901            'user_id'       => $u2,
    868902            'group_id'      => $g1,
     
    870904            'date_modified' => bp_core_current_time(),
    871905            'is_confirmed'  => 0
    872         );
    873         groups_invite_user( $args );
     906        ) );
    874907
    875908        // Check that the draft invitation has been created.
    876         $draft = groups_check_user_has_invite( $u2, $g1, $type = 'all' );
     909        $draft = groups_check_user_has_invite( $u2, $g1, 'all' );
    877910        $this->assertTrue( is_numeric( $draft ) && $draft > 0 );
    878911    }
     
    889922
    890923        // Create draft invitation
    891         $args = array(
     924        groups_invite_user( array(
    892925            'user_id'       => $u2,
    893926            'group_id'      => $g1,
     
    895928            'date_modified' => bp_core_current_time(),
    896929            'is_confirmed'  => 0
    897         );
    898         groups_invite_user( $args );
     930        ) );
    899931
    900932        // Send the invitation
    901933        groups_send_invites( $u1, $g1 );
     934
    902935        // Check that the invitation has been sent.
    903936        $sent = groups_check_user_has_invite( $u2, $g1, $type = 'sent' );
     
    916949
    917950        // Create draft invitation
    918         $args = array(
     951        groups_invite_user( array(
    919952            'user_id'       => $u2,
    920953            'group_id'      => $g1,
     
    922955            'date_modified' => bp_core_current_time(),
    923956            'is_confirmed'  => 0
    924         );
    925         groups_invite_user( $args );
     957        ) );
    926958
    927959        // Send the invitation
     
    935967        $this->assertTrue( is_numeric( $member ) && $member > 0 );
    936968        // Check that the invite has been removed.
    937         $invite = groups_check_user_has_invite( $u2, $g1, $type = 'all' );
     969        $invite = groups_check_user_has_invite( $u2, $g1, 'all' );
    938970        $this->assertTrue( is_null( $invite ) );
    939971    }
     
    950982
    951983        // Create draft invitation
    952         $args = array(
     984        groups_invite_user( array(
    953985            'user_id'       => $u2,
    954986            'group_id'      => $g1,
     
    956988            'date_modified' => bp_core_current_time(),
    957989            'is_confirmed'  => 0
    958         );
    959         groups_invite_user( $args );
     990        ) );
    960991
    961992        // Create membership request
     
    9861017
    9871018        // Create draft invitation
    988         $args = array(
     1019        groups_invite_user( array(
    9891020            'user_id'       => $u2,
    9901021            'group_id'      => $g1,
     
    9921023            'date_modified' => bp_core_current_time(),
    9931024            'is_confirmed'  => 0
    994         );
    995         groups_invite_user( $args );
     1025        ) );
    9961026
    9971027        // Send the invitation
     
    10231053
    10241054        // Get group invitations of any type, from any user in the group.
    1025         $args = array(
     1055        $invitees = new BP_Group_Member_Query( array(
    10261056            'group_id'     => $g1,
    10271057            'is_confirmed' => 0,
    10281058            'invite_sent'  => null,
    10291059            'inviter_id'   => 'any',
    1030         );
    1031         $invitees = new BP_Group_Member_Query( $args );
     1060        ) );
    10321061
    10331062        $this->assertTrue( empty( $invitees->results ) );
     
    11071136
    11081137        // Create draft invitation
    1109         $args = array(
     1138        groups_invite_user( array(
    11101139            'user_id'       => $u2,
    11111140            'group_id'      => $g1,
     
    11131142            'date_modified' => bp_core_current_time(),
    11141143            'is_confirmed'  => 0
    1115         );
    1116         groups_invite_user( $args );
     1144        ) );
    11171145
    11181146        // Send the invitation
Note: See TracChangeset for help on using the changeset viewer.