Changeset 11063
- Timestamp:
- 09/06/2016 03:31:21 AM (6 years ago)
- Location:
- trunk/tests/phpunit
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/includes/factory.php
r11042 r11063 14 14 $this->notification = new BP_UnitTest_Factory_For_Notification( $this ); 15 15 $this->signup = new BP_UnitTest_Factory_For_Signup( $this ); 16 $this->friendship = new BP_UnitTest_Factory_For_Friendship( $this ); 16 17 } 17 18 } … … 269 270 } 270 271 } 272 273 /** 274 * Factory for friendships. 275 * 276 * @since 2.7.0 277 */ 278 class BP_UnitTest_Factory_For_Friendship extends WP_UnitTest_Factory_For_Thing { 279 /** 280 * Constructor. 281 * 282 * @since 2.7.0 283 * 284 * @param $factory WP_UnitTest_Factory 285 */ 286 public function __construct( $factory = null ) { 287 parent::__construct( $factory ); 288 } 289 290 /** 291 * Create friendship object. 292 * 293 * @since 2.7.0 294 * 295 * @param array $args Array of arguments. 296 * @return int Friendship ID. 297 */ 298 public function create_object( $args ) { 299 $friendship = new BP_Friends_Friendship(); 300 301 foreach ( array( 'initiator_user_id', 'friend_user_id' ) as $arg ) { 302 if ( isset( $args[ $arg ] ) ) { 303 $friendship->$arg = $args[ $arg ]; 304 } else { 305 $friendship->$arg = $this->factory->user->create(); 306 } 307 } 308 309 foreach ( array( 'is_confirmed', 'is_limited', 'date_created' ) as $arg ) { 310 if ( isset( $args[ $arg ] ) ) { 311 $friendship->$arg = $args[ $arg ]; 312 } 313 } 314 315 $friendship->save(); 316 317 return $friendship->id; 318 } 319 320 /** 321 * Update a friendship object. 322 * 323 * @since 2.7.0 324 * 325 * @todo Implement. 326 * 327 * @param int $id ID of the friendship. 328 * @param array $fields Fields to update. 329 */ 330 public function update_object( $id, $fields ) {} 331 332 /** 333 * Get a friendship object by its ID. 334 * 335 * @since 2.7.0 336 * 337 * @param int $id 338 * @return BP_Friends_Friendship 339 */ 340 public function get_object_by_id( $id ) { 341 return new BP_Friends_Friendship( $id ); 342 } 343 } -
trunk/tests/phpunit/testcases/testsuite/factory.php
r11042 r11063 23 23 $this->assertNotEmpty( $m->get_recipients() ); 24 24 } 25 26 /** 27 * @ticket BP7243 28 */ 29 public function test_friendship_should_create_default_initiator_and_friend() { 30 $f = $this->factory->friendship->create_and_get(); 31 32 $u1 = new WP_User( $f->initiator_user_id ); 33 $u2 = new WP_User( $f->friend_user_id ); 34 35 $this->assertTrue( $u1->exists() ); 36 $this->assertTrue( $u2->exists() ); 37 } 38 39 /** 40 * @ticket BP7243 41 */ 42 public function test_friendship_should_respect_passed_initiator_and_friend() { 43 $u1 = $this->factory->user->create(); 44 $u2 = $this->factory->user->create(); 45 46 $f = $this->factory->friendship->create_and_get( array( 47 'initiator_user_id' => $u1, 48 'friend_user_id' => $u2, 49 ) ); 50 51 $this->assertSame( $u1, $f->initiator_user_id ); 52 $this->assertSame( $u2, $f->friend_user_id ); 53 } 25 54 }
Note: See TracChangeset
for help on using the changeset viewer.