From 50142efd1b4b826f60b1e5673dba5ccbe26e0108 Mon Sep 17 00:00:00 2001 From: kalvn Date: Thu, 1 Feb 2018 13:16:58 +0100 Subject: Executes daily hooks before creating columns. --- tests/plugins/PluginMarkdownTest.php | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) (limited to 'tests/plugins') diff --git a/tests/plugins/PluginMarkdownTest.php b/tests/plugins/PluginMarkdownTest.php index 96891f1f..ddc2728d 100644 --- a/tests/plugins/PluginMarkdownTest.php +++ b/tests/plugins/PluginMarkdownTest.php @@ -58,20 +58,17 @@ class PluginMarkdownTest extends PHPUnit_Framework_TestCase $markdown = '# My title' . PHP_EOL . 'Very interesting content.'; $data = array( // Columns data - 'cols' => array( - // First, second, third. + 'linksToDisplay' => array( + // nth link 0 => array( - // nth link - 0 => array( - 'formatedDescription' => $markdown, - ), + 'formatedDescription' => $markdown, ), ), ); $data = hook_markdown_render_daily($data, $this->conf); - $this->assertNotFalse(strpos($data['cols'][0][0]['formatedDescription'], '

')); - $this->assertNotFalse(strpos($data['cols'][0][0]['formatedDescription'], '

')); + $this->assertNotFalse(strpos($data['linksToDisplay'][0]['formatedDescription'], '

')); + $this->assertNotFalse(strpos($data['linksToDisplay'][0]['formatedDescription'], '

')); } /** @@ -148,21 +145,18 @@ class PluginMarkdownTest extends PHPUnit_Framework_TestCase $data = array( // Columns data - 'cols' => array( - // First, second, third. + 'linksToDisplay' => array( + // nth link 0 => array( - // nth link - 0 => array( - 'formatedDescription' => $str, - 'tags' => NO_MD_TAG, - 'taglist' => array(), - ), + 'formatedDescription' => $str, + 'tags' => NO_MD_TAG, + 'taglist' => array(), ), ), ); $data = hook_markdown_render_daily($data, $this->conf); - $this->assertEquals($str, $data['cols'][0][0]['formatedDescription']); + $this->assertEquals($str, $data['linksToDisplay'][0]['formatedDescription']); } /** -- cgit v1.2.3 From d2d4f993e1e76bc68b65c48cb18476c404c97a41 Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Wed, 28 Feb 2018 22:34:40 +0100 Subject: PSR: use elseif instead of else if See https://www.php-fig.org/psr/psr-2/\#51-if-elseif-else --- tests/plugins/test/test.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests/plugins') diff --git a/tests/plugins/test/test.php b/tests/plugins/test/test.php index 3d750c90..2aaf5122 100644 --- a/tests/plugins/test/test.php +++ b/tests/plugins/test/test.php @@ -11,7 +11,7 @@ function hook_test_random($data) { if (isset($data['_PAGE_']) && $data['_PAGE_'] == 'test') { $data[1] = 'page test'; - } else if (isset($data['_LOGGEDIN_']) && $data['_LOGGEDIN_'] === true) { + } elseif (isset($data['_LOGGEDIN_']) && $data['_LOGGEDIN_'] === true) { $data[1] = 'loggedin'; } else { $data[1] = $data[0]; -- cgit v1.2.3 From c5ee13181ef9b0cd09886051aaf0754859090e76 Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Sat, 31 Mar 2018 12:50:03 +0200 Subject: Update parsedown to its latest version instead of fixed 1.6 --- tests/plugins/resources/markdown.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'tests/plugins') diff --git a/tests/plugins/resources/markdown.html b/tests/plugins/resources/markdown.html index 844a6f31..f1df4e7e 100644 --- a/tests/plugins/resources/markdown.html +++ b/tests/plugins/resources/markdown.html @@ -8,7 +8,7 @@

  1. zero -
      +
      1. two
      2. three
      3. four
      4. @@ -29,5 +29,5 @@ next #foo link
        link
        link
        -link
        +link
        link

        \ No newline at end of file -- cgit v1.2.3 From dd6794cff8a1f26c4d08544d89e1df1f521dcb26 Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Sat, 19 May 2018 12:55:43 +0200 Subject: Fix feed permalink rendering with markdown escape set to true Fixes #1134 --- tests/plugins/PluginMarkdownTest.php | 55 ++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) (limited to 'tests/plugins') diff --git a/tests/plugins/PluginMarkdownTest.php b/tests/plugins/PluginMarkdownTest.php index ddc2728d..b31e817f 100644 --- a/tests/plugins/PluginMarkdownTest.php +++ b/tests/plugins/PluginMarkdownTest.php @@ -49,6 +49,30 @@ class PluginMarkdownTest extends PHPUnit_Framework_TestCase $this->assertNotFalse(strpos($data['links'][0]['description'], '

        ')); } + /** + * Test render_feed hook. + */ + public function testMarkdownFeed() + { + $markdown = '# My title' . PHP_EOL . 'Very interesting content.'; + $markdown .= '— Permalien'; + $data = array( + 'links' => array( + 0 => array( + 'description' => $markdown, + ), + ), + ); + + $data = hook_markdown_render_feed($data, $this->conf); + $this->assertNotFalse(strpos($data['links'][0]['description'], '

        ')); + $this->assertNotFalse(strpos($data['links'][0]['description'], '

        ')); + $this->assertStringEndsWith( + '— Permalien

        ', + $data['links'][0]['description'] + ); + } + /** * Test render_daily hook. * Only check that there is basic markdown rendering. @@ -104,6 +128,37 @@ class PluginMarkdownTest extends PHPUnit_Framework_TestCase $this->assertEquals($text, $reversedText); } + public function testReverseFeedPermalink() + { + $text = 'Description... '; + $text .= '— Permalien'; + $expected = 'Description... — [Permalien](http://domain.tld/?0oc_VQ)'; + $processedText = reverse_feed_permalink($text); + + $this->assertEquals($expected, $processedText); + } + + public function testReverseLastFeedPermalink() + { + $text = 'Description... '; + $text .= '
        Permalien'; + $expected = $text; + $text .= '
        Permalien'; + $expected .= '
        — [Permalien](http://domain.tld/?0oc_VQ)'; + $processedText = reverse_feed_permalink($text); + + $this->assertEquals($expected, $processedText); + } + + public function testReverseNoFeedPermalink() + { + $text = 'Hello! Where are you from?'; + $expected = $text; + $processedText = reverse_feed_permalink($text); + + $this->assertEquals($expected, $processedText); + } + /** * Test sanitize_html(). */ -- cgit v1.2.3 From a120fb2977331e0f7d7ffe05861ba179fdae8764 Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Mon, 13 Aug 2018 10:42:27 +0200 Subject: Add OpenGraph meta tags on permalink page Includes: - og:title - og:type -> article - og:image -> if there is a thumbnail - og:url -> permalink - og:description -> first 300 chars of raw description - article:published_time - article:modified_time - article:tag -> one OG meta tag for each shaare tag Fixes #258 --- tests/plugins/PluginMarkdownTest.php | 2 ++ 1 file changed, 2 insertions(+) (limited to 'tests/plugins') diff --git a/tests/plugins/PluginMarkdownTest.php b/tests/plugins/PluginMarkdownTest.php index b31e817f..31c1f8b7 100644 --- a/tests/plugins/PluginMarkdownTest.php +++ b/tests/plugins/PluginMarkdownTest.php @@ -47,6 +47,8 @@ class PluginMarkdownTest extends PHPUnit_Framework_TestCase $data = hook_markdown_render_linklist($data, $this->conf); $this->assertNotFalse(strpos($data['links'][0]['description'], '

        ')); $this->assertNotFalse(strpos($data['links'][0]['description'], '

        ')); + + $this->assertEquals($markdown, $data['links'][0]['description_src']); } /** -- cgit v1.2.3 From cb7940e2deacba66f2510816732be654b255cc70 Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Tue, 14 Aug 2018 12:26:51 +0200 Subject: Fix hashtags with markdown escape enabled They're now transformed to markdown syntax links before processing them through Parsedown. Fixes #1210 --- tests/plugins/PluginMarkdownTest.php | 14 +++++++++++++- tests/plugins/resources/hashtags.md | 10 ++++++++++ tests/plugins/resources/hashtags.raw | 10 ++++++++++ tests/plugins/resources/markdown.html | 8 ++++---- tests/plugins/resources/markdown.md | 2 +- 5 files changed, 38 insertions(+), 6 deletions(-) create mode 100644 tests/plugins/resources/hashtags.md create mode 100644 tests/plugins/resources/hashtags.raw (limited to 'tests/plugins') diff --git a/tests/plugins/PluginMarkdownTest.php b/tests/plugins/PluginMarkdownTest.php index b31e817f..319a94ba 100644 --- a/tests/plugins/PluginMarkdownTest.php +++ b/tests/plugins/PluginMarkdownTest.php @@ -106,6 +106,18 @@ class PluginMarkdownTest extends PHPUnit_Framework_TestCase $this->assertEquals($text, $reversedText); } + /** + * Test reverse_text2clickable(). + */ + public function testReverseText2clickableHashtags() + { + $text = file_get_contents('tests/plugins/resources/hashtags.raw'); + $md = file_get_contents('tests/plugins/resources/hashtags.md'); + $clickableText = hashtag_autolink($text); + $reversedText = reverse_text2clickable($clickableText); + $this->assertEquals($md, $reversedText); + } + /** * Test reverse_nl2br(). */ @@ -246,7 +258,7 @@ class PluginMarkdownTest extends PHPUnit_Framework_TestCase $this->conf->get('security.markdown_escape', true), $this->conf->get('security.allowed_protocols') ); - $this->assertEquals($html, $data); + $this->assertEquals($html, $data . PHP_EOL); } /** diff --git a/tests/plugins/resources/hashtags.md b/tests/plugins/resources/hashtags.md new file mode 100644 index 00000000..46326de3 --- /dev/null +++ b/tests/plugins/resources/hashtags.md @@ -0,0 +1,10 @@ +[#lol](?addtag=lol) + + #test + +`#test2` + +``` +bla #bli blo +#bla +``` diff --git a/tests/plugins/resources/hashtags.raw b/tests/plugins/resources/hashtags.raw new file mode 100644 index 00000000..9d2dc98a --- /dev/null +++ b/tests/plugins/resources/hashtags.raw @@ -0,0 +1,10 @@ +#lol + + #test + +`#test2` + +``` +bla #bli blo +#bla +``` diff --git a/tests/plugins/resources/markdown.html b/tests/plugins/resources/markdown.html index f1df4e7e..c3460bf7 100644 --- a/tests/plugins/resources/markdown.html +++ b/tests/plugins/resources/markdown.html @@ -12,11 +12,11 @@

      5. two
      6. three
      7. four
      8. -
      9. foo <a href="?addtag=foobar" title="Hashtag foobar">#foobar</a>
      10. +
      11. foo #foobar
    -

    <a href="?addtag=foobar" title="Hashtag foobar">#foobar</a> foo lol #foo <a href="?addtag=bar" title="Hashtag bar">#bar</a>

    -

    fsdfs http://link.tld <a href="?addtag=foobar" title="Hashtag foobar">#foobar</a> http://link.tld

    +

    #foobar foo lol #foo #bar

    +

    fsdfs http://link.tld #foobar http://link.tld

    http://link.tld #foobar
     next #foo

    Block:

    @@ -30,4 +30,4 @@ next #foo link
    link
    link
    -link

    \ No newline at end of file +link

    diff --git a/tests/plugins/resources/markdown.md b/tests/plugins/resources/markdown.md index b8ebd934..9350a8c7 100644 --- a/tests/plugins/resources/markdown.md +++ b/tests/plugins/resources/markdown.md @@ -31,4 +31,4 @@ lorem ipsum #foobar http://link.tld [link](ftp://test.tld/path/?query=value#hash) [link](magnet:test.tld/path/?query=value#hash) [link](javascript:alert('xss')) -[link](other://test.tld/path/?query=value#hash) \ No newline at end of file +[link](other://test.tld/path/?query=value#hash) -- cgit v1.2.3 From 0e54e1059f3c3aa353a448567a9314ad694abbe1 Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Tue, 14 Aug 2018 13:39:31 +0200 Subject: Isso plugin: add an icon in linklist if enabled Fixes #1075 --- tests/plugins/PluginIssoTest.php | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'tests/plugins') diff --git a/tests/plugins/PluginIssoTest.php b/tests/plugins/PluginIssoTest.php index 0ae73183..2c9efbcd 100644 --- a/tests/plugins/PluginIssoTest.php +++ b/tests/plugins/PluginIssoTest.php @@ -21,7 +21,7 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase /** * Test Isso init without errors. */ - public function testWallabagInitNoError() + public function testIssoInitNoError() { $conf = new ConfigManager(''); $conf->set('plugins.ISSO_SERVER', 'value'); @@ -32,7 +32,7 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase /** * Test Isso init with errors. */ - public function testWallabagInitError() + public function testIssoInitError() { $conf = new ConfigManager(''); $errors = isso_init($conf); @@ -96,19 +96,22 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase array( 'id' => 12, 'url' => $str, + 'shorturl' => $short1 = 'abcd', 'created' => DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, $date1), ), array( 'id' => 13, 'url' => $str . '2', + 'shorturl' => $short2 = 'efgh', 'created' => DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, $date2), ), ) ); $processed = hook_isso_render_linklist($data, $conf); - // data shouldn't be altered - $this->assertEquals($data, $processed); + // link_plugin should be added for the icon + $this->assertContains('', $processed['links'][0]['link_plugin'][0]); + $this->assertContains('', $processed['links'][1]['link_plugin'][0]); } /** @@ -127,6 +130,7 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase array( 'id' => 12, 'url' => $str, + 'shorturl' => $short1 = 'abcd', 'created' => DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, $date), ) ), @@ -135,8 +139,8 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase $processed = hook_isso_render_linklist($data, $conf); - // data shouldn't be altered - $this->assertEquals($data, $processed); + // link_plugin should be added for the icon + $this->assertContains('', $processed['links'][0]['link_plugin'][0]); } /** -- cgit v1.2.3 From 067c2dd8f5f6eb6cc808ddc4bd30aec104caf73d Mon Sep 17 00:00:00 2001 From: VirtualTam Date: Sat, 13 Oct 2018 00:35:47 +0200 Subject: lint: apply phpcbf to tests/ Signed-off-by: VirtualTam --- tests/plugins/PluginQrcodeTest.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'tests/plugins') diff --git a/tests/plugins/PluginQrcodeTest.php b/tests/plugins/PluginQrcodeTest.php index ebfadddf..dd632eee 100644 --- a/tests/plugins/PluginQrcodeTest.php +++ b/tests/plugins/PluginQrcodeTest.php @@ -15,7 +15,8 @@ class PluginQrcodeTest extends PHPUnit_Framework_TestCase /** * Reset plugin path */ - public function setUp() { + public function setUp() + { PluginManager::$PLUGINS_PATH = 'plugins'; } -- cgit v1.2.3