From af44b37b6ebed8d4594b7b11c211ccd749c9a81f Mon Sep 17 00:00:00 2001 From: krista445 <309991377+krista445@users.noreply.github.com> Date: Fri, 7 Aug 2026 19:41:00 -0700 Subject: [PATCH] Course: restore general session coach notifications - refs #3769 --- main/inc/lib/course.lib.php | 8 ++-- tests/unit/CourseManagerTest.php | 76 ++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 4 deletions(-) create mode 100644 tests/unit/CourseManagerTest.php diff --git a/main/inc/lib/course.lib.php b/main/inc/lib/course.lib.php index 370d1bba7d6..6f796a4284a 100755 --- a/main/inc/lib/course.lib.php +++ b/main/inc/lib/course.lib.php @@ -1980,11 +1980,11 @@ public static function get_coach_list_from_course_code( // We get the session coach. $sql = "SELECT id_coach FROM $table WHERE id = $session_id"; $rs = Database::query($sql); - $session_id_coach = Database::result($rs, 0, 'id_coach'); - if (is_int($session_id_coach)) { - $userInfo = api_get_user_info($session_id_coach); + $sessionCoachId = (int) Database::result($rs, 0, 'id_coach'); + if ($sessionCoachId > 0) { + $userInfo = api_get_user_info($sessionCoachId); if ($userInfo) { - $users[$session_id_coach] = $userInfo; + $users[$sessionCoachId] = $userInfo; } } } diff --git a/tests/unit/CourseManagerTest.php b/tests/unit/CourseManagerTest.php new file mode 100644 index 00000000000..126c951124f --- /dev/null +++ b/tests/unit/CourseManagerTest.php @@ -0,0 +1,76 @@ + 42]; + } + + function api_get_user_info($userId) + { + CourseManagerDatabaseStub::$userLookups[] = $userId; + + return ['user_id' => (int) $userId]; + } + + require_once dirname(__DIR__, 2).'/main/inc/lib/course.lib.php'; + + self::assertSame( + [17 => ['user_id' => 17]], + CourseManager::get_coach_list_from_course_code('COURSE', 9) + ); + self::assertSame([17], CourseManagerDatabaseStub::$userLookups); + + CourseManagerDatabaseStub::$generalCoachId = 0; + CourseManagerDatabaseStub::$userLookups = []; + + self::assertSame([], CourseManager::get_coach_list_from_course_code('COURSE', 9)); + self::assertSame([], CourseManagerDatabaseStub::$userLookups); + } +}