Commit Graph

49 Commits

Author SHA1 Message Date
M. Zulqarnain
94f14c6b3d refactor: pyupgrade on bookmarks, cache_tools, catalog (#26783) 2021-03-15 18:29:40 +05:00
Aarif
d2644e2dc2 replaced unittest assertions pytest assertions (#26554) 2021-02-18 18:06:13 +05:00
Max Sokolski
22a88de1ea In the LMS, bookmarks associated to deleted units are not deleted 2020-12-09 04:51:09 +02:00
Kyle McCormick
151bd13666 Use full names for common.djangoapps imports; warn when using old style (#25477)
* Generate common/djangoapps import shims for LMS
* Generate common/djangoapps import shims for Studio
* Stop appending project root to sys.path
* Stop appending common/djangoapps to sys.path
* Import from common.djangoapps.course_action_state instead of course_action_state
* Import from common.djangoapps.course_modes instead of course_modes
* Import from common.djangoapps.database_fixups instead of database_fixups
* Import from common.djangoapps.edxmako instead of edxmako
* Import from common.djangoapps.entitlements instead of entitlements
* Import from common.djangoapps.pipline_mako instead of pipeline_mako
* Import from common.djangoapps.static_replace instead of static_replace
* Import from common.djangoapps.student instead of student
* Import from common.djangoapps.terrain instead of terrain
* Import from common.djangoapps.third_party_auth instead of third_party_auth
* Import from common.djangoapps.track instead of track
* Import from common.djangoapps.util instead of util
* Import from common.djangoapps.xblock_django instead of xblock_django
* Add empty common/djangoapps/__init__.py to fix pytest collection
* Fix pylint formatting violations
* Exclude import_shims/ directory tree from linting
2020-11-10 07:02:01 -05:00
Saleem Latif
43d0a67fa1 Request for field to specify locale in Django enterprise accounts 2020-10-20 17:56:22 +05:00
aarif
79bf089406 updated the django-waffle to support django 2.2
made changes to test with previous version of django-waffle

updated the query count to test

testing with version 0.13

testing with version 0.14

testing with version 0.15

added version 0.14

updated the django-waffle version to use 0.18

updated the django-waffle version to use 0.16

updated the query counts to pass tests

ran make upgrade

updated the django-waffle to support django 2.2

made changes to test with previous version of django-waffle

updated the query count to test

testing with version 0.13

testing with version 0.14

testing with version 0.15

added version 0.14

updated the django-waffle version to use 0.18

updated the django-waffle version to use 0.16

updated the query counts to pass tests

removed the pdb statements

ran make upgrade
2020-01-08 14:11:42 +05:00
Feanil Patel
6e3fe00fff Fix all E303 pep8 errors. 2019-12-30 12:25:38 -05:00
Feanil Patel
9cf2f9f298 Run 2to3 -f future . -w
This will remove imports from __future__ that are no longer needed.

https://docs.python.org/3.5/library/2to3.html#2to3fixer-future
2019-12-30 10:35:30 -05:00
Michael Youngstrom
353d006839 INCR-115 2019-04-24 11:07:37 -04:00
David Ormsbee
76620e0bf2 Add cookie size monitoring New Relic metrics.
This adds middleware that will create custom parameter metrics in
New Relic to track the size of all the cookies being received for
our domain. The custom fields are "cookies_total_size" and a
separate named parameter for every cookie size, e.g.
"cookies.csrftoken.size".

This is intended to help us track cookie growth and better diagnose
issues where users lose their sessions. It is toggled by the
'request_utils.capture_cookie_sizes' Waffle Flag.
2019-02-22 18:18:41 -05:00
Michael Youngstrom
4bbd1dee0b Remove shards from commonlib-unit tests 2019-02-12 14:28:35 -05:00
Jeremy Bowman
d90afa4cde TE-2689 Remove useless pylint suppressions part 5 2018-08-21 11:07:52 -04:00
Jeremy Bowman
c290bf8a07 TE-2524 Stop using nose.plugins - openedx 2018-08-02 14:54:50 -04:00
Nimisha Asthagiri
ce4cb53672 Update Permissions to use latest edx-drf-extensions and rest_condition 2018-06-28 18:37:53 -04:00
Brian Mesick
832f6a7157 Merge pull request #18320 from edx/bmedx/remove_111_test_marks
Remove unused pytest markers for Django 1.11 upgrade
2018-06-06 11:15:26 -04:00
bmedx
c125ff6a57 Remove unused pytest markers for Django 1.11 upgrade 2018-06-06 09:58:38 -04:00
Eric Fischer
247bb50ed2 s/django.core.urlresolvers/django.urls/g
Django 1.10 deprecation fix for Hackathon XIX
Addresses PLAT-1397
2018-06-05 13:59:09 -04:00
Stuart Young
1fd2167144 rebalance python unittests onto new shards 2018-05-03 11:16:05 -04:00
bmedx
95e76dcafe Small fixes to LMS unit 1 failures in Django 1.11 tests 2018-01-08 10:20:30 -05:00
bmedx
d827d47b48 Tag LMS Unit 2 tests that fail in Django 1.11 2017-11-22 15:47:22 -05:00
Ned Batchelder
e23e3a0486 Fix a number of unused-import pylint violations 2017-11-21 19:57:06 -05:00
cahrens
fd62164563 Remove usages of deprecated SlashSeparatedCourseKey. 2017-08-08 12:32:58 -04:00
Andy Armstrong
0f808cec78 Implement theme admin UI to support previewing
LEARNER-2017
2017-07-27 17:24:31 -04:00
Jesse Shapiro
fa9c09f9fe Remove Enterprise SSO hooks 2017-07-21 18:24:09 -04:00
Uman Shahzad
8b65ca17c5 Migrate to latest, split python-social-auth.
PSA was monolothic, now split, with new features, like
a DB-backed partial pipeline. FB OAuth2 version also upped.

Partial pipelines don't get cleared except when necessary.
They persist for special cases like change of browser while
still mid-pipeline (i.e. email validation step).

Refactor, cleanup, and update of a lot of small things as well.

PLEASE NOTE the new `social_auth_partial` table.
2017-06-20 22:05:36 +05:00
Calen Pennington
3deb3a3c1b Merge pull request #14977 from cpennington/cale/fix-learner-542
Cale/fix learner 542
2017-05-01 12:18:03 -04:00
Calen Pennington
1811f7235f Minimize the number of queries done while noop updating a user-preference 2017-04-28 12:26:41 -04:00
Ned Batchelder
4a568476fd Remove a number of unneeded super()-delegation methods 2017-04-27 14:12:56 -04:00
David Ormsbee
2051c90924 Test Speedup: Isolate Modulestore Signals
There are a number of Django Signals that are on the modulestore's
SignalHandler class, such as SignalHandler.course_published. These
signals can trigger very expensive processes to occur, such as course
overview or block structures generation. Most of the time, the test
author doesn't care about these side-effects.

This commit does a few things:

* Converts the signals on SignalHandler to be instances of a new
  SwitchedSignal class, that allows signal sending to be disabled.

* Creates a SignalIsolationMixin helper similar in spirit to the
  CacheIsolationMixin, and adds it to the ModuleStoreIsolationMixin
  (and thus to ModuleStoreTestCase and SharedModuleStoreTestCase).

* Converts our various tests to use this new mechanism. In some cases,
  this means adjusting query counts downwards because they no longer
  have to account for publishing listener actions.

Modulestore generated signals are now muted by default during test runs.
Calls to send() them will result in no-ops. You can choose to enable
specific signals for a given subclass of ModuleStoreTestCase or
SharedModuleStoreTestCase by specifying an ENABLED_SIGNALS class
attribute, like the following example:

    from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase

    class MyPublishTestCase(ModuleStoreTestCase):
        ENABLED_SIGNALS = ['course_published', 'pre_publish']

You should take great care when disabling signals outside of a
ModuleStoreTestCase or SharedModuleStoreTestCase, since they can leak
out into other tests. Be sure to always clean up, and never disable
signals outside of testing. Because signals are essentially process
globals, it can have a lot of unpleasant side-effects if we start
mucking around with them during live requests.

Overall, this change has cut the total test execution time for
edx-platform by a bit over a third, though we still spend a lot in
pre-test setup during our test builds.

[PERF-413]
2017-02-23 10:31:16 -05:00
J. Cliff Dyer
f33832a691 scoutrule: dedupe skip_unless_lms 2017-01-18 09:43:46 -05:00
Nimisha Asthagiri
99e6d53939 Preload definitions when collecting block structures 2016-12-29 08:51:26 -05:00
Calen Pennington
bc20a37c2b Simplify how shards are selected in CI 2016-08-03 16:23:02 -04:00
Ned Batchelder
8571ceabeb Fix many wrong-assert-type errors 2016-08-03 12:44:41 -04:00
cahrens
682ee5eac1 Rename helper method that was being run as a testpoint. 2016-07-25 16:17:40 -04:00
cahrens
d061b8ddbe Use request_cache for storing disabled xblock names.
TNL-5002
2016-07-25 16:17:30 -04:00
Matt Drayer
68312bdd2d Revert "Revert "saleem-latif/WL-328: Multi-Site Comprehensive Theming""
2. Update COMPREHNSIVE_THEME_DIR to COMPREHENSIVE_THEME_DIRS
3. Update paver commands to support multi theme dirs
4. Updating template loaders
5. Add ENABLE_COMPREHENSIVE_THEMING flag to enable or disable theming via settings
6. Update tests
7. Add backward compatibility for COMPREHEHNSIVE_THEME_DIR
2016-06-30 15:19:51 +05:00
Hasnain
11454640da Added middleware to redirect the user from expired course page to all courses page. 2016-06-01 14:56:27 -04:00
Adam Palay
a7d638de9e clear request cache after celery task finishes (TNL-2705)
set max_num_courses_in_cache on modulestore
2016-05-18 10:43:54 -04:00
Calen Pennington
853bfe7a36 Add a TestCase mixin for enabling caches in tests
By default, disable all caching in tests, to preserve test independence.
In order to enable caching, inherit from CacheSetupMixin, and specify
which cache configuration is needed.

[EV-32]
2016-05-04 14:51:30 -04:00
Ben Patterson
c504029b39 Create a third shard for lms unit tests.
This will leverage the nose attrib plugin to allow us
to break tests apart on our build system to run
in parallel on separate nodes.
2016-03-17 12:01:42 -04:00
muzaffaryousaf
509522414a Using display_name_with_default instead of display_name.
TNL-4103
2016-02-19 16:50:23 +05:00
David Ormsbee
8fa8b209a7 Remove query counts from Bookmarks HTTP API tests.
Query counts already happen at the model and Python API test layers.
Having query counts in the HTTP API tests makes things more brittle
because that includes middleware that this code should not be aware
of. We don't want to have to revisit these tests every time
another piece of middleware is added or removed.
2016-02-08 08:05:13 -05:00
David Ormsbee
be25bb8aba Clear caches between tests for ModuleStoreTestCase/SharedModuleStoreTestCase
Cached values were leaking across tests, causing difficult to debug errors,
particularly when using Config Models. As part of this work, certain tests
that had query counts that relied on those values being cached needed to
be adjusted up.
2016-02-06 00:01:15 -05:00
Nimisha Asthagiri
f3cb692472 Safe Session Cookies Middleware 2016-01-26 17:23:03 -05:00
muzaffaryousaf
b4189784da Fixed POST bookmarks bug when display_name is None.
Added tests & general message to js when parsing fails.

TNL-3989
2016-01-12 09:47:51 -05:00
ehtesham
3385d1e128 TNL-2810 backend implementation to limit the maximum bookmarks per course 2015-12-21 22:17:58 +05:00
Usman Khalid
27dcb811e7 Speedup the bookmarks tests. 2015-12-17 22:10:22 +05:00
Usman Khalid
8bdc097293 Fixes after rebase to Django 1.8 2015-12-17 22:10:21 +05:00
Usman Khalid
4304c66c54 Performance optimizations and cache to keep the bookmarks info updated.
The cache uses the bookmarks.XBlockCache model.

TNL-1945
2015-12-17 22:07:34 +05:00