Commit Graph

42 Commits

Author SHA1 Message Date
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
Zia Fazal
ca3d84a5d4 New pre-requisite course feature via milestones app 2015-01-15 15:17:38 -05:00
Andy Armstrong
561c57dbe9 Extend preview to support cohorted courseware
TNL-651
2015-01-15 10:33:44 -05:00
jsa
6fb3daa772 support group_access. JIRA: TNL-649 2015-01-15 10:33:44 -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
7229ef92ee s/pylint: disable=W0212/pylint: disable=protected-access/ 2014-12-01 11:22:12 -05:00
Sarina Canelake
e0f1d3f3f3 s/pylint: disable=C0111/pylint: disable=missing-docstring/ 2014-12-01 11:22:09 -05:00
stv
cf9308144d Fix PEP8: E302 expected 2 blank lines, found 1 2014-11-10 11:00:11 -08:00
Chris Dodge
3c36f7cbad Add new course_module field which describes what the catalog visibility should be (both, about, none) 2014-11-09 10:36:00 -05:00
muhammad-ammar
fcaa783e43 Unit Test Improvements
TE-489
2014-10-31 11:55:13 +00:00
Usman Khalid
660cdf79c0 Added instructor persmission to _has_access_error_desc() in courseware.access.
TNL-208
2014-09-11 19:17:57 +05:00
Sarina Canelake
666f563ee6 Merge pull request #4418 from Stanford-Online/dcadams/make_registration_button_conditional
Make text on register button on About page conditional.
2014-07-15 16:37:00 -04:00
David Adams
aa1b623904 Make text on register button on About page conditional.
Added a new advanced setting; invitation_only

 If invitation_only display "Enrollment in this course is by invitation only"
 Otherwise, if outside of enrollment period display "Enrollment is Closed"

 This issue is logged at LMS-2670

 Also fixed in this PR is issue LMS-2717; even though the Register button was greyed out,
 clicking it sent one to the registration page.
2014-07-15 12:51:12 -07:00
cahrens
66173ab9e6 Add "visible_to_staff_only" field to support staff locking in Studio.
STUD-1875
2014-07-14 14:46:40 -04:00
Waheed Ahmed
cb2af13418 Fixed staff debug info endpoints for staff member.
LMS-2737
2014-06-02 12:26:27 +05:00
Calen Pennington
cfcbdc0145 Move to OpaqueKey implementations from the external library
[LMS-2757]
2014-05-29 17:03:35 -04:00
Sarina Canelake
110719deae StaffFactories accept course_keys, not courses. Make that clear in the interface. 2014-05-24 18:49:06 -04:00
Don Mitchell
6834376b8a Don't fetch the course just to find out if the user has access to it. 2014-05-09 10:12:21 -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
Oleg Marshev
13c19c98e2 Add role parameter to LTI. BLD-583. 2014-01-30 14:37:33 +02:00
Carson Gee
cbb6e5e686 Changed default user to be anonymous in both has_access and student.views.index
Replaced existing test_none_user_index_access_with_startdate_fails
test with new test now that the tested function has changed and
was causing the original test to fail.
2013-12-15 09:56:37 -05:00
Calen Pennington
061a46beef Formalize various access roles as objects
This centralizes the logic for group membership, and means that we
don't need to make queries to find out whether the legacy groups names exist.
2013-11-13 13:42:37 -05:00
Julia Hansbrough
1a3f4cb8f8 Moved can_refund logic to CourseEnrollment 2013-11-04 18:48:43 +00:00
Julia Hansbrough
c375666d88 Added new copy, small CR fixes
* Changed text for "Are you sure you want to refund"...
* Addressed a CR comment adding clarity to student view code
* Converted UTC to pytz.utc
2013-11-04 18:38:46 +00:00
Julia Hansbrough
7ab8142e82 Response to Dave & Diana's CR 2013-11-04 18:38:44 +00:00
Julia Hansbrough
bf916b6624 Fixes from Daian's CR 2013-11-04 18:38:43 +00:00
Julia Hansbrough
fcab46b138 Refactored to use signals; full test coverage 2013-11-04 18:38:42 +00:00
Julia Hansbrough
63940141c8 End-to-end refunding with tests 2013-11-04 18:37:55 +00:00
Julia Hansbrough
045e69f3c5 Can check verified-ness and expiration date 2013-11-04 18:37:54 +00:00
Jason Bau
07e56ac43b Merge pull request #67 from edx/features/jbau/stanford-shib
Shibboleth Auth
2013-06-21 09:32:30 -07:00
Ned Batchelder
61b53713d2 Remove unused imports from lms, as detected by pylint. 2013-06-19 16:56:34 -04:00
Jason Bau
824fb9a311 The bulk of Shibboleth authentication for Stanford
Highlights:
* The url '/shib-login/' interfaces with apache/mod_shib via
  request.META to handle shibboleth login and registrations
* Courses can designate 'enrollment_domains' to limit enrollment
  to users with a linked ExternalAuthMap verified by a particular
  identity provider
* Tests
* Logging

 Changes to be committed:

	new file:   common/djangoapps/external_auth/migrations/0001_initial.py
	new file:   common/djangoapps/external_auth/migrations/__init__.py
	new file:   common/djangoapps/external_auth/tests/test_shib.py
	modified:   common/djangoapps/external_auth/views.py
	modified:   common/djangoapps/student/views.py
	modified:   common/lib/xmodule/xmodule/course_module.py
	modified:   lms/djangoapps/courseware/access.py
	modified:   lms/djangoapps/courseware/tests/test_access.py
	modified:   lms/envs/common.py
	modified:   lms/envs/dev.py
	modified:   lms/envs/test.py
	modified:   lms/templates/courseware/course_about.html
	modified:   lms/templates/dashboard.html
	modified:   lms/templates/extauth_failure.html
	modified:   lms/templates/navigation.html
	modified:   lms/templates/register.html
	modified:   lms/templates/signup_modal.html
	modified:   lms/urls.py
	renamed:    lms/wsgi_apache.py -> lms/wsgi_apache_lms.py
2013-06-19 00:48:18 -07:00
Don Mitchell
d7194e6bec struct_time to datetime conversion. 2013-06-10 17:16:34 -04:00
Calen Pennington
6b64b4214f Make relative imports explicitly relative 2013-03-15 11:23:22 -04:00
Calen Pennington
cec3475c9d Remove references to .definition and .metadata in modules 2013-03-06 18:07:56 -05:00
Jay Zoldak
b0a018195a Pep8 fixes for tests 2013-03-05 11:53:00 -05:00
Will Daly
2436d59e14 Merge branch 'master' into feature/deena/testing
Conflicts:
	cms/djangoapps/contentstore/tests/factories.py
	lms/djangoapps/courseware/tests/test_access.py
2013-03-04 16:30:41 -05:00
Calen Pennington
cfae1cdf62 Pep8 autofixes 2013-02-06 11:13:50 -05:00
Deena Wang
25aca5866d Merge branch 'master' into feature/deena/testing
Conflicts:
	lms/djangoapps/courseware/tests/test_access.py
2013-02-01 10:19:40 -05:00
Jay Zoldak
91b8a95ed7 Add unit tests for lms courseware access 2013-01-30 15:03:43 -05:00
Deena Wang
3ff3189260 Finished tests for access.py (as far as able) 2013-01-15 15:39:05 -05:00