MDL-67192 core_h5p: get site UUID from H5P using the API
[moodle.git] / lib / tests / fixtures / testable_core_h5p.php
index 1914c4f..282ca89 100644 (file)
@@ -83,18 +83,22 @@ class h5p_test_core extends core {
     /**
      * Get the URL of the test endpoints instead of the H5P ones.
      *
-     * If $library is null, moodle_url is the endpoint of the json test file with the H5P content types definition. If library is
-     * the machine name of a content type, moodle_url is the test URL for downloading the content type file.
+     * If $endpoint = 'content' and $library is null, moodle_url is the endpoint of the latest version of the H5P content
+     * types; however, if $library is the machine name of a content type, moodle_url is the endpoint to download the content type.
+     * The SITES endpoint ($endpoint = 'site') may be use to get a site UUID or send site data.
      *
-     * @param string|null $library The filename of the H5P content type file in external.
-     * @return \moodle_url The moodle_url of the file in external.
+     * @param string|null $library The machineName of the library whose endpoint is requested.
+     * @param string $endpoint The endpoint required. Valid values: "site", "content".
+     * @return \moodle_url The endpoint moodle_url object.
      */
-    public function get_api_endpoint(?string $library): \moodle_url {
+    public function get_api_endpoint(?string $library = null, string $endpoint = 'content'): \moodle_url {
 
         if ($library) {
             $h5purl = $this->endpoint . '/' . $library . '.h5p';
+        } else if ($endpoint == 'content') {
+            $h5purl = $this->endpoint . '/h5pcontenttypes.json';
         } else {
-            $h5purl = $h5purl = $this->endpoint . '/h5pcontenttypes.json';
+            $h5purl = $this->endpoint . '/h5puuid.json';
         }
 
         return new \moodle_url($h5purl);