Files
edx-platform/lms/djangoapps/program_enrollments/tests/test_admin.py
Kyle McCormick ea5652010c Create Python API for program_enrollments: Part I (#21511)
This is the first in a series of commits to create
a Python API for the LMS program_enrollments app.
We do some general refactoring, renaming, and clean-up
in order to move toward the creation of that API.

EDUCATOR-4321
2019-09-04 14:06:00 -04:00

44 lines
1.8 KiB
Python

"""
Unit tests for the ProgramEnrollment admin classes.
"""
from __future__ import absolute_import, unicode_literals
import mock
from django.contrib.admin.sites import AdminSite
from django.test import TestCase
from lms.djangoapps.program_enrollments.admin import ProgramCourseEnrollmentAdmin, ProgramEnrollmentAdmin
from lms.djangoapps.program_enrollments.models import ProgramCourseEnrollment, ProgramEnrollment
class ProgramEnrollmentAdminTests(TestCase):
"""
Unit tests for the ProgramEnrollments app. This just gives us a little
protection against exposing high-cardinality fields as drop-downs, exposing
new fields, etc.
"""
def setUp(self):
super(ProgramEnrollmentAdminTests, self).setUp()
self.program_admin = ProgramEnrollmentAdmin(ProgramEnrollment, AdminSite())
self.program_course_admin = ProgramCourseEnrollmentAdmin(ProgramCourseEnrollment, AdminSite())
def test_program_enrollment_admin(self):
request = mock.Mock()
expected_list_display = (
'id', 'user', 'external_user_key', 'program_uuid', 'curriculum_uuid', 'status'
)
assert expected_list_display == self.program_admin.get_list_display(request)
expected_raw_id_fields = ('user',)
assert expected_raw_id_fields == self.program_admin.raw_id_fields
def test_program_course_enrollment_admin(self):
request = mock.Mock()
expected_list_display = (
'id', 'program_enrollment', 'course_enrollment', 'course_key', 'status'
)
assert expected_list_display == self.program_course_admin.get_list_display(request)
expected_raw_id_fields = ('program_enrollment', 'course_enrollment')
assert expected_raw_id_fields == self.program_course_admin.raw_id_fields