I wanted to make a byte-sized contribution but there were no Jira tickets so we decided, thanks to a conversation with @jmbowman through the Open Edx Community #incr (Slack) channel, to collaborate in the elimination of warnings listed in the Warnings Report at https://build.testeng.edx.org/job/edx-platform-python-pipeline-master/warning_5freport_5fall_2ehtml/
This PR contributes to the elimination of deprecation warnings, specifically the one mentioned above and reported in the Warnings Report.
Changed assertNotRegexpMatches to assertNotRegex in the following files:
cms/djangoapps/contentstore/views/tests/test_preview.py
cms/djangoapps/contentstore/views/tests/test_item.py
lms/djangoapps/commerce/tests/test_views.py
lms/djangoapps/dashboard/tests/test_sysadmin.py
This warning occurs due to deprecation in python 3.5: https://docs.python.org/3.5/library/unittest.html#unittest.TestCase.assertNotRegex
Use the course key as the primary key for storing coure import logs in
mongo, instead of the deprecated course key (this only applies to
courses imported via git_import.py).
No effort is made to migrate existing logs, since they are ephemeral.
only require ccx-keys once
get_current_ccx will now expect a CourseKey instance as its argument, and will raise a value error if this expectation is not met.
document reason for local import
add special methods to pass attribute setting and deletion through to the wrapped modulestore
add __setattr__ and __delattr__ per code review, update __init__ to work with new methods
style change per code review
clean up context manager usage as recommended by code review
remove unused code and imports
convert modulestore type tests to use the `get_modulestore_type` api, remove unused imports
code quality: add docstrings
increase coverage for utils tests
fix bug found in testing.
increase test coverage on modulestore wrapper
code quality fixes
code-quality: ignore import error, but mark site for future consideration
remove references to middleware that were missed previously
use key apis rather than local implementation of key conversion. remove local implementationa
remove spurious test for attribute
fix test setUp to avoid unneeded flattening
code quality fixes
add security check ensuring that the coach is coach for *this* CCX.
prevent ccx/deprecated course id problems
1. do not allow ccx objects to be created if the course id is deprecated
2. filter out any ccx memberships that involve deprecated course ids (in case there are bad ccxs in the database)
Fix test failures and errors arising from incorrect code path execution
Create context manager to handle unwrapping and restoring ccx values for the modulestore wrapper, employ it throughout modulestore wrapper implementation
The existing pattern of using `override_settings(MODULESTORE=...)` prevented
us from having more than one layer of subclassing in modulestore tests.
In a structure like:
@override_settings(MODULESTORE=store_a)
class BaseTestCase(ModuleStoreTestCase):
def setUp(self):
# use store
@override_settings(MODULESTORE=store_b)
class ChildTestCase(BaseTestCase):
def setUp(self):
# use store
In this case, the store actions performed in `BaseTestCase` on behalf of
`ChildTestCase` would still use `store_a`, even though the `ChildTestCase`
had specified to use `store_b`. This is because the `override_settings`
decorator would be the innermost wrapper around the `BaseTestCase.setUp` method,
no matter what `ChildTestCase` does.
To remedy this, we move the call to `override_settings` into the
`ModuleStoreTestCase.setUp` method, and use a cleanup to remove the override.
Subclasses can just defined the `MODULESTORE` class attribute to specify which
modulestore to use _for the entire `setUp` chain_.
[PLAT-419]
Move modulestore config for tests to an importable location
Disable pylnt warning for lms imports in common tests
Refactor all testcases that loaded all xml courses
TE-610
TE-489
Fixes a template error that occurs when viewing a course's detailed
git import log. The problem happens for courses imported using methods
other than the `git_add_course` command.
Move the open edx logo inside the div
Adding a bunch of placeholder views.
indenting.
Making some styles work against LMS sass.
Adding back the old edx footer and associated icons, with a feature flag.