Changeset 7090
- Timestamp:
- 05/19/2013 02:40:13 AM (13 years ago)
- Location:
- trunk/tests
- Files:
-
- 4 edited
-
includes/testcase.php (modified) (1 diff)
-
testcases/core/class-bp-user-query.php (modified) (1 diff)
-
testcases/groups/class-bp-groups-group.php (modified) (1 diff)
-
testcases/groups/template.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/includes/testcase.php
r7061 r7090 224 224 } 225 225 226 public static function add_user_to_group( $user_id, $group_id ) { 227 $new_member = new BP_Groups_Member; 228 $new_member->group_id = $group_id; 229 $new_member->user_id = $user_id; 230 $new_member->inviter_id = 0; 231 $new_member->is_admin = 0; 232 $new_member->user_title = ''; 233 $new_member->date_modified = bp_core_current_time(); 234 $new_member->is_confirmed = 1; 235 236 $new_member->save(); 237 return $new_member->id; 238 } 239 226 240 /** 227 241 * We can't use grant_super_admin() because we will need to modify -
trunk/tests/testcases/core/class-bp-user-query.php
r7039 r7090 3 3 /** 4 4 * @group core 5 * @group BP_User_Query 5 6 */ 6 7 class BP_Tests_BP_User_Query_TestCases extends BP_UnitTestCase { -
trunk/tests/testcases/groups/class-bp-groups-group.php
r7087 r7090 12 12 } 13 13 14 public static function add_user_to_group( $user_id, $group_id ) {15 $new_member = new BP_Groups_Member;16 $new_member->group_id = $group_id;17 $new_member->user_id = $user_id;18 $new_member->inviter_id = 0;19 $new_member->is_admin = 0;20 $new_member->user_title = '';21 $new_member->date_modified = bp_core_current_time();22 $new_member->is_confirmed = 1;23 24 $new_member->save();25 return $new_member->id;26 }27 28 14 /** get() ************************************************************/ 29 15 -
trunk/tests/testcases/groups/template.php
r7087 r7090 98 98 } 99 99 100 /** 101 * @group bp_group_has_members 102 */ 103 public function test_bp_group_has_members_vanilla() { 104 $g = $this->factory->group->create(); 105 $u1 = $this->create_user(); 106 $u2 = $this->create_user(); 107 108 $this->add_user_to_group( $u1, $g ); 109 110 global $members_template; 111 bp_group_has_members( array( 112 'group_id' => $g, 113 ) ); 114 115 $ids = wp_parse_id_list( wp_list_pluck( $members_template->members, 'user_id' ) ); 116 $this->assertEquals( array( $u1, ), $ids ); 117 } 118 119 /** 120 * @group bp_group_has_members 121 */ 122 public function test_bp_group_has_members_with_per_page() { 123 $g = $this->factory->group->create(); 124 125 $users = array(); 126 for ( $i = 1; $i <= 10; $i++ ) { 127 $users[ $i ] = $this->create_user(); 128 } 129 130 $expected = array(); 131 for ( $i = 3; $i <= 10; $i++ ) { 132 $this->add_user_to_group( $users[ $i ], $g ); 133 $expected[] = $users[ $i ]; 134 } 135 136 // hack it down to 5 (per page arg below) 137 $expected = array_slice( $expected, 0, 5 ); 138 139 global $members_template; 140 bp_group_has_members( array( 141 'group_id' => $g, 142 'per_page' => 5, 143 ) ); 144 145 $ids = wp_parse_id_list( wp_list_pluck( $members_template->members, 'user_id' ) ); 146 $this->assertEquals( $expected, $ids ); 147 } 148 149 /** 150 * Note: 'max' is a weird parameter. It just changes the member_count 151 * in the global - not the sql query at all. I'm testing what it 152 * appears to be designed to do, not what it feels like it ought to do 153 * if it made any sense. Programming is fun, QED. 154 * 155 * @group bp_group_has_members 156 */ 157 public function test_bp_group_has_members_with_max() { 158 $g = $this->factory->group->create(); 159 160 $users = array(); 161 for ( $i = 1; $i <= 10; $i++ ) { 162 $users[ $i ] = $this->create_user(); 163 } 164 165 $expected = array(); 166 for ( $i = 3; $i <= 10; $i++ ) { 167 $this->add_user_to_group( $users[ $i ], $g ); 168 $expected[] = $users[ $i ]; 169 } 170 171 global $members_template; 172 bp_group_has_members( array( 173 'group_id' => $g, 174 'max' => 5, 175 ) ); 176 177 $this->assertEquals( 5, $members_template->member_count ); 178 } 179 180 /** 181 * @group bp_group_has_members 182 */ 183 public function test_bp_group_has_members_with_exclude() { 184 $g = $this->factory->group->create(); 185 $u1 = $this->create_user(); 186 $u2 = $this->create_user(); 187 188 $this->add_user_to_group( $u1, $g ); 189 $this->add_user_to_group( $u2, $g ); 190 191 global $members_template; 192 bp_group_has_members( array( 193 'group_id' => $g, 194 'exclude' => $u1, 195 ) ); 196 197 $ids = wp_parse_id_list( wp_list_pluck( $members_template->members, 'user_id' ) ); 198 $this->assertEquals( array( $u2 ), $ids ); 199 } 200 201 /** 202 * @group bp_group_has_members 203 */ 204 public function test_bp_group_has_members_with_exclude_admins_mods_1() { 205 $g = $this->factory->group->create(); 206 $u1 = $this->create_user(); 207 $u2 = $this->create_user(); 208 $u3 = $this->create_user(); 209 210 $this->add_user_to_group( $u1, $g ); 211 $this->add_user_to_group( $u2, $g ); 212 $this->add_user_to_group( $u3, $g ); 213 214 $m1 = new BP_Groups_Member( $u1, $g ); 215 $m1->promote( 'admin' ); 216 $m2 = new BP_Groups_Member( $u2, $g ); 217 $m2->promote( 'mod' ); 218 219 global $members_template; 220 bp_group_has_members( array( 221 'group_id' => $g, 222 'exclude_admins_mods' => 1, 223 ) ); 224 225 $ids = wp_parse_id_list( wp_list_pluck( $members_template->members, 'user_id' ) ); 226 $this->assertEquals( array( $u3 ), $ids ); 227 } 228 229 /** 230 * @group bp_group_has_members 231 */ 232 public function test_bp_group_has_members_with_exclude_admins_mods_0() { 233 $g = $this->factory->group->create(); 234 $u1 = $this->create_user(); 235 $u2 = $this->create_user(); 236 $u3 = $this->create_user(); 237 238 $this->add_user_to_group( $u1, $g ); 239 $this->add_user_to_group( $u2, $g ); 240 $this->add_user_to_group( $u3, $g ); 241 242 $m1 = new BP_Groups_Member( $u1, $g ); 243 $m1->promote( 'admin' ); 244 $m2 = new BP_Groups_Member( $u2, $g ); 245 $m2->promote( 'mod' ); 246 247 global $members_template; 248 bp_group_has_members( array( 249 'group_id' => $g, 250 'exclude_admins_mods' => 0, 251 ) ); 252 253 $ids = wp_parse_id_list( wp_list_pluck( $members_template->members, 'user_id' ) ); 254 $this->assertEquals( array( $u1, $u2, $u3 ), $ids ); 255 } 256 257 /** 258 * @group bp_group_has_members 259 */ 260 public function test_bp_group_has_members_with_exclude_banned_1() { 261 $g = $this->factory->group->create(); 262 $u1 = $this->create_user(); 263 $u2 = $this->create_user(); 264 265 $this->add_user_to_group( $u1, $g ); 266 $this->add_user_to_group( $u2, $g ); 267 268 $m1 = new BP_Groups_Member( $u1, $g ); 269 $m1->ban(); 270 271 global $members_template; 272 bp_group_has_members( array( 273 'group_id' => $g, 274 'exclude_banned' => 1, 275 ) ); 276 277 $ids = wp_parse_id_list( wp_list_pluck( $members_template->members, 'user_id' ) ); 278 $this->assertEquals( array( $u2, ), $ids ); 279 } 280 281 /** 282 * @group bp_group_has_members 283 */ 284 public function test_bp_group_has_members_with_exclude_banned_0() { 285 $g = $this->factory->group->create(); 286 $u1 = $this->create_user(); 287 $u2 = $this->create_user(); 288 289 $this->add_user_to_group( $u1, $g ); 290 $this->add_user_to_group( $u2, $g ); 291 292 $m1 = new BP_Groups_Member( $u1, $g ); 293 $m1->ban(); 294 295 global $members_template; 296 bp_group_has_members( array( 297 'group_id' => $g, 298 'exclude_banned' => 0, 299 ) ); 300 301 $ids = wp_parse_id_list( wp_list_pluck( $members_template->members, 'user_id' ) ); 302 $this->assertEquals( array( $u1, $u2, ), $ids ); 303 } 304 100 305 }
Note: See TracChangeset
for help on using the changeset viewer.