diff --git a/mod/data/classes/external.php b/mod/data/classes/external.php index e71c98c162c..65670ef0728 100644 --- a/mod/data/classes/external.php +++ b/mod/data/classes/external.php @@ -596,7 +596,7 @@ class mod_data_external extends external_api { $params = array('databaseid' => $databaseid); $params = self::validate_parameters(self::get_fields_parameters(), $params); - $warnings = array(); + $fields = $warnings = array(); list($database, $course, $cm, $context) = self::validate_database($params['databaseid']); diff --git a/mod/data/tests/externallib_test.php b/mod/data/tests/externallib_test.php index 1b61d09bf49..e9310b000b0 100644 --- a/mod/data/tests/externallib_test.php +++ b/mod/data/tests/externallib_test.php @@ -659,6 +659,18 @@ class mod_data_external_testcase extends externallib_advanced_testcase { } } + /** + * Test get_fields_database_without_fields. + */ + public function test_get_fields_database_without_fields() { + + $this->setUser($this->student1); + $result = mod_data_external::get_fields($this->database->id); + $result = external_api::clean_returnvalue(mod_data_external::get_fields_returns(), $result); + + $this->assertEmpty($result['fields']); + } + /** * Test search_entries. */