Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
edx-platform
Commits
ef4220ee
Commit
ef4220ee
authored
Aug 05, 2013
by
David Baumgold
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add unit tests to exercise common_exceptions_400 decorator
parent
7b01147c
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
59 additions
and
2 deletions
+59
-2
lms/djangoapps/instructor/tests/test_api.py
+59
-2
No files found.
lms/djangoapps/instructor/tests/test_api.py
View file @
ef4220ee
"""
Unit tests for instructor.api methods.
"""
import
unittest
import
json
from
urllib
import
quote
from
django.test
import
TestCase
...
...
@@ -9,6 +9,7 @@ from nose.tools import raises
from
mock
import
Mock
from
django.test.utils
import
override_settings
from
django.core.urlresolvers
import
reverse
from
django.http
import
HttpRequest
,
HttpResponse
from
django.contrib.auth.models
import
User
from
courseware.tests.modulestore_config
import
TEST_DATA_MONGO_MODULESTORE
...
...
@@ -21,7 +22,63 @@ from student.models import CourseEnrollment
from
courseware.models
import
StudentModule
from
instructor.access
import
allow_access
from
instructor.views.api
import
_split_input_list
,
_msk_from_problem_urlname
from
instructor.views.api
import
(
_split_input_list
,
_msk_from_problem_urlname
,
common_exceptions_400
)
from
instructor_task.api_helper
import
AlreadyRunningError
@common_exceptions_400
def
view_success
(
request
):
"A dummy view for testing that returns a simple HTTP response"
return
HttpResponse
(
'success'
)
@common_exceptions_400
def
view_user_doesnotexist
(
request
):
"A dummy view that raises a User.DoesNotExist exception"
raise
User
.
DoesNotExist
()
@common_exceptions_400
def
view_alreadyrunningerror
(
request
):
"A dummy view that raises an AlreadyRunningError exception"
raise
AlreadyRunningError
()
class
TestCommonExceptions400
(
unittest
.
TestCase
):
def
setUp
(
self
):
self
.
request
=
Mock
(
spec
=
HttpRequest
)
self
.
request
.
META
=
{}
def
test_happy_path
(
self
):
resp
=
view_success
(
self
.
request
)
self
.
assertEqual
(
resp
.
status_code
,
200
)
def
test_user_doesnotexist
(
self
):
self
.
request
.
is_ajax
.
return_value
=
False
resp
=
view_user_doesnotexist
(
self
.
request
)
self
.
assertEqual
(
resp
.
status_code
,
400
)
self
.
assertIn
(
"User does not exist"
,
resp
.
content
)
def
test_user_doesnotexist_ajax
(
self
):
self
.
request
.
is_ajax
.
return_value
=
True
resp
=
view_user_doesnotexist
(
self
.
request
)
self
.
assertEqual
(
resp
.
status_code
,
400
)
result
=
json
.
loads
(
resp
.
content
)
self
.
assertIn
(
"User does not exist"
,
result
[
"error"
])
def
test_alreadyrunningerror
(
self
):
self
.
request
.
is_ajax
.
return_value
=
False
resp
=
view_alreadyrunningerror
(
self
.
request
)
self
.
assertEqual
(
resp
.
status_code
,
400
)
self
.
assertIn
(
"Task is already running"
,
resp
.
content
)
def
test_alreadyrunningerror_ajax
(
self
):
self
.
request
.
is_ajax
.
return_value
=
True
resp
=
view_alreadyrunningerror
(
self
.
request
)
self
.
assertEqual
(
resp
.
status_code
,
400
)
result
=
json
.
loads
(
resp
.
content
)
self
.
assertIn
(
"Task is already running"
,
result
[
"error"
])
@override_settings
(
MODULESTORE
=
TEST_DATA_MONGO_MODULESTORE
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment