test: certified participants data

This commit is contained in:
Jannat Patel
2025-12-29 16:02:38 +05:30
parent 3151854bfd
commit 5053b4e45f
5 changed files with 120 additions and 71 deletions

View File

@@ -287,7 +287,7 @@ def get_certified_participants(filters=None, start=0, page_length=100):
"LMS Certificate",
filters=filters,
or_filters=or_filters,
fields=["member", "issue_date"],
fields=["member", "issue_date", "batch_name", "course", "name"],
group_by="member",
order_by="issue_date desc",
start=start,
@@ -309,7 +309,6 @@ def update_certification_filters(filters):
or_filters = {}
if not filters:
filters = {}
filters.update({"published": 1})
category = filters.get("category")

View File

@@ -2,6 +2,7 @@ import frappe
from frappe.tests import UnitTestCase
from frappe.utils import add_days, nowdate
from lms.lms.api import get_certified_participants
from lms.lms.doctype.lms_certificate.lms_certificate import get_default_certificate_template, is_certified
from .utils import (
@@ -147,6 +148,7 @@ class TestUtils(UnitTestCase):
certificate.member = member
certificate.issue_date = frappe.utils.nowdate()
certificate.template = get_default_certificate_template()
certificate.published = 1
certificate.save()
return certificate
@@ -265,6 +267,15 @@ class TestUtils(UnitTestCase):
self.assertIsNone(is_certified(self.course.name))
frappe.session.user = "Administrator"
def test_certified_participants(self):
filters = {"category": "Utility Course"}
certified_participants = get_certified_participants(filters=filters)
self.assertEqual(len(certified_participants), 1)
self.assertEqual(certified_participants[0].member, self.student1.email)
filters = {"category": "Nonexistent Category"}
certified_participants_no_match = get_certified_participants(filters=filters)
self.assertEqual(len(certified_participants_no_match), 0)
def test_rating_validation(self):
student3 = self.create_user("student3@example.com", "Emily", "Cooper", ["LMS Student"])
with self.assertRaises(frappe.exceptions.ValidationError):