X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=tests%2Fplugins%2FPluginIssoTest.php;h=2bbb93d23600baa32b288f0a67683e4bff311689;hb=76fe68d924d424283d0a1784c5f5e7582dda3a00;hp=1f545c7d6e4e01c69c3407471839f4334dad8237;hpb=bf26e7ebcb5ee69523b93a5ec7b7a65b39acb916;p=github%2Fshaarli%2FShaarli.git diff --git a/tests/plugins/PluginIssoTest.php b/tests/plugins/PluginIssoTest.php index 1f545c7d..2bbb93d2 100644 --- a/tests/plugins/PluginIssoTest.php +++ b/tests/plugins/PluginIssoTest.php @@ -1,4 +1,11 @@ set('plugins.ISSO_SERVER', 'value'); @@ -31,7 +38,7 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase /** * Test Isso init with errors. */ - function testWallabagInitError() + public function testIssoInitError(): void { $conf = new ConfigManager(''); $errors = isso_init($conf); @@ -41,18 +48,20 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase /** * Test render_linklist hook with valid settings to display the comment form. */ - function testIssoDisplayed() + public function testIssoDisplayed(): void { $conf = new ConfigManager(''); $conf->set('plugins.ISSO_SERVER', 'value'); $str = 'http://randomstr.com/test'; + $date = '20161118_100001'; $data = array( 'title' => $str, 'links' => array( array( + 'id' => 12, 'url' => $str, - 'linkdate' => 'abc', + 'created' => DateTime::createFromFormat(Bookmark::LINK_DATE_FORMAT, $date), ) ) ); @@ -65,53 +74,70 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase // plugin data $this->assertEquals(1, count($data['plugin_end_zone'])); - $this->assertNotFalse(strpos($data['plugin_end_zone'][0], 'abc')); + $this->assertNotFalse(strpos( + $data['plugin_end_zone'][0], + 'data-isso-id="'. $data['links'][0]['id'] .'"' + )); + $this->assertNotFalse(strpos( + $data['plugin_end_zone'][0], + 'data-title="'. $data['links'][0]['id'] .'"' + )); $this->assertNotFalse(strpos($data['plugin_end_zone'][0], 'embed.min.js')); } /** - * Test isso plugin when multiple links are displayed (shouldn't be displayed). + * Test isso plugin when multiple bookmarks are displayed (shouldn't be displayed). */ - function testIssoMultipleLinks() + public function testIssoMultipleLinks(): void { $conf = new ConfigManager(''); $conf->set('plugins.ISSO_SERVER', 'value'); $str = 'http://randomstr.com/test'; + $date1 = '20161118_100001'; + $date2 = '20161118_100002'; $data = array( 'title' => $str, 'links' => array( array( + 'id' => 12, 'url' => $str, - 'linkdate' => 'abc', + 'shorturl' => $short1 = 'abcd', + 'created' => DateTime::createFromFormat(Bookmark::LINK_DATE_FORMAT, $date1), ), array( + 'id' => 13, 'url' => $str . '2', - 'linkdate' => 'abc2', + 'shorturl' => $short2 = 'efgh', + 'created' => DateTime::createFromFormat(Bookmark::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]); } /** * Test isso plugin when using search (shouldn't be displayed). */ - function testIssoNotDisplayedWhenSearch() + public function testIssoNotDisplayedWhenSearch(): void { $conf = new ConfigManager(''); $conf->set('plugins.ISSO_SERVER', 'value'); $str = 'http://randomstr.com/test'; + $date = '20161118_100001'; $data = array( 'title' => $str, 'links' => array( array( + 'id' => 12, 'url' => $str, - 'linkdate' => 'abc', + 'shorturl' => $short1 = 'abcd', + 'created' => DateTime::createFromFormat(Bookmark::LINK_DATE_FORMAT, $date), ) ), 'search_term' => $str @@ -119,14 +145,14 @@ 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]); } /** * Test isso plugin without server configuration (shouldn't be displayed). */ - function testIssoWithoutConf() + public function testIssoWithoutConf(): void { $data = 'abc'; $conf = new ConfigManager('');