mirror of
https://github.com/buddypress/buddypress.git
synced 2026-07-22 20:56:55 +08:00
As many member URLs are built concatenating `bp_core_get_user_domain()` with URL chunks, the safer way to make sure developers update the way they build their member URLs in favor of using BP Rewrites is: 1. to deprecate this function 2. create a new function `bp_members_get_user_url()` which is a wrapper of `bp_rewrites_get_url()` 3. replace all `bp_core_get_user_domain()` occurrences by `bp_members_get_user_url()` This commit also deprecates `bp_core_get_username()` in favor of the new `bp_members_get_user_slug()` function and updates PHPUnit tests. Props r-a-y, johnjamesjacoby, boonebgorges Closes https://github.com/buddypress/buddypress/pull/70 See #4954 git-svn-id: https://buddypress.svn.wordpress.org/trunk@13433 cdf35c40-ae34-48e0-9cc9-0c9da1808c22
53 lines
1.4 KiB
PHP
53 lines
1.4 KiB
PHP
<?php
|
|
/**
|
|
* @group core
|
|
* @group template
|
|
*/
|
|
class BP_Tests_Core_Template_BpUserHasAccess extends BP_UnitTestCase {
|
|
protected $permalink_structure = '';
|
|
|
|
public function set_up() {
|
|
parent::set_up();
|
|
$this->permalink_structure = get_option( 'permalink_structure', '' );
|
|
}
|
|
|
|
public function tear_down() {
|
|
$this->set_permalink_structure( $this->permalink_structure );
|
|
|
|
parent::tear_down();
|
|
}
|
|
|
|
public function test_should_return_true_for_bp_moderate_user() {
|
|
$users = self::factory()->user->create_many( 2 );
|
|
|
|
$this->grant_bp_moderate( $users[0] );
|
|
$this->set_current_user( $users[0] );
|
|
$this->set_permalink_structure( '/%postname%/' );
|
|
|
|
$this->go_to( bp_members_get_user_url( $users[1] ) );
|
|
|
|
$this->assertTrue( bp_user_has_access( $users[0] ) );
|
|
}
|
|
|
|
public function test_should_return_false_on_anothers_profile_for_user_without_bp_moderate() {
|
|
$users = self::factory()->user->create_many( 2 );
|
|
|
|
$this->set_current_user( $users[0] );
|
|
$this->set_permalink_structure( '/%postname%/' );
|
|
|
|
$this->go_to( bp_members_get_user_url( $users[1] ) );
|
|
|
|
$this->assertFalse( bp_user_has_access( $users[0] ) );
|
|
}
|
|
|
|
public function test_should_return_true_on_own_profile() {
|
|
$users = self::factory()->user->create_many( 2 );
|
|
|
|
$this->set_current_user( $users[0] );
|
|
$this->set_permalink_structure( '/%postname%/' );
|
|
|
|
$this->go_to( bp_members_get_user_url( $users[0] ) );
|
|
|
|
$this->assertTrue( bp_user_has_access( $users[0] ) );
|
|
}
|
|
}
|