Added external function get the event's list
Signed-off-by: Valentin Popov <info@valentineus.link>
This commit is contained in:
parent
747055f9d1
commit
3a865453a4
@ -130,6 +130,51 @@ final class local_webhooks_external extends external_api {
|
||||
return new external_value(PARAM_BOOL, 'The result operation.');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the event's list.
|
||||
*
|
||||
* @return array
|
||||
*
|
||||
* @throws \ReflectionException
|
||||
* @throws \dml_exception
|
||||
* @throws \invalid_parameter_exception
|
||||
* @throws \restricted_context_exception
|
||||
*/
|
||||
public static function get_events(): array {
|
||||
$context = context_system::instance();
|
||||
self::validate_context($context);
|
||||
|
||||
return api::get_events();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns description of the method parameters.
|
||||
*
|
||||
* @return \external_function_parameters
|
||||
*/
|
||||
public static function get_events_parameters(): external_function_parameters {
|
||||
return new external_function_parameters([], '');
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns description of the method result value.
|
||||
*
|
||||
* @return \external_multiple_structure
|
||||
*/
|
||||
public static function get_events_returns(): external_multiple_structure {
|
||||
return new external_multiple_structure(
|
||||
new external_single_structure([
|
||||
'action' => new external_value(PARAM_ALPHANUMEXT, ''),
|
||||
'component' => new external_value(PARAM_COMPONENT, ''),
|
||||
'crud' => new external_value(PARAM_ALPHA, ''),
|
||||
'edulevel' => new external_value(PARAM_INT, ''),
|
||||
'eventname' => new external_value(PARAM_RAW, ''),
|
||||
'objecttable' => new external_value(PARAM_RAW, ''),
|
||||
'target' => new external_value(PARAM_RAW, ''),
|
||||
], ''), ''
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get data by service.
|
||||
*
|
||||
@ -252,7 +297,7 @@ final class local_webhooks_external extends external_api {
|
||||
'point' => new external_value(PARAM_URL, 'The service\'s endpoint.'),
|
||||
'status' => new external_value(PARAM_BOOL, 'The service\'s status.'),
|
||||
'token' => new external_value(PARAM_RAW, 'The service\'s secret key.'),
|
||||
], '')
|
||||
], ''), ''
|
||||
);
|
||||
}
|
||||
}
|
@ -141,6 +141,34 @@ final class local_webhooks_external_testcase extends externallib_advanced_testca
|
||||
self::assertInternalType('bool', $return);
|
||||
}
|
||||
|
||||
/**
|
||||
* Testing external function get the event's list.
|
||||
*
|
||||
* @throws \ReflectionException
|
||||
* @throws \dml_exception
|
||||
* @throws \invalid_parameter_exception
|
||||
* @throws \invalid_response_exception
|
||||
* @throws \restricted_context_exception
|
||||
*/
|
||||
public function test_get_events() {
|
||||
$this->resetAfterTest();
|
||||
self::setAdminUser();
|
||||
|
||||
$return = local_webhooks_external::get_events();
|
||||
$return = external_api::clean_returnvalue(local_webhooks_external::get_events_returns(), $return);
|
||||
|
||||
self::assertInternalType('array', $return);
|
||||
self::assertCount(count(api::get_events()), $return);
|
||||
|
||||
foreach ($return as $item) {
|
||||
self::assertInternalType('array', $item);
|
||||
|
||||
self::assertEquals([
|
||||
'action', 'component', 'crud', 'edulevel', 'eventname', 'objecttable', 'target',
|
||||
], array_keys($item));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Testing external get record's data.
|
||||
*
|
||||
|
Loading…
x
Reference in New Issue
Block a user