- Moving xmodule folder to root as we're dissolving sub-projects of common folder in edx-platform
- More info: https://openedx.atlassian.net/browse/BOM-2579
- -e common/lib/xmodule has been removed from the requirements as xmodule has itself become the part of edx-platform and not being installed through requirements
- The test files common/lib/xmodule/test_files/ have been removed as they are not being used anymore
23 lines
568 B
Python
23 lines
568 B
Python
"""
|
|
General utilities
|
|
"""
|
|
|
|
|
|
from collections import namedtuple
|
|
|
|
from opaque_keys.edx.locator import BlockUsageLocator
|
|
|
|
|
|
class BlockKey(namedtuple('BlockKey', 'type id')): # lint-amnesty, pylint: disable=missing-class-docstring
|
|
__slots__ = ()
|
|
|
|
def __new__(cls, type, id): # lint-amnesty, pylint: disable=redefined-builtin
|
|
return super().__new__(cls, type, id)
|
|
|
|
@classmethod
|
|
def from_usage_key(cls, usage_key):
|
|
return cls(usage_key.block_type, usage_key.block_id)
|
|
|
|
|
|
CourseEnvelope = namedtuple('CourseEnvelope', 'course_key structure')
|