From 88814648a6cf238e96d9fee5899b131ac9d97ffb Mon Sep 17 00:00:00 2001 From: Huong Nguyen Date: Mon, 25 Dec 2023 15:52:59 +0700 Subject: [PATCH] MDL-69615 core_task: Add a task trait --- lib/classes/task/task_trait.php | 40 +++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 lib/classes/task/task_trait.php diff --git a/lib/classes/task/task_trait.php b/lib/classes/task/task_trait.php new file mode 100644 index 00000000000..323c2dd6901 --- /dev/null +++ b/lib/classes/task/task_trait.php @@ -0,0 +1,40 @@ +. + +namespace core\task; + +/** + * This file defines a trait to assist with unit tests in tasks. + * + * @package core + * @copyright 2024 Huong Nguyen + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +trait task_trait { + + /** + * Helper to execute a particular task. + * + * @param string $taskclass The task class. + */ + protected function execute_task(string $taskclass): void { + // Run the scheduled task. + ob_start(); + $task = manager::get_scheduled_task($taskclass); + $task->execute(); + ob_end_clean(); + } +}