aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--phpBB/includes/message_parser.php2
-rw-r--r--tests/bbcode/url_bbcode_test.php4
-rw-r--r--tests/mock_user.php20
3 files changed, 25 insertions, 1 deletions
diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php
index 9e0e61d0ba..a134fab5d3 100644
--- a/phpBB/includes/message_parser.php
+++ b/phpBB/includes/message_parser.php
@@ -975,7 +975,7 @@ class bbcode_firstpass extends bbcode
}
// Is this a link to somewhere inside this board? If so then remove the session id from the url
- if (strpos($url, @generate_board_url()) !== false && strpos($url, 'sid=') !== false)
+ if (strpos($url, generate_board_url()) !== false && strpos($url, 'sid=') !== false)
{
$url = preg_replace('/(&|\?)sid=[0-9a-f]{32}&/', '\1', $url);
$url = preg_replace('/(&|\?)sid=[0-9a-f]{32}$/', '', $url);
diff --git a/tests/bbcode/url_bbcode_test.php b/tests/bbcode/url_bbcode_test.php
index 597933c6f8..7bbf731c74 100644
--- a/tests/bbcode/url_bbcode_test.php
+++ b/tests/bbcode/url_bbcode_test.php
@@ -11,6 +11,7 @@ require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php';
require_once dirname(__FILE__) . '/../../phpBB/includes/functions_content.php';
require_once dirname(__FILE__) . '/../../phpBB/includes/bbcode.php';
require_once dirname(__FILE__) . '/../../phpBB/includes/message_parser.php';
+require_once dirname(__FILE__) . '/../mock_user.php';
class phpbb_url_bbcode_test extends phpbb_test_case
{
@@ -30,6 +31,9 @@ class phpbb_url_bbcode_test extends phpbb_test_case
*/
public function test_url($message)
{
+ global $user;
+ $user = new phpbb_mock_user;
+
$bbcode = new bbcode_firstpass();
$bbcode->message = $message;
$bbcode->bbcode_init(false);
diff --git a/tests/mock_user.php b/tests/mock_user.php
new file mode 100644
index 0000000000..74d31c4c4a
--- /dev/null
+++ b/tests/mock_user.php
@@ -0,0 +1,20 @@
+<?php
+/**
+*
+* @package testing
+* @copyright (c) 2011 phpBB Group
+* @license http://opensource.org/licenses/gpl-license.php GNU Public License
+*
+*/
+
+/**
+* Mock user class.
+* This class is used when tests invoke phpBB code expecting to have a global
+* user object, to avoid instantiating the actual user object.
+* It has a minimum amount of functionality, just to make tests work.
+*/
+class phpbb_mock_user
+{
+ public $host = "testhost";
+ public $page = array('root_script_path' => '/');
+}