Files
edx-platform/lms/djangoapps/program_enrollments/tests/test_admin.py
2019-04-25 13:06:06 -04:00

40 lines
1.7 KiB
Python

"""
Unit tests for the ProgramEnrollment admin classes.
"""
from __future__ import unicode_literals
from django.contrib.admin.sites import AdminSite
from django.test import TestCase
import mock
from lms.djangoapps.program_enrollments.admin import ProgramEnrollmentAdmin, ProgramCourseEnrollmentAdmin
from lms.djangoapps.program_enrollments.models import ProgramEnrollment, ProgramCourseEnrollment
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