<?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');
}
* 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';
--- /dev/null
+<?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);
+ }
+}