X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=tests%2Fsrc%2FContent%2FText%2FBBCodeTest.php;h=802a90278b9ec33c1b2070033b2ed4539fd0a531;hb=ef0545645a3054a6433340e7ac170c1933e670cc;hp=f155eeee3d99a57cff3bcdf0034094f2981377aa;hpb=61fe82ad20fa61e441df5a4bf4e9bb2b7f23411a;p=friendica.git diff --git a/tests/src/Content/Text/BBCodeTest.php b/tests/src/Content/Text/BBCodeTest.php index f155eeee3d..802a90278b 100644 --- a/tests/src/Content/Text/BBCodeTest.php +++ b/tests/src/Content/Text/BBCodeTest.php @@ -1,111 +1,133 @@ -setUpVfsDir(); - $this->mockApp($this->root); - $this->app->videowidth = 425; - $this->app->videoheight = 350; - $this->configMock->shouldReceive('get') - ->with('system', 'remove_multiplicated_lines') - ->andReturn(false); - $this->configMock->shouldReceive('get') - ->with('system', 'no_oembed') - ->andReturn(false); - $this->configMock->shouldReceive('get') - ->with('system', 'allowed_link_protocols') - ->andReturn(null); - $this->configMock->shouldReceive('get') - ->with('system', 'itemcache_duration') - ->andReturn(-1); - $this->mockL10nT(); - } - - public function dataLinks() - { - return [ - /** @see https://github.com/friendica/friendica/issues/2487 */ - 'bug-2487-1' => [ - 'data' => 'https://de.wikipedia.org/wiki/Juha_Sipilä', - 'assertHTML' => true, - ], - 'bug-2487-2' => [ - 'data' => 'https://de.wikipedia.org/wiki/Dnepr_(Motorradmarke)', - 'assertHTML' => true, - ], - 'bug-2487-3' => [ - 'data' => 'https://friendica.wäckerlin.ch/friendica', - 'assertHTML' => true, - ], - 'bug-2487-4' => [ - 'data' => 'https://mastodon.social/@morevnaproject', - 'assertHTML' => true, - ], - /** @see https://github.com/friendica/friendica/issues/5795 */ - 'bug-5795' => [ - 'data' => 'https://social.nasqueron.org/@liw/100798039015010628', - 'assertHTML' => true, - ], - /** @see https://github.com/friendica/friendica/issues/6095 */ - 'bug-6095' => [ - 'data' => 'https://en.wikipedia.org/wiki/Solid_(web_decentralization_project)', - 'assertHTML' => true, - ], - 'no-protocol' => [ - 'data' => 'example.com/path', - 'assertHTML' => false - ], - 'wrong-protocol' => [ - 'data' => 'ftp://example.com', - 'assertHTML' => false - ], - 'wrong-domain-without-path' => [ - 'data' => 'http://example', - 'assertHTML' => false - ], - 'wrong-domain-with-path' => [ - 'data' => 'http://example/path', - 'assertHTML' => false - ], - ]; - } - - /** - * Test convert different links inside a text - * @dataProvider dataLinks - * - * @param string $data The data to text - * @param bool $assertHTML True, if the link is a HTML link (...) - * @throws \Friendica\Network\HTTPException\InternalServerErrorException - */ - public function testAutoLinking($data, $assertHTML) - { - $output = BBCode::convert($data); - if ($assertHTML) { - $assert = '' . $data . ''; - } else { - $assert = $data; - } - - $this->assertEquals($assert, $output); - } -} \ No newline at end of file +setUpVfsDir(); + $this->mockApp($this->root); + $this->app->videowidth = 425; + $this->app->videoheight = 350; + $this->configMock->shouldReceive('get') + ->with('system', 'remove_multiplicated_lines') + ->andReturn(false); + $this->configMock->shouldReceive('get') + ->with('system', 'no_oembed') + ->andReturn(false); + $this->configMock->shouldReceive('get') + ->with('system', 'allowed_link_protocols') + ->andReturn(null); + $this->configMock->shouldReceive('get') + ->with('system', 'itemcache_duration') + ->andReturn(-1); + $this->configMock->shouldReceive('get') + ->with('system', 'url') + ->andReturn('friendica.local'); + $this->mockL10nT(); + } + + public function dataLinks() + { + return [ + /** @see https://github.com/friendica/friendica/issues/2487 */ + 'bug-2487-1' => [ + 'data' => 'https://de.wikipedia.org/wiki/Juha_Sipilä', + 'assertHTML' => true, + ], + 'bug-2487-2' => [ + 'data' => 'https://de.wikipedia.org/wiki/Dnepr_(Motorradmarke)', + 'assertHTML' => true, + ], + 'bug-2487-3' => [ + 'data' => 'https://friendica.wäckerlin.ch/friendica', + 'assertHTML' => true, + ], + 'bug-2487-4' => [ + 'data' => 'https://mastodon.social/@morevnaproject', + 'assertHTML' => true, + ], + /** @see https://github.com/friendica/friendica/issues/5795 */ + 'bug-5795' => [ + 'data' => 'https://social.nasqueron.org/@liw/100798039015010628', + 'assertHTML' => true, + ], + /** @see https://github.com/friendica/friendica/issues/6095 */ + 'bug-6095' => [ + 'data' => 'https://en.wikipedia.org/wiki/Solid_(web_decentralization_project)', + 'assertHTML' => true, + ], + 'no-protocol' => [ + 'data' => 'example.com/path', + 'assertHTML' => false + ], + 'wrong-protocol' => [ + 'data' => 'ftp://example.com', + 'assertHTML' => false + ], + 'wrong-domain-without-path' => [ + 'data' => 'http://example', + 'assertHTML' => false + ], + 'wrong-domain-with-path' => [ + 'data' => 'http://example/path', + 'assertHTML' => false + ], + 'bug-6857-domain-start' => [ + 'data' => "http://\nexample.com", + 'assertHTML' => false + ], + 'bug-6857-domain-end' => [ + 'data' => "http://example\n.com", + 'assertHTML' => false + ], + 'bug-6857-tld' => [ + 'data' => "http://example.\ncom", + 'assertHTML' => false + ], + 'bug-6857-end' => [ + 'data' => "http://example.com\ntest", + 'assertHTML' => false + ], + 'bug-6901' => [ + 'data' => "http://example.com