Commit Graph

29 Commits

Author SHA1 Message Date
Jesse Zoldak
1920a60c97 Fix pep8 violation 2015-02-05 12:16:28 -05:00
Jesse Zoldak
7eb5f627d6 Use new modulestore override paradigm in the new testcase 2015-02-05 10:09:05 -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
Waheed Ahmed
e868db2e4d Fixed multiple textbooks links to only last uploaded textbook.
TNL-1304
2015-02-03 19:31:28 +05:00
Matt Drayer
3c669e3838 New feature contribution: Entrance Exams 2015-01-15 20:35:24 -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
zubair-arbi
40f270c945 add couse key verification decorator in common for use in both studio and lms
PLAT-88
2014-09-29 13:26:43 +05:00
Adam Palay
ac862b7a97 only load tabs if user is enrolled in course (TNL-286)
add tests for static tabs
2014-09-19 10:19:23 -04:00
Usman Khalid
9599c31aa0 Catch InvalidKeyError in static_tab view.
LMS-11189
2014-08-07 15:41:07 +05:00
Calen Pennington
cfcbdc0145 Move to OpaqueKey implementations from the external library
[LMS-2757]
2014-05-29 17:03:35 -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
Nimisha Asthagiri
d865e9096e Add the ability to reorder Pages and hide the Wiki page. 2014-03-28 05:39:03 -04:00
Nimisha Asthagiri
e86b4a12dc Changes for viewing built-in tabs in studio
Changed "Status Page" -> "Page".

UX:
    support for displaying built-in tabs
    restored drag and drop on Studio Pages
    additional styling for fixed state on Studio Pages
    add a new page action added to bottom of Studio Pages

Dev
    changes for viewing tabs in studio,
    refactored the tab code,
    decoupled the code from django layer.
    is_hideable flag on tabs
    get_discussion method is needed to continue to support
external_discussion links for now since used by 6.00x course.
    override the __eq__ operator to support comparing with
dict-type tabs.

Test
    moved test code to common,
    added acceptance test for built-in pages
    added additional unit tests for tabs.
    changed test_split_modulestore test to support serializing objects
that are fields in a Course.

Env:
    updated environment configuration settings so they are
    consistent for both cms and lms.
2014-03-21 13:58:01 -04:00
Usman Khalid
ae73f3eaa0 Puts module.render() in try statements.
LMS-1192
2014-03-19 19:30:22 +05:00
Adam Palay
d6522cd123 refactor static tab tests 2014-03-18 10:43:57 -04:00
Adam Palay
5372bcff51 Detached pages from XML courses are set to appropriate descriptor class (LMS-2094)
Add tests
2014-01-30 13:52:07 -05:00
Don Mitchell
d999d0af1b Detached categories don't access control on date 2014-01-17 17:53:14 -05:00
David Baumgold
28f22393bf whitespace-only changes 2013-12-10 11:45:49 -05:00
David Baumgold
f3f4af8087 settings.MITX_FEATURES => settings.FEATURES 2013-12-03 15:34:55 -05:00
Renzo Lucioni
e7e03f10fb Refactor tab tests 2013-09-25 00:27:36 -04:00
Renzo Lucioni
f1ccf1c06b Integrate split testing and LMS tabs experiments 2013-09-25 00:27:36 -04:00
Will Daly
48c6daacb8 Removed unnecessary settings wrangling from ModuleStoreTestCase.
Modified navigation tests to use MixedModulestore
Updated factories to find editable modulestore

Updated test_submitting_problems

Updated test_tabs.py

Updated test_view_authentication

Updated test_views

Updated courseware/tests/tests.py

Updated test_masquerade

Updated test_module_render

Pylint fixes

Updated video and word cloud tests

Updated course wiki tests

Updated license and open_ended tests.
One open_ended test still failing due to Mako initialization issues

Updated staticbook

Updated django_comment_client tests

Updated instructor tests

Updated instructor task tests

Updated external_auth tests

Updated course_groups
2013-08-21 09:36:45 -04:00
JonahStanley
7fb5f505d6 Refactored out full from the lms tests 2013-07-11 10:12:06 -04:00
Brian Wilson
3b657d6d36 Disable randomized-problem test until bug-fix is merged in. 2013-06-18 11:13:18 -04:00
Greg Price
00729a8c13 Add an omnipresent help tab to the LMS
The help tab opens a modal dialog that directs the user at various resources
(e.g. the site FAQ and course forums) and allows the user to submit feedback
to the feedback endpoint (which will ultimately create a ticket for the
student support team).
2013-05-06 13:35:52 -04:00
Will Daly
2f5ea630e7 Cleaned up courseware test_tabs unittests 2013-03-06 10:16:43 -05:00
Will Daly
72411a175f Added jnater's unit tests, cleaned up broken tests, ran pep8fix 2013-03-06 09:41:26 -05:00