コード例 #1
0
 def test_course_constructor_course_id_no_branch(self):
     testurn = 'mit.eecs.6002x'
     testobj = CourseLocator(course_id=testurn)
     self.check_course_locn_fields(testobj, 'course_id', course_id=testurn)
     self.assertEqual(testobj.course_id, testurn)
     self.assertEqual(str(testobj), testurn)
     self.assertEqual(testobj.url(), 'edx://' + testurn)
コード例 #2
0
 def test_course_constructor_course_id_no_branch(self):
     testurn = "mit.eecs.6002x"
     testobj = CourseLocator(course_id=testurn)
     self.check_course_locn_fields(testobj, "course_id", course_id=testurn)
     self.assertEqual(testobj.course_id, testurn)
     self.assertEqual(str(testobj), testurn)
     self.assertEqual(testobj.url(), "edx://" + testurn)
コード例 #3
0
 def test_course_constructor_package_id_no_branch(self):
     testurn = 'mit.eecs.6002x'
     testobj = CourseLocator(package_id=testurn)
     self.check_course_locn_fields(testobj, 'package_id', package_id=testurn)
     self.assertEqual(testobj.package_id, testurn)
     self.assertEqual(str(testobj), testurn)
     self.assertEqual(testobj.url(), 'edx://' + testurn)
コード例 #4
0
 def test_course_constructor_course_id_no_revision(self):
     testurn = 'edu.mit.eecs.6002x'
     testobj = CourseLocator(course_id=testurn)
     self.check_course_locn_fields(testobj, 'course_id', course_id=testurn)
     self.assertEqual(testobj.course_id, testurn)
     self.assertEqual(str(testobj), testurn)
     self.assertEqual(testobj.url(), 'edx://' + testurn)
コード例 #5
0
    def test_course_constructor_version_guid(self):
        # generate a random location
        test_id_1 = ObjectId()
        test_id_1_loc = str(test_id_1)
        testobj_1 = CourseLocator(version_guid=test_id_1)
        self.check_course_locn_fields(testobj_1, 'version_guid', version_guid=test_id_1)
        self.assertEqual(str(testobj_1.version_guid), test_id_1_loc)
        self.assertEqual(str(testobj_1), VERSION_PREFIX + test_id_1_loc)
        self.assertEqual(testobj_1.url(), 'edx://' + VERSION_PREFIX + test_id_1_loc)

        # Test using a given string
        test_id_2_loc = '519665f6223ebd6980884f2b'
        test_id_2 = ObjectId(test_id_2_loc)
        testobj_2 = CourseLocator(version_guid=test_id_2)
        self.check_course_locn_fields(testobj_2, 'version_guid', version_guid=test_id_2)
        self.assertEqual(str(testobj_2.version_guid), test_id_2_loc)
        self.assertEqual(str(testobj_2), VERSION_PREFIX + test_id_2_loc)
        self.assertEqual(testobj_2.url(), 'edx://' + VERSION_PREFIX + test_id_2_loc)
コード例 #6
0
    def test_course_constructor_version_guid(self):
        # generate a random location
        test_id_1 = ObjectId()
        test_id_1_loc = str(test_id_1)
        testobj_1 = CourseLocator(version_guid=test_id_1)
        self.check_course_locn_fields(testobj_1, 'version_guid', version_guid=test_id_1)
        self.assertEqual(str(testobj_1.version_guid), test_id_1_loc)
        self.assertEqual(str(testobj_1), URL_VERSION_PREFIX + test_id_1_loc)
        self.assertEqual(testobj_1.url(), 'edx://' + URL_VERSION_PREFIX + test_id_1_loc)

        # Test using a given string
        test_id_2_loc = '519665f6223ebd6980884f2b'
        test_id_2 = ObjectId(test_id_2_loc)
        testobj_2 = CourseLocator(version_guid=test_id_2)
        self.check_course_locn_fields(testobj_2, 'version_guid', version_guid=test_id_2)
        self.assertEqual(str(testobj_2.version_guid), test_id_2_loc)
        self.assertEqual(str(testobj_2), URL_VERSION_PREFIX + test_id_2_loc)
        self.assertEqual(testobj_2.url(), 'edx://' + URL_VERSION_PREFIX + test_id_2_loc)
コード例 #7
0
 def test_course_constructor_course_id_separate_branch(self):
     test_id = "mit.eecs.6002x"
     test_branch = "published"
     expected_urn = "mit.eecs.6002x" + BRANCH_PREFIX + "published"
     testobj = CourseLocator(course_id=test_id, branch=test_branch)
     self.check_course_locn_fields(testobj, "course_id with separate branch", course_id=test_id, branch=test_branch)
     self.assertEqual(testobj.course_id, test_id)
     self.assertEqual(testobj.branch, test_branch)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), "edx://" + expected_urn)
コード例 #8
0
 def test_course_constructor_course_id_separate_branch(self):
     test_id = 'mit.eecs.6002x'
     test_branch = 'published'
     expected_urn = 'mit.eecs.6002x' + BRANCH_PREFIX + 'published'
     testobj = CourseLocator(course_id=test_id, branch=test_branch)
     self.check_course_locn_fields(testobj, 'course_id with separate branch',
                                   course_id=test_id,
                                   branch=test_branch,
                                   )
     self.assertEqual(testobj.course_id, test_id)
     self.assertEqual(testobj.branch, test_branch)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), 'edx://' + expected_urn)
コード例 #9
0
 def test_course_constructor_package_id_separate_branch(self):
     test_id = 'mit.eecs.6002x'
     test_branch = 'published'
     expected_urn = 'mit.eecs.6002x/' + BRANCH_PREFIX + 'published'
     testobj = CourseLocator(package_id=test_id, branch=test_branch)
     self.check_course_locn_fields(testobj, 'package_id with separate branch',
                                   package_id=test_id,
                                   branch=test_branch,
                                   )
     self.assertEqual(testobj.package_id, test_id)
     self.assertEqual(testobj.branch, test_branch)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), 'edx://' + expected_urn)
コード例 #10
0
 def test_course_constructor_course_id_separate_revision(self):
     test_id = 'edu.mit.eecs.6002x'
     test_revision = 'published'
     expected_urn = 'edu.mit.eecs.6002x;published'
     testobj = CourseLocator(course_id=test_id, revision=test_revision)
     self.check_course_locn_fields(testobj, 'course_id with separate revision',
                                   course_id=test_id,
                                   revision=test_revision,
                                   )
     self.assertEqual(testobj.course_id, test_id)
     self.assertEqual(testobj.revision, test_revision)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), 'edx://' + expected_urn)
コード例 #11
0
 def test_course_constructor_course_id_with_branch(self):
     testurn = 'mit.eecs.6002x/' + BRANCH_PREFIX + 'published'
     expected_id = 'mit.eecs.6002x'
     expected_branch = 'published'
     testobj = CourseLocator(course_id=testurn)
     self.check_course_locn_fields(testobj, 'course_id with branch',
                                   course_id=expected_id,
                                   branch=expected_branch,
                                   )
     self.assertEqual(testobj.course_id, expected_id)
     self.assertEqual(testobj.branch, expected_branch)
     self.assertEqual(str(testobj), testurn)
     self.assertEqual(testobj.url(), 'edx://' + testurn)
コード例 #12
0
 def test_course_constructor_package_id_with_branch(self):
     testurn = 'mit.eecs.6002x/' + BRANCH_PREFIX + 'published'
     expected_id = 'mit.eecs.6002x'
     expected_branch = 'published'
     testobj = CourseLocator(package_id=testurn)
     self.check_course_locn_fields(
         testobj,
         'package_id with branch',
         package_id=expected_id,
         branch=expected_branch,
     )
     self.assertEqual(testobj.package_id, expected_id)
     self.assertEqual(testobj.branch, expected_branch)
     self.assertEqual(str(testobj), testurn)
     self.assertEqual(testobj.url(), 'edx://' + testurn)
コード例 #13
0
 def test_course_constructor_course_id_separate_revision(self):
     test_id = 'edu.mit.eecs.6002x'
     test_revision = 'published'
     expected_urn = 'edu.mit.eecs.6002x;published'
     testobj = CourseLocator(course_id=test_id, revision=test_revision)
     self.check_course_locn_fields(
         testobj,
         'course_id with separate revision',
         course_id=test_id,
         revision=test_revision,
     )
     self.assertEqual(testobj.course_id, test_id)
     self.assertEqual(testobj.revision, test_revision)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), 'edx://' + expected_urn)
コード例 #14
0
 def test_course_constructor_course_id_repeated_branch(self):
     """
     The same branch appears in the course_id and the branch field.
     """
     test_id = "mit.eecs.6002x" + BRANCH_PREFIX + "published"
     test_branch = "published"
     expected_id = "mit.eecs.6002x"
     expected_urn = test_id
     testobj = CourseLocator(course_id=test_id, branch=test_branch)
     self.check_course_locn_fields(
         testobj, "course_id with repeated branch", course_id=expected_id, branch=test_branch
     )
     self.assertEqual(testobj.course_id, expected_id)
     self.assertEqual(testobj.branch, test_branch)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), "edx://" + expected_urn)
コード例 #15
0
 def test_course_constructor_course_id_repeated_revision(self):
     """
     The same revision appears in the course_id and the revision field.
     """
     test_id = 'edu.mit.eecs.6002x;published'
     test_revision = 'published'
     expected_id = 'edu.mit.eecs.6002x'
     expected_urn = 'edu.mit.eecs.6002x;published'
     testobj = CourseLocator(course_id=test_id, revision=test_revision)
     self.check_course_locn_fields(testobj, 'course_id with repeated revision',
                                   course_id=expected_id,
                                   revision=test_revision,
                                   )
     self.assertEqual(testobj.course_id, expected_id)
     self.assertEqual(testobj.revision, test_revision)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), 'edx://' + expected_urn)
コード例 #16
0
 def test_course_constructor_package_id_repeated_branch(self):
     """
     The same branch appears in the package_id and the branch field.
     """
     test_id = 'mit.eecs.6002x/' + BRANCH_PREFIX + 'published'
     test_branch = 'published'
     expected_id = 'mit.eecs.6002x'
     expected_urn = test_id
     testobj = CourseLocator(package_id=test_id, branch=test_branch)
     self.check_course_locn_fields(testobj, 'package_id with repeated branch',
                                   package_id=expected_id,
                                   branch=test_branch,
                                   )
     self.assertEqual(testobj.package_id, expected_id)
     self.assertEqual(testobj.branch, test_branch)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), 'edx://' + expected_urn)
コード例 #17
0
 def test_course_constructor_course_id_repeated_branch(self):
     """
     The same branch appears in the course_id and the branch field.
     """
     test_id = 'mit.eecs.6002x' + BRANCH_PREFIX + 'published'
     test_branch = 'published'
     expected_id = 'mit.eecs.6002x'
     expected_urn = test_id
     testobj = CourseLocator(course_id=test_id, branch=test_branch)
     self.check_course_locn_fields(testobj, 'course_id with repeated branch',
                                   course_id=expected_id,
                                   branch=test_branch,
                                   )
     self.assertEqual(testobj.course_id, expected_id)
     self.assertEqual(testobj.branch, test_branch)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), 'edx://' + expected_urn)
コード例 #18
0
 def test_course_constructor_course_id_repeated_revision(self):
     """
     The same revision appears in the course_id and the revision field.
     """
     test_id = 'edu.mit.eecs.6002x;published'
     test_revision = 'published'
     expected_id = 'edu.mit.eecs.6002x'
     expected_urn = 'edu.mit.eecs.6002x;published'
     testobj = CourseLocator(course_id=test_id, revision=test_revision)
     self.check_course_locn_fields(
         testobj,
         'course_id with repeated revision',
         course_id=expected_id,
         revision=test_revision,
     )
     self.assertEqual(testobj.course_id, expected_id)
     self.assertEqual(testobj.revision, test_revision)
     self.assertEqual(str(testobj), expected_urn)
     self.assertEqual(testobj.url(), 'edx://' + expected_urn)
コード例 #19
0
    def test_url(self):
        '''
        Ensure CourseLocator generates expected urls.
        '''
        raise SkipTest()

        testobj = CourseLocator(version_guid='versionid')
        self.assertEqual(testobj.url(), 'cvx/versionid', 'versionid')
        self.assertEqual(testobj, CourseLocator(testobj.url()),
                         'versionid conversion through url')

        testobj = CourseLocator(course_id='courseid')
        self.assertEqual(testobj.url(), 'crx/courseid', 'courseid')
        self.assertEqual(testobj, CourseLocator(testobj.url()),
                         'courseid conversion through url')

        testobj = CourseLocator(course_id='courseid', revision='rev')
        self.assertEqual(testobj.url(), 'crx/courseid@rev', 'rev')
        self.assertEqual(testobj, CourseLocator(testobj.url()),
                         'rev conversion through url')
コード例 #20
0
    def test_url(self):
        '''
        Ensure CourseLocator generates expected urls.
        '''
        raise SkipTest()

        testobj = CourseLocator(version_guid='versionid')
        self.assertEqual(testobj.url(), 'cvx/versionid', 'versionid')
        self.assertEqual(testobj, CourseLocator(testobj.url()),
                         'versionid conversion through url')

        testobj = CourseLocator(course_id='courseid')
        self.assertEqual(testobj.url(), 'crx/courseid', 'courseid')
        self.assertEqual(testobj, CourseLocator(testobj.url()),
                         'courseid conversion through url')

        testobj = CourseLocator(course_id='courseid', revision='rev')
        self.assertEqual(testobj.url(), 'crx/courseid@rev', 'rev')
        self.assertEqual(testobj, CourseLocator(testobj.url()),
                         'rev conversion through url')