Skip to:
Content

BuddyPress.org

Ticket #7243: 7243.diff

File 7243.diff, 1.4 KB (added by jdgrimes, 5 years ago)
  • tests/phpunit/includes/factory.php

     
    1313                $this->xprofile_field = new BP_UnitTest_Factory_For_XProfileField( $this );
    1414                $this->notification = new BP_UnitTest_Factory_For_Notification( $this );
    1515                $this->signup = new BP_UnitTest_Factory_For_Signup( $this );
     16                $this->friendship = new BP_UnitTest_Factory_For_Friendship( $this );
    1617        }
    1718}
    1819
     
    268269                return new BP_Signup( $id );
    269270        }
    270271}
     272
     273class BP_UnitTest_Factory_For_Friendship extends WP_UnitTest_Factory_For_Thing {
     274        public function __construct( $factory = null ) {
     275                parent::__construct( $factory );
     276        }
     277
     278        public function create_object( $args ) {
     279                $friendship = new BP_Friends_Friendship();
     280               
     281                foreach ( array( 'initiator_user_id', 'firend_user_id' ) as $arg ) {
     282                        if ( isset( $args[ $arg ] ) ) {
     283                                $friendship->$arg = $args[ $arg ];
     284                        } else {
     285                                $friendship->$arg = $this->factory->user->create();
     286                        }
     287                }
     288
     289                foreach ( array( 'is_confirmed', 'is_limited', 'date_created' ) as $arg ) {
     290                        if ( isset( $args[ $arg ] ) ) {
     291                                $friendship->$arg = $args[ $arg ];
     292                        }
     293                }
     294               
     295                $friendship->save();
     296               
     297                return $friendship->id;
     298        }
     299
     300        public function update_object( $id, $fields ) {}
     301
     302        public function get_object_by_id( $id ) {
     303                return new BP_Friends_Friendship( $id );
     304        }
     305}