Merge branch 'MDL-50572-master' of git://github.com/junpataleta/moodle
authorEloy Lafuente (stronk7) <stronk7@moodle.org>
Mon, 3 Aug 2015 10:58:35 +0000 (12:58 +0200)
committerEloy Lafuente (stronk7) <stronk7@moodle.org>
Mon, 3 Aug 2015 10:58:35 +0000 (12:58 +0200)
blocks/tag_youtube/db/install.php [new file with mode: 0644]
blocks/tag_youtube/tests/block_tag_youtube_test.php [new file with mode: 0644]
repository/tests/generator_test.php
repository/youtube/db/install.php

diff --git a/blocks/tag_youtube/db/install.php b/blocks/tag_youtube/db/install.php
new file mode 100644 (file)
index 0000000..0572762
--- /dev/null
@@ -0,0 +1,36 @@
+<?php
+// This file is part of Moodle - http://moodle.org/
+//
+// Moodle is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// Moodle is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+
+/**
+ * Tag Youtube block installation.
+ *
+ * @package    block_tag_youtube
+ * @copyright  2015 Jun Pataleta
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+/**
+ * Sets the install values for the tag_youtube entry in the block table.
+ *
+ * @return void
+ */
+function xmldb_block_tag_youtube_install() {
+    global $DB;
+
+    // Disable this block by default.
+    $DB->set_field('block', 'visible', 0, array('name' => 'tag_youtube'));
+}
+
diff --git a/blocks/tag_youtube/tests/block_tag_youtube_test.php b/blocks/tag_youtube/tests/block_tag_youtube_test.php
new file mode 100644 (file)
index 0000000..6434c44
--- /dev/null
@@ -0,0 +1,51 @@
+<?php
+// This file is part of Moodle - http://moodle.org/
+//
+// Moodle is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// Moodle is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+
+/**
+ * Block Tag Youtube tests
+ *
+ * @package    block_tag_youtube
+ * @category   test
+ * @copyright  2015 Jun Pataleta
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+defined('MOODLE_INTERNAL') || die();
+
+/**
+ * Block Tag Youtube test class.
+ *
+ * @package   block_tag_youtube
+ * @category  test
+ * @copyright 2015 Jun Pataleta
+ * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+class core_block_tag_youtube_testcase extends advanced_testcase {
+
+    /**
+     * Testing the tag youtube block's initial state after a new installation.
+     *
+     * @return void
+     */
+    public function test_after_install() {
+        global $DB;
+
+        $this->resetAfterTest(true);
+
+        // Assert that tag_youtube entry exists and that its visible attribute is set to 0 (disabled).
+        $this->assertTrue($DB->record_exists('block', array('name' => 'tag_youtube', 'visible' => 0)));
+    }
+}
index d21fc35..9f24d63 100644 (file)
@@ -50,7 +50,7 @@ class core_repository_generator_testcase extends advanced_testcase {
             'user', 'webdav', 'wikimedia', 'youtube');
 
         // The ones enabled during installation.
-        $alreadyenabled = array('local', 'recent', 'upload', 'url', 'user', 'wikimedia', 'youtube');
+        $alreadyenabled = array('local', 'recent', 'upload', 'url', 'user', 'wikimedia');
 
         // Enable all the repositories which are not enabled yet.
         foreach ($all as $type) {
index 654f9e9..28a4f0b 100644 (file)
  */
 
 /**
- * Create a default instance of the youtube repository
+ * This was supposed to be the installer script for the Youtube repository.
  *
- * @return bool A status indicating success or failure
+ * However, since the Youtube repository is disabled in new Moodle installations from 3.0, and since we cannot
+ * just delete this file, the function's contents has been replaced to just return true.
+ * See https://tracker.moodle.org/browse/MDL-50572 for more details.
+ *
+ * @return bool Return true.
  */
 function xmldb_repository_youtube_install() {
-    global $CFG;
-    $result = true;
-    require_once($CFG->dirroot.'/repository/lib.php');
-    $youtubeplugin = new repository_type('youtube', array(), true);
-    if(!$id = $youtubeplugin->create(true)) {
-        $result = false;
-    }
-    return $result;
+    return true;
 }