Commit Graph

108 Commits

Author SHA1 Message Date
Brian Wilson
a36aa68fd7 Add new export_olx management command.
This moves the functionality of the 'export_course'  management command from lms/djangoapps/courseware
over to the Studio codebase.  This reflects its use going forward to be run with cms settings, to
export the content of the Studio modulestore instead of the LMS modulestore.  The management
command is used by an analytics workflow to output course content for researchers.
2016-05-26 17:26:59 -04:00
Adam Palay
bfb319db9a add discussion_id to course structure dump command (AN-6696)
add test case for discussion_id already set in XML
2016-05-09 11:24:37 -04:00
Ned Batchelder
2e1238b83e Remove unused imports 2016-04-08 11:23:05 -04:00
Hassan
48a5b954d5 Use CourseOverview for dump_course_ids 2016-03-07 19:44:38 +05:00
Calen Pennington
dd90c55602 Create a new CSMHExtended table to hold our new data
This is a clone (copy) of CSMH's declaration and methods with an added
id of UnsignedBigInAutoField

We should be able to delete the save_history code, but needs testing.

Add error logging when capa failures happen

Put StudentModuleHistory into its own database

Bump out the primary key on CSMHE

This gives us a gap to backfill as needed.
Since the new table's pk is an unsigned bigint, even for people who don't
consolidate CSMH into CSMHE, the lost rows are unlikely to matter.

Remove StudentModuleHistory cleaner
2016-02-29 13:58:39 -05:00
Sarina Canelake
addbfa75e8 Remove references to deleted ORA1 test course 2015-12-11 15:07:09 -05:00
Sarina Canelake
ade863e994 Remove CMS Course Checklists feature 2015-12-11 10:32:14 -05:00
Nimisha Asthagiri
801165b266 Remove support for outdated ispublic field on Course Descriptor
Also remove its corresponding ACCESS_REQUIRE_STAFF_FOR_COURSE feature
flag.
2015-12-10 20:37:39 -05:00
Usman Khalid
6cb62f2697 Rebase upgrade Django to v1.8.5
Please note that this is a squshed commit and the work of:
Symbolist, macdiesel, nedbat, doctoryes, muzaffaryousaf and muhammad-ammar
2015-11-10 15:00:19 -05:00
Ned Batchelder
2a0259095d Change imports from path to use the stablest name.
The old line:

    from path import path

produced pylint errors because of the baroque way that path.py defined
"path".  We tried to get them to change how they defined it, but they
deleted the name instead: https://github.com/jaraco/path.py/issues/102

(Jason then changed his mind, but this is a better way to use path.py,
it avoids the pylint error at least.)
2015-08-27 12:59:25 -04:00
Calen Pennington
6ba611cb5f Remove remove_input_state.py, as it was one-time fix code, and is not worth porting to the new interface 2015-08-01 08:13:25 -04:00
Calen Pennington
aa374ca12a Make DjangoXBlockUserStateClient pass semantic tests
This required the following changes to the DjangoXBlockUserStateClient
semantics:

1) Changes get/get_many to return XBlockUserState tuples, rather
than state dictionaries or (block_key, state) tuples.
2) Raises DoesNotExist if get_history is called on an XBlock that has
had no data saved to it.
3) Returns XBlockUserState tuples as the results of get_history.
2015-08-01 08:13:25 -04:00
Sarina Canelake
39d3537410 Pylint logging-format-interpolation: Convert logging calls to use %s formatting 2015-07-13 17:33:29 -04:00
Ned Batchelder
e6e5a8d812 Convert some try/finally to addCleanup 2015-07-02 19:31:48 -04:00
Calen Pennington
c1ace04483 Merge pull request #8391 from edx/alawibaba/plat5892
First draft.
2015-06-12 12:39:38 -04:00
Ali Mohammad
69772ef20e Convert access to StudentModuleHistory to use the UserStateClient API. 2015-06-12 12:37:34 -04:00
alawibaba
36e5fcf4c9 Make clean_history.py use the StudentHistoryModule django model. 2015-05-29 17:28:01 -04:00
Christine Lytwynec
ddb1ae667e Split lms unittests into multiple shards 2015-05-07 09:17:26 -04:00
Adam
9ad4b71688 Merge pull request #7572 from edx/release
Release
2015-04-02 17:24:50 -04:00
Waheed Ahmed
62a515f038 Fixed static pages removed on import for split course.
PLAT-484
2015-04-02 20:14:46 +05:00
Calen Pennington
1f17538d42 Clean up tests in preparation for switching Vertical from an XModule to an XBlock 2015-03-30 16:37:53 -04:00
Jonathan Piacenti
8ad4d081fb Added library import and export via .tar.gz'd XML files. 2015-03-10 21:29:29 +00:00
stv
2e1400f842 Fix Pylint: W0613(unused-argument) 2015-02-19 19:56:51 -08:00
stv
91eb723946 Remove obsolete management command
While this may have served a purpose at one point, it's now been broken
for more than 2 years [1]; a critical code path makes a call to a
function which is no longer imported.

[1] commit 84cb0ce99b
    Date:   Fri Dec 21 13:15:37 2012 -0500
2015-02-16 22:50:11 -08:00
cahrens
d86c7bec3c Update for renamed test split modulestore. 2015-02-09 10:00:33 -05:00
cahrens
149c4e78c1 Update tests in reaction to ModuleStoreTestCase cleanup. 2015-02-09 10:00:32 -05:00
cahrens
c56c88be4a create_xmodule was renamed to create_xblock, and mixed modulestore has create_xblock method.
Split modulestore throws duplicate errors if course locator is not unique.
2015-02-09 10:00:32 -05:00
cahrens
7a64e6f69f Support running test with split modulestore as the default.
With split, "name" returns "course" instead of the run name.
2015-02-09 10:00:32 -05:00
Calen Pennington
2bb1aafaaf Merge pull request #6752 from cpennington/modulestore-test-case-cleanup
Clean up ModuleStoreTestCase
2015-02-04 15:57:01 -05:00
Calen Pennington
b353ed2ea2 Better support specifying of modulestore configuration in test cases
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]
2015-02-04 09:09:14 -05:00
Calen Pennington
03a05fd9d4 Always call super(..).setUp() from setUp 2015-02-04 09:09:14 -05:00
Sarina Canelake
01064fcc79 Fix logging calls to use unicode, and lazy logging 2015-02-04 10:53:33 +02:00
Omar Al-Ithawi
4e733c6e1f Unicode fixes for log messages and other things 2015-02-04 09:55:44 +02:00
Jesse Zoldak
e26a0c4308 Fix pep8 violations in some tests 2014-12-02 09:39:23 -05:00
Jesse Zoldak
bf3b87bc64 Clean up all modulestore testcases
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
2014-12-02 07:09:36 -05:00
Sarina Canelake
5f723e8d3c s/pylint: disable=W0703/pylint: disable=broad-except/ 2014-12-01 11:22:11 -05:00
Muhammad Ammar
e8e7e78e09 Merge pull request #5655 from edx/ammar/unit-improvements
Unit Test Improvements
2014-11-05 19:55:39 +05:00
Sarina Canelake
725e4908e3 Remove more pep8 violations 2014-11-04 07:37:41 -05:00
Carlos Andrés Rocha
6ad235f5db Ignore errors during cleanup of course export command. 2014-10-31 15:20:17 -04:00
muhammad-ammar
fcaa783e43 Unit Test Improvements
TE-489
2014-10-31 11:55:13 +00:00
Carlos Andrés Rocha
a1a7504f81 Fix dump course structure when element metadata uses opaque keys.
Make sure that during the serialization, all opaque keys and their
references and serialized using the `unicode` function.

AN-3821
2014-10-22 12:36:50 -04:00
Brian Wilson
61c2b96a4a Only permit ascii characters in filenames generated from course_ids. 2014-10-08 11:43:07 -04:00
Brian Wilson
e26b86de60 Make sure temporary course directory uses safe characters. 2014-10-07 22:28:00 -04:00
zubair-arbi
bdf2c28641 update video module to always set download_video field on export 2014-09-22 13:15:40 +05:00
Nimisha Asthagiri
ea32529866 Fix all modulestore calls to pass in user ids. 2014-07-09 21:10:12 -04:00
Nimisha Asthagiri
a9213509c3 Enable Mixed Modulestore STUD-1540
Refactor get_parent_locations STUD-1663
2014-06-26 18:00:11 -04:00
Calen Pennington
cfcbdc0145 Move to OpaqueKey implementations from the external library
[LMS-2757]
2014-05-29 17:03:35 -04:00
Diana Huang
db0cd78152 Remove some outdated code. 2014-05-22 15:39:29 -04:00
Calen Pennington
9811926d97 Make course ids and usage ids opaque to LMS and Studio [partial commit]
This commit updates lms/djangoapps/courseware.

These keys are now objects with a limited interface, and the particular
internal representation is managed by the data storage layer (the
modulestore).

For the LMS, there should be no outward-facing changes to the system.
The keys are, for now, a change to internal representation only. For
Studio, the new serialized form of the keys is used in urls, to allow
for further migration in the future.

Co-Author: Andy Armstrong <andya@edx.org>
Co-Author: Christina Roberts <christina@edx.org>
Co-Author: David Baumgold <db@edx.org>
Co-Author: Diana Huang <dkh@edx.org>
Co-Author: Don Mitchell <dmitchell@edx.org>
Co-Author: Julia Hansbrough <julia@edx.org>
Co-Author: Nimisha Asthagiri <nasthagiri@edx.org>
Co-Author: Sarina Canelake <sarina@edx.org>

[LMS-2370]
2014-05-06 10:08:32 -04:00
Carlos Andrés Rocha
e5c042aa4f Improve dump_course_ids test for unicode course_ids 2014-03-14 10:21:31 -04:00