feat: Added test for Course Doctype
diff --git a/erpnext/education/doctype/course/course.py b/erpnext/education/doctype/course/course.py
index c558f6f..987823a 100644
--- a/erpnext/education/doctype/course/course.py
+++ b/erpnext/education/doctype/course/course.py
@@ -19,30 +19,10 @@
if total_weightage != 100:
frappe.throw(_("Total Weightage of all Assessment Criteria must be 100%"))
- def get_contents_based_on_type(self):
- contents= self.get_contents()
- quiz_list = [item for item in contents if item.doctype=="Quiz"]
- content_list = [item for item in contents if item.doctype!="Quiz"]
- return content_list, quiz_list
-
def get_topics(self):
try:
topic_list = self.get_all_children()
topic_data = [frappe.get_doc("Topic", topic.topic) for topic in topic_list]
except frappe.DoesNotExistError:
return None
- return topic_data
-
- def get_contents(self):
- try:
- topics = self.get_topics()
- content_data = [{'name':topic.name, 'topic_name': topic.topic_name ,'content':topic.get_contents()} for topic in topics]
- except Exception as e:
- return None
- return content_data
-
- def get_first_content(self):
- return self.get_contents()[0]
-
- def get_last_content(self):
- return self.get_contents()[-1]
\ No newline at end of file
+ return topic_data
\ No newline at end of file
diff --git a/erpnext/education/doctype/course/test_course.py b/erpnext/education/doctype/course/test_course.py
index 9e0d185..a24ba8a 100644
--- a/erpnext/education/doctype/course/test_course.py
+++ b/erpnext/education/doctype/course/test_course.py
@@ -2,6 +2,7 @@
# Copyright (c) 2015, Frappe Technologies and Contributors
# See license.txt
from __future__ import unicode_literals
+from erpnext.education.doctype.topic.test_topic import make_topic
import frappe
import unittest
@@ -9,12 +10,35 @@
# test_records = frappe.get_test_records('Course')
class TestCourse(unittest.TestCase):
- pass
+ def setUp(self):
+ make_course_and_linked_topic("_Test Course 1", ["_Test Topic 1", "_Test Topic 2"])
+
+ def test_get_topics(self):
+ course = frappe.get_doc("Course", "_Test Course 1")
+ topics = course.get_topics()
+ self.assertEqual(topics[0].name, "_Test Topic 1")
+ self.assertEqual(topics[1].name, "_Test Topic 2")
+ frappe.db.rollback()
def make_course(name):
- course = frappe.get_doc({
- "doctype": "Program",
- "course_name": name,
- "course_code": name
- }).insert()
- return course.name
\ No newline at end of file
+ try:
+ course = frappe.get_doc("Course", name)
+ except frappe.DoesNotExistError:
+ course = frappe.get_doc({
+ "doctype": "Course",
+ "course_name": name,
+ "course_code": name
+ }).insert()
+ return course.name
+
+def make_course_and_linked_topic(course_name, topic_name_list):
+ try:
+ course = frappe.get_doc("Course", course_name)
+ except frappe.DoesNotExistError:
+ make_course(course_name)
+ course = frappe.get_doc("Course", course_name)
+ topic_list = [make_topic(topic_name) for topic_name in topic_name_list]
+ for topic in topic_list:
+ course.append("topics", {"topic": topic})
+ course.save()
+ return course