aboutsummaryrefslogtreecommitdiffstats
path: root/tests/functional
diff options
context:
space:
mode:
authorMatt Friedman <maf675@gmail.com>2017-01-11 01:54:14 -0800
committerMatt Friedman <maf675@gmail.com>2017-01-11 01:55:39 -0800
commita3accfaf461bc963f0661bdab1befbc9ef50a514 (patch)
tree246439d6083dd5326f63e6f9bd192145fcbe4e69 /tests/functional
parentcb406258fe13f593035f0cd29e5835752985629c (diff)
downloadforums-a3accfaf461bc963f0661bdab1befbc9ef50a514.tar
forums-a3accfaf461bc963f0661bdab1befbc9ef50a514.tar.gz
forums-a3accfaf461bc963f0661bdab1befbc9ef50a514.tar.bz2
forums-a3accfaf461bc963f0661bdab1befbc9ef50a514.tar.xz
forums-a3accfaf461bc963f0661bdab1befbc9ef50a514.zip
[ticket/14989] Allow more admin-configurable schemes in post links
PHPBB3-14989
Diffstat (limited to 'tests/functional')
-rw-r--r--tests/functional/posting_test.php41
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/functional/posting_test.php b/tests/functional/posting_test.php
index 9dd8a1dc91..f3b222b388 100644
--- a/tests/functional/posting_test.php
+++ b/tests/functional/posting_test.php
@@ -246,4 +246,45 @@ class phpbb_functional_posting_test extends phpbb_functional_test_case
// Test that the preview contains the correct link
$this->assertEquals($url, $crawler->filter('#preview a')->attr('href'));
}
+
+ public function test_allowed_schemes_links()
+ {
+ $text = 'http://example.org/ tcp://localhost:22/ServiceName';
+
+ $this->login();
+ $this->admin_login();
+
+ // Post with default settings
+ $crawler = self::request('GET', 'posting.php?mode=post&f=2');
+ $form = $crawler->selectButton('Preview')->form(array(
+ 'subject' => 'Test subject',
+ 'message' => $text,
+ ));
+ $crawler = self::submit($form);
+ $this->assertContains(
+ '<a href="http://example.org/" class="postlink">http://example.org/</a> tcp://localhost:22/ServiceName',
+ $crawler->filter('#preview .content')->html()
+ );
+
+ // Update allowed schemes
+ $crawler = self::request('GET', 'adm/index.php?sid=' . $this->sid . '&i=acp_board&mode=post');
+ $form = $crawler->selectButton('Submit')->form();
+ $values = $form->getValues();
+ $values['config[allowed_schemes_links]'] = 'https,tcp';
+ $form->setValues($values);
+ $crawler = self::submit($form);
+ $this->assertEquals(1, $crawler->filter('.successbox')->count());
+
+ // Post with new settings
+ $crawler = self::request('GET', 'posting.php?mode=post&f=2');
+ $form = $crawler->selectButton('Preview')->form(array(
+ 'subject' => 'Test subject',
+ 'message' => $text,
+ ));
+ $crawler = self::submit($form);
+ $this->assertContains(
+ 'http://example.org/ <a href="tcp://localhost:22/ServiceName" class="postlink">tcp://localhost:22/ServiceName</a>',
+ $crawler->filter('#preview .content')->html()
+ );
+ }
}