Skip to:
Content

BuddyPress.org

Ticket #6353: link-trailingslash.diff

File link-trailingslash.diff, 1.7 KB (added by pareshradadiya, 5 years ago)

Path and php unit testcases

  • src/bp-core/bp-core-buddybar.php

     
    296296
    297297        // Link was not forced, so create one
    298298        if ( empty( $link ) ) {
    299                 $link = $parent_url . $slug;
     299                $link = trailingslashit( $parent_url . $slug );
    300300
    301301                // If this sub item is the default for its parent, skip the slug
    302302                if ( ! empty( $bp->bp_nav[$parent_slug]['default_subnav_slug'] ) && $slug == $bp->bp_nav[$parent_slug]['default_subnav_slug'] ) {
    303                         $link = $parent_url;
     303                        $link = trailingslashit( $parent_url );
    304304                }
    305305        }
    306306
     
    313313
    314314        $subnav_item = array(
    315315                'name'              => $name,
    316                 'link'              => trailingslashit( $link ),
     316                'link'              => esc_url_raw( $link ),
    317317                'slug'              => $slug,
    318318                'css_id'            => $item_css_id,
    319319                'position'          => $position,
  • tests/phpunit/testcases/core/nav.php

     
    341341                // Clean up
    342342                $this->set_current_user( $old_current_user );
    343343        }
     344
     345        /**
     346         * @group bp_core_new_subnav_item
     347         */
     348        public function test_bp_core_new_subnav_item_link_trailing_slash() {
     349
     350                $link = 'http://example.com/foo/bar/blah/?action=edit&id=30';
     351
     352                bp_core_new_subnav_item( array(
     353                        'name' => 'bar',
     354                        'slug' => 'bar',
     355                        'parent_slug' => 'foo',
     356                        'parent_url' => 'http://example.com/foo/',
     357                        'screen_function' => 'foo',
     358                        'link' => $link,
     359                ) );
     360
     361                $this->assertSame( $link, buddypress()->bp_options_nav['foo']['bar']['link'] );
     362
     363        }
    344364}