Commit Graph

277 Commits

Author SHA1 Message Date
Jeremy Bowman
4e8668d3be TE-2524 Stop using nose.plugins - LMS 2 2018-08-01 13:54:06 -04:00
Amir Qayyum Khan
5ae5a531f4 Fixed override due date by limiting scope to selected users
Added selected user tests

updated my email
2018-07-19 14:25:34 +05:00
christopher lee
939c7f4857 Set max page size for get courses 2018-06-19 15:39:50 -04:00
christopher lee
48b5485be1 Set max page size for get courses
LEARNER-5566
2018-06-19 13:07:04 -04:00
Waheed Ahmed
780c1d982d Rate limit course list API.
This endpoint is likely being inefficient with how it's querying various parts
of the code and can take courseware down, it needs to be rate limited until
optimized.

LEARNER-5527
2018-06-13 16:59:32 +05:00
Albert (AJ) St. Aubin
e3c84bc8de Revert "Rate limit course list API." 2018-06-12 12:06:51 -04:00
Waheed Ahmed
803a6c742c Rate limit course list API.
This endpoint is likely being inefficient with how it's querying various parts of the code
and can take courseware down, it needs to be rate limited until optimized.

LEARNER-5527
2018-06-12 14:58:12 +05:00
Michael Youngstrom
26b4e30833 Remove django 1.8 shim 2018-06-06 10:34:56 -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
Zia Fazal
90633c0956 Merge pull request #17974 from edx/ziafazal/WL-1239
WL-1239: Ability to gate section based on completion percentage
2018-05-30 12:52:43 +05:00
Zia Fazal
53cf5638b6 added radio input fields to pre-requisite selection
Initial changes to gate section based on completion percentage

code refactoring and added evaluation of completion milestone

Fixed broken unit tests and added new tests

Fixed broken tests and quality violations

Fixed Pep8 violation

Fixed eslint quality violations

Test changes as suggested by reviewer

changes after feedbacy from reviewer

Update the docstring with suggested changes

excluding chapter from the blocks

Disallow empty values for min score and min completion

Changes afte feedback from UX/Accessibility

removed blank line
2018-05-30 11:25:59 +05:00
Stuart Young
1fd2167144 rebalance python unittests onto new shards 2018-05-03 11:16:05 -04:00
Albert (AJ) St. Aubin
7c6c2a1664 Merge pull request #16757 from appsembler/omar/search-for-courses-api
Add search for courses API to allow building a mobile native search view
2018-03-26 07:31:36 -04:00
David Ormsbee
f5a4ad20aa Merge pull request #17451 from mitodl/fix_outline_aq_course_structure_api
Fixed edX block structure api to load override data
2018-02-28 09:39:09 -05:00
Omar Al-Ithawi
fc7f98362d Add search for courses API 2018-02-17 17:23:05 +02:00
George Babey
26bac9f611 Moved paginators to edx_rest_framework_extensions package
Pagination should be standard and easy to adopt so moved the paginators
into the edx_rest_framework_extensions package so they can be easily
installed into other app/projects
2018-02-16 09:46:01 -05:00
Amir Qayyum Khan
aa6f88382d Fixed edX block structure api to load override data 2018-02-16 11:10:17 +05:00
Alex Dusenbery
7e51f02884 Get edx-platform working with external completion lib, add integration tests. 2018-02-14 15:54:27 -05:00
Sanford Student
8956739a34 Add the visual indicator to the sequence horizontal nav bar to mark verticals completed
EDUCATOR-2189
2018-02-12 15:26:40 -05:00
Jeremy Bowman
5289c7e828 PLAT-1915 Stop using deprecated BaseException.message 2018-01-31 17:22:01 -05:00
Troy Sankey
e649d2d782 Shim query count assertions due to added SAVEPOINTs 2018-01-25 11:38:46 -05:00
Bill Filler
4fe5f3457d Conditionally display gated content in courseware
Display gated sections in course outline, navigation and in the course
when user has met prerequiste condition.

WL-1273, WL-1317
2018-01-18 12:34:19 -05:00
Tomasz Gargas
73f86006f7 Bump READ_VERSION of BlockCompletionTransformer to 1.
Signed-off-by: Tomasz Gargas <tomasz@opencraft.com>
2017-12-13 17:11:36 +01:00
Tomasz Gargas
64c4ae4a7a Add block completion value as optional field in course_blocks.api.
Signed-off-by: Tomasz Gargas <tomasz@opencraft.com>
2017-12-12 14:22:10 +01:00
Jeremy Bowman
103c723c6d PLAT-1801 Preserve new user login behavior under Django 1.10+ 2017-12-05 10:20:25 -05:00
Ned Batchelder
e23e3a0486 Fix a number of unused-import pylint violations 2017-11-21 19:57:06 -05:00
Jose Antonio Gonzalez
f38e5ab939 add DEFAULT_MOBILE_AVAILABLE flag 2017-11-16 16:50:37 +02:00
bmedx
11a4030767 LMS urls cleanup for Django 1.11
- Remove usage of django.urls.patterns
- Change urls tuples to lists
- Make all string view names callables
- This is the second of several urls updates for LMS; a work in progress
2017-11-06 16:06:00 -05:00
Jillian Vogel
ae15e69a0a Fixes bug with Course Blocks API student_view_data parameter
Prior to this change, providing any student_view_data querystring would result
in student_view_data returned for all XBlock types.

Updates Course Blocks API tests to verify.
2017-11-01 13:38:54 +10:30
bradmerlin
ab011314ef Add student_view_data to HTML XBlock
to allow the HTML to be downloadable via the Course Blocks API.

Feature flag ENABLE_HTML_XBLOCK_STUDENT_VIEW_DATA must be set to enable this feature.
2017-11-01 13:38:54 +10:30
Simon Chen
29a1df3323 Revert "Exposing course run license via Course API"
This reverts commit a1419b15f7.
2017-10-11 12:37:09 -04:00
Clinton Blackburn
a1419b15f7 Exposing course run license via Course API
The license for course run content is now stored on the CourseOverviews model and exposed via the Course API.

LEARNER-2791
2017-10-08 19:47:32 -04:00
Jose Antonio Gonzalez
aca096138b add invitation_only field to course serializer 2017-06-29 16:08:58 +02:00
Andy Armstrong
79acb5c5be Reorder LMS imports using isort 2017-06-11 21:48:06 -04:00
Jillian Vogel
6ca8a702ae Mask grades on progress page according to "Show Correctness" setting. 2017-05-31 16:57:38 +02:00
John Eskew
3b57542ab0 Revert "Merge pull request #15170 from edx/jeskew/PLAT_1316_partitions_inheritance"
This reverts commit f97f052591, reversing
changes made to 800bcd8e20.
2017-05-30 12:42:54 -04:00
John Eskew
66f3aa5ccf Move fields.py, inheritance.py, and partitions to openedx/core. 2017-05-25 13:24:08 -04:00
Diana Huang
196d379cc6 Rename MilestonesTransformer.
Add comment explaining why we can't have a separate transformer.
2017-04-13 14:39:38 -04:00
Robert Raposa
0899ac56e3 Fix review comments. 2017-04-13 14:39:38 -04:00
Diana Huang
aafd6a03ce Add 'format' as a requested field. 2017-04-13 14:39:37 -04:00
Diana Huang
9e734442c2 Initial version of new transformer. 2017-04-13 14:38:13 -04:00
cahrens
e5035746bf Introduce EnrollmentTrackUserPartition.
TNL-6674
2017-03-30 12:24:48 -04:00
Nimisha Asthagiri
4ac78706a3 Waffle Switch with namespacing and request caching 2017-03-28 17:49:20 -04:00
Nimisha Asthagiri
2b0ff8e3a3 Storage-backed Block Structures: Use correct bucket
TNL-6645
2017-03-20 00:05:06 -04:00
Nimisha Asthagiri
cfb032a50c Fix grading for Gated Subsections
TNL-5955
2017-03-15 17:16:20 -04:00
Nimisha Asthagiri
00d466224e Consolidate Block Structure folders
TNL-6518
2017-03-01 21:19:28 -05:00
Nimisha Asthagiri
02c24cb259 Block Structure query count and API changes 2017-02-28 23:54:57 -05: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
Nimisha Asthagiri
71cce9bb73 Block Transformers: distinguish between READ and WRITE versions
TNL-6522
2017-02-13 12:20:22 -05:00
Christopher Lee
ac2387376d Merge pull request #14233 from edx/clee/block_id
Added block_id to course blocks API response.
2017-01-03 12:53:00 -05:00