]> git.immae.eu Git - github/shaarli/Shaarli.git/commitdiff
Add unit tests for Playvideos plugin 284/head
authorArthurHoaro <arthur@hoa.ro>
Sat, 7 Nov 2015 15:30:56 +0000 (16:30 +0100)
committerArthurHoaro <arthur@hoa.ro>
Sat, 7 Nov 2015 15:30:56 +0000 (16:30 +0100)
+ coding style

plugins/playvideos/playvideos.php
tests/plugins/PluginPlayvideosTest.php [new file with mode: 0644]

index 9918453c3f614e9e61660afafb0913a548593c2a..0a80aa58c5332f8697210e64344b1b3ba89184e6 100644 (file)
@@ -1,12 +1,20 @@
 <?php
+/**
+ * Plugin PlayVideos
+ *
+ * Add a button in the toolbar allowing to watch all videos.
+ * Note: this plugin adds jQuery.
+ */
 
 /**
  * When linklist is displayed, add play videos to header's toolbar.
  *
  * @param array $data - header data.
+ *
  * @return mixed - header data with playvideos toolbar item.
  */
-function hook_playvideos_render_header($data) {
+function hook_playvideos_render_header($data)
+{
     if ($data['_PAGE_'] == Router::$PAGE_LINKLIST) {
         $data['buttons_toolbar'][] = file_get_contents(PluginManager::$PLUGINS_PATH . '/playvideos/playvideos.html');
     }
@@ -18,9 +26,11 @@ function hook_playvideos_render_header($data) {
  * When linklist is displayed, include playvideos JS files.
  *
  * @param array $data - footer data.
+ *
  * @return mixed - footer data with playvideos JS files added.
  */
-function hook_playvideos_render_footer($data) {
+function hook_playvideos_render_footer($data)
+{
     if ($data['_PAGE_'] == Router::$PAGE_LINKLIST) {
         $data['js_files'][] = PluginManager::$PLUGINS_PATH . '/playvideos/jquery-1.11.2.min.js';
         $data['js_files'][] = PluginManager::$PLUGINS_PATH . '/playvideos/youtube_playlist.js';
diff --git a/tests/plugins/PluginPlayvideosTest.php b/tests/plugins/PluginPlayvideosTest.php
new file mode 100644 (file)
index 0000000..be1ef77
--- /dev/null
@@ -0,0 +1,61 @@
+<?php
+
+/**
+ * PluginPlayvideosTest.php
+ */
+
+require_once 'plugins/playvideos/playvideos.php';
+require_once 'application/Router.php';
+
+/**
+ * Class PluginPlayvideosTest
+ * Unit test for the PlayVideos plugin
+ */
+class PluginPlayvideosTest extends PHPUnit_Framework_TestCase
+{
+    /**
+     * Reset plugin path
+     */
+    function setUp()
+    {
+        PluginManager::$PLUGINS_PATH = 'plugins';
+    }
+
+    /**
+     * Test render_linklist hook.
+     */
+    function testPlayvideosHeader()
+    {
+        $str = 'stuff';
+        $data = array($str => $str);
+        $data['_PAGE_'] = Router::$PAGE_LINKLIST;
+
+        $data = hook_playvideos_render_header($data);
+        $this->assertEquals($str, $data[$str]);
+        $this->assertEquals(1, count($data['buttons_toolbar']));
+
+        $data = array($str => $str);
+        $data['_PAGE_'] = $str;
+        $this->assertEquals($str, $data[$str]);
+        $this->assertArrayNotHasKey('buttons_toolbar', $data);
+    }
+
+    /**
+     * Test render_footer hook.
+     */
+    function testPlayvideosFooter()
+    {
+        $str = 'stuff';
+        $data = array($str => $str);
+        $data['_PAGE_'] = Router::$PAGE_LINKLIST;
+
+        $data = hook_playvideos_render_footer($data);
+        $this->assertEquals($str, $data[$str]);
+        $this->assertEquals(2, count($data['js_files']));
+
+        $data = array($str => $str);
+        $data['_PAGE_'] = $str;
+        $this->assertEquals($str, $data[$str]);
+        $this->assertArrayNotHasKey('js_files', $data);
+    }
+}